Function wrapWalletClient
- wrapWalletClient<T>(client): Promise<T>
Type Parameters
- T extends {
account: undefined | Account;
addChain: ((args) => Promise<void>);
batch?: {
multicall?: boolean | {
batchSize?: number;
deployless?: boolean;
wait?: number;
};
};
cacheTime: number;
ccipRead?: false | {
request?: ((parameters) => Promise<`0x${string}`>);
};
chain: undefined | Chain;
deployContract: (<const abi, chainOverride>(args) => Promise<`0x${string}`>);
experimental_blockTag?: BlockTag;
extend: (<const client>(fn) => Client<Transport, undefined | Chain, undefined | Account, WalletRpcSchema, {
[K in string | number | symbol]: client[K]
} & WalletActions<undefined | Chain, undefined | Account>>);
fillTransaction: (<chainOverride, accountOverride>(args) => Promise<FillTransactionReturnType<undefined | Chain, chainOverride>>);
getAddresses: (() => Promise<GetAddressesReturnType>);
getCallsStatus: ((parameters) => Promise<{
atomic: boolean;
capabilities?: {
[key: string]: any;
} | {};
chainId: number;
id: string;
receipts?: WalletCallReceipt<bigint, "success" | "reverted">[];
status: undefined | "pending" | "success" | "failure";
statusCode: number;
version: string;
}>);
getCapabilities: (<chainId>(parameters?) => Promise<{
[K in string | number | symbol]: (chainId extends number
? {
atomic?: {
status: "supported" | "ready" | "unsupported";
};
paymasterService?: {
supported: boolean;
};
unstable_addSubAccount?: {
keyTypes: ((...) | (...) | (...) | (...))[];
supported: boolean;
};
}
: ChainIdToCapabilities<Capabilities<{
atomic?: {
status: ...;
};
paymasterService?: {
supported: ...;
};
unstable_addSubAccount?: {
keyTypes: ...;
supported: ...;
};
}>, number>)[K]
}>);
getChainId: (() => Promise<number>);
getPermissions: (() => Promise<GetPermissionsReturnType>);
key: string;
name: string;
pollingInterval: number;
prepareAuthorization: ((parameters) => Promise<PrepareAuthorizationReturnType>);
prepareTransactionRequest: (<const request, chainOverride, accountOverride>(args) => Promise<{
[K in string | number | symbol]: (UnionRequiredBy<Extract<UnionOmit<(...), (...)> & ((...) extends (...)
? (...)
: (...)) & ((...) extends (...)
? (...)
: (...)), IsNever<(...)> extends true
? unknown
: ExactPartial<(...)>> & {
chainId?: number;
}, ParameterTypeToParameters<request["parameters"] extends readonly PrepareTransactionRequestParameterType[]
? any[any][number]
: "fees" | "gas" | "nonce" | "type" | "blobVersionedHashes" | "chainId">> & (unknown extends request["kzg"]
? {}
: Pick<request, "kzg">))[K]
}>);
request: EIP1193RequestFn<WalletRpcSchema>;
requestAddresses: (() => Promise<RequestAddressesReturnType>);
requestPermissions: ((args) => Promise<RequestPermissionsReturnType>);
sendCalls: (<const calls, chainOverride>(parameters) => Promise<{
capabilities?: {};
id: string;
}>);
sendCallsSync: (<const calls, chainOverride>(parameters) => Promise<{
atomic: boolean;
capabilities?: {
[key: string]: any;
} | {};
chainId: number;
id: string;
receipts?: WalletCallReceipt<bigint, "success" | "reverted">[];
status: undefined | "pending" | "success" | "failure";
statusCode: number;
version: string;
}>);
sendRawTransaction: ((args) => Promise<`0x${string}`>);
sendRawTransactionSync: ((args) => Promise<TransactionReceipt>);
sendTransaction: (<const request, chainOverride>(args) => Promise<`0x${string}`>);
sendTransactionSync: (<const request, chainOverride>(args) => Promise<TransactionReceipt>);
showCallsStatus: ((parameters) => Promise<void>);
signAuthorization: ((parameters) => Promise<SignAuthorizationReturnType>);
signMessage: ((args) => Promise<`0x${string}`>);
signTransaction: (<chainOverride, const request>(args) => Promise<TransactionSerialized<GetTransactionType<request, (request extends LegacyProperties
? "legacy"
: never) | (request extends EIP1559Properties
? "eip1559"
: never) | (request extends EIP2930Properties
? "eip2930"
: never) | (request extends EIP4844Properties
? "eip4844"
: never) | (request extends EIP7702Properties
? "eip7702"
: never) | (request["type"] extends undefined | string
? Extract<any[any], string>
: never)>, (GetTransactionType<request, (request extends LegacyProperties
? "legacy"
: never) | (request extends EIP1559Properties
? "eip1559"
: never) | (request extends EIP2930Properties
? "eip2930"
: never) | (request extends EIP4844Properties
? "eip4844"
: never) | (request extends EIP7702Properties
? "eip7702"
: never) | (request["type"] extends undefined | string
? Extract<any[any], string>
: never)> extends "eip1559"
? `0x02${string}`
: never) | (GetTransactionType<request, (request extends LegacyProperties
? "legacy"
: never) | (request extends EIP1559Properties
? "eip1559"
: never) | (request extends EIP2930Properties
? "eip2930"
: never) | (request extends EIP4844Properties
? "eip4844"
: never) | (request extends EIP7702Properties
? "eip7702"
: never) | (request["type"] extends undefined | string
? Extract<any[any], string>
: never)> extends "eip2930"
? `0x01${string}`
: never) | (GetTransactionType<request, (request extends LegacyProperties
? "legacy"
: never) | (request extends EIP1559Properties
? "eip1559"
: never) | (request extends EIP2930Properties
? "eip2930"
: never) | (request extends EIP4844Properties
? "eip4844"
: never) | (request extends EIP7702Properties
? "eip7702"
: never) | (request["type"] extends undefined | string
? Extract<any[any], string>
: never)> extends "eip4844"
? `0x03${string}`
: never) | (GetTransactionType<request, (request extends LegacyProperties
? "legacy"
: never) | (request extends EIP1559Properties
? "eip1559"
: never) | (request extends EIP2930Properties
? "eip2930"
: never) | (request extends EIP4844Properties
? "eip4844"
: never) | (request extends EIP7702Properties
? "eip7702"
: never) | (request["type"] extends undefined | string
? Extract<any[any], string>
: never)> extends "eip7702"
? `0x04${string}`
: never) | (GetTransactionType<request, (request extends LegacyProperties
? "legacy"
: never) | (request extends EIP1559Properties
? "eip1559"
: never) | (request extends EIP2930Properties
? "eip2930"
: never) | (request extends EIP4844Properties
? "eip4844"
: never) | (request extends EIP7702Properties
? "eip7702"
: never) | (request["type"] extends undefined | string
? Extract<any[any], string>
: never)> extends "legacy"
? TransactionSerializedLegacy
: never)>>);
signTypedData: (<const typedData, primaryType>(args) => Promise<`0x${string}`>);
switchChain: ((args) => Promise<void>);
transport: TransportConfig<string, EIP1193RequestFn> & Record<string, any>;
type: string;
uid: string;
waitForCallsStatus: ((parameters) => Promise<{
atomic: boolean;
capabilities?: {
[key: string]: any;
} | {};
chainId: number;
id: string;
receipts?: WalletCallReceipt<bigint, "success" | "reverted">[];
status: undefined | "pending" | "success" | "failure";
statusCode: number;
version: string;
}>);
watchAsset: ((args) => Promise<boolean>);
writeContract: (<const abi, functionName, args, chainOverride>(args) => Promise<`0x${string}`>);
writeContractSync: (<const abi, functionName, args, chainOverride>(args) => Promise<TransactionReceipt>);
}
Returns Promise<T>
wrapped wallet client
Add the Sapphire transaction encryption wrapper to a wallet client
Example: