diff --git a/.changeset/shaggy-impalas-cover.md b/.changeset/shaggy-impalas-cover.md new file mode 100644 index 0000000000..be136f521c --- /dev/null +++ b/.changeset/shaggy-impalas-cover.md @@ -0,0 +1,5 @@ +--- +"viem": patch +--- + +**Experimental:** Fixed `getCapabilities` parameter type. diff --git a/src/experimental/eip5792/actions/getCapabilities.ts b/src/experimental/eip5792/actions/getCapabilities.ts index 8e6e4d542a..db4b010eb2 100644 --- a/src/experimental/eip5792/actions/getCapabilities.ts +++ b/src/experimental/eip5792/actions/getCapabilities.ts @@ -2,10 +2,7 @@ import type { Client } from '../../../clients/createClient.js' import type { Transport } from '../../../clients/transports/createTransport.js' import { AccountNotFoundError } from '../../../errors/account.js' import type { ErrorType } from '../../../errors/utils.js' -import type { - GetAccountParameter, - JsonRpcAccount, -} from '../../../types/account.js' +import type { Account, GetAccountParameter } from '../../../types/account.js' import type { Chain } from '../../../types/chain.js' import type { WalletCapabilities, @@ -16,7 +13,7 @@ import { parseAccount } from '../../../utils/accounts.js' import type { RequestErrorType } from '../../../utils/buildRequest.js' export type GetCapabilitiesParameters< - account extends JsonRpcAccount | undefined = JsonRpcAccount | undefined, + account extends Account | undefined = Account | undefined, > = GetAccountParameter export type GetCapabilitiesReturnType = Prettify< @@ -47,9 +44,9 @@ export type GetCapabilitiesErrorType = RequestErrorType | ErrorType */ export async function getCapabilities< chain extends Chain | undefined, - account extends JsonRpcAccount | undefined = undefined, + account extends Account | undefined = undefined, >( - ...parameters: account extends JsonRpcAccount + ...parameters: account extends Account ? | [client: Client] | [ diff --git a/src/experimental/eip5792/decorators/eip5792.ts b/src/experimental/eip5792/decorators/eip5792.ts index 0b6436463c..9ed9fa7117 100644 --- a/src/experimental/eip5792/decorators/eip5792.ts +++ b/src/experimental/eip5792/decorators/eip5792.ts @@ -1,6 +1,6 @@ import type { Client } from '../../../clients/createClient.js' import type { Transport } from '../../../clients/transports/createTransport.js' -import type { Account, JsonRpcAccount } from '../../../types/account.js' +import type { Account } from '../../../types/account.js' import type { Chain } from '../../../types/chain.js' import { type GetCallsStatusParameters, @@ -80,7 +80,7 @@ export type WalletActionsEip5792< * }) */ getCapabilities: ( - ...parameters: account extends JsonRpcAccount + ...parameters: account extends Account ? [] | [parameters: GetCapabilitiesParameters] : [parameters: GetCapabilitiesParameters] ) => Promise