viem 0.2.0-0-2-0.20230320T235312 → 0.2.0-0-2-0.20230328T063845
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accounts/package.json +4 -0
- package/dist/abi.d.ts +3 -3
- package/dist/abi.js +2 -2
- package/dist/abi.mjs +1 -1
- package/dist/accounts/index.d.ts +90 -0
- package/dist/accounts/index.js +152 -0
- package/dist/accounts/index.js.map +1 -0
- package/dist/accounts/index.mjs +152 -0
- package/dist/accounts/index.mjs.map +1 -0
- package/dist/{chain-b2e88e30.d.ts → chain-5b28fc53.d.ts} +121 -85
- package/dist/{chain-c4f924cf.d.ts → chain-e9b996ff.d.ts} +1 -1
- package/dist/chains.d.ts +3 -3
- package/dist/chains.js +63 -63
- package/dist/chains.mjs +1 -1
- package/dist/{chunk-T4AH4Y6Y.js → chunk-564BCC7H.js} +813 -206
- package/dist/chunk-564BCC7H.js.map +1 -0
- package/dist/chunk-7QEOFHC7.mjs +31 -0
- package/dist/chunk-7QEOFHC7.mjs.map +1 -0
- package/dist/{chunk-4DIN6KDM.mjs → chunk-BJ5KRDTG.mjs} +2 -2
- package/dist/chunk-BJ5KRDTG.mjs.map +1 -0
- package/dist/{chunk-BLB7NERO.js → chunk-CXE4XSMF.js} +19 -19
- package/dist/chunk-CXE4XSMF.js.map +1 -0
- package/dist/chunk-D3ALNUWN.js +31 -0
- package/dist/chunk-D3ALNUWN.js.map +1 -0
- package/dist/{chunk-KOAJUBTN.mjs → chunk-UCZWRYV5.mjs} +803 -196
- package/dist/chunk-UCZWRYV5.mjs.map +1 -0
- package/dist/contract.d.ts +9 -8
- package/dist/contract.js +2 -2
- package/dist/contract.mjs +1 -1
- package/dist/{createClient-d4f1dea1.d.ts → createClient-e52de308.d.ts} +23 -9
- package/dist/{eip1193-cd3e872a.d.ts → eip1193-9080db42.d.ts} +1 -1
- package/dist/{encodeFunctionResult-750c9055.d.ts → encodeFunctionResult-47ad60ed.d.ts} +1 -1
- package/dist/{encodePacked-de74201f.d.ts → encodePacked-35c796fb.d.ts} +1 -1
- package/dist/ens.d.ts +6 -5
- package/dist/ens.js +3 -3
- package/dist/ens.mjs +2 -2
- package/dist/ethers.d.ts +5 -4
- package/dist/ethers.js +7 -5
- package/dist/ethers.js.map +1 -1
- package/dist/ethers.mjs +7 -5
- package/dist/ethers.mjs.map +1 -1
- package/dist/{formatAbiItem-fdbdda39.d.ts → formatAbiItem-d9e801dd.d.ts} +1 -1
- package/dist/{getAbiItem-9d709e3b.d.ts → getAbiItem-1d94ae0e.d.ts} +1 -1
- package/dist/index.d.ts +23 -16
- package/dist/index.js +130 -103
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +72 -45
- package/dist/index.mjs.map +1 -1
- package/dist/parseAccount-4209fa24.d.ts +6 -0
- package/dist/{parseGwei-f930d155.d.ts → parseGwei-85b2bbc3.d.ts} +61 -18
- package/dist/public.d.ts +6 -5
- package/dist/public.js +2 -2
- package/dist/public.mjs +1 -1
- package/dist/test-f3d06763.d.ts +198 -0
- package/dist/test.d.ts +11 -11
- package/dist/test.js +2 -2
- package/dist/test.mjs +1 -1
- package/dist/{account-07d04222.d.ts → typedData-42b43450.d.ts} +46 -27
- package/dist/utils/index.d.ts +17 -35
- package/dist/utils/index.js +18 -2
- package/dist/utils/index.mjs +19 -3
- package/dist/wallet.d.ts +6 -5
- package/dist/wallet.js +2 -2
- package/dist/wallet.mjs +1 -1
- package/dist/{createPublicClient-3a714a8d.d.ts → watchPendingTransactions-ad90553c.d.ts} +336 -301
- package/dist/window.d.ts +2 -2
- package/package.json +9 -1
- package/dist/chunk-4DIN6KDM.mjs.map +0 -1
- package/dist/chunk-BLB7NERO.js.map +0 -1
- package/dist/chunk-KOAJUBTN.mjs.map +0 -1
- package/dist/chunk-T4AH4Y6Y.js.map +0 -1
- package/dist/test-c70126a6.d.ts +0 -206
@@ -1,8 +1,8 @@
|
|
1
|
-
import {
|
2
|
-
import { a as
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
1
|
+
import { a as Transport, b as ClientConfig, C as Client } from './createClient-e52de308.js';
|
2
|
+
import { C as Chain, a4 as ExtractFormatter, ab as Formatters, ac as Formatter, a5 as Formatted, c as Block, R as RpcBlock, T as Transaction, O as TransactionReceipt, z as RpcTransactionReceipt, I as TransactionType, D as RpcTransactionRequest, P as TransactionRequest, H as Hex, ad as GetChain, h as ExtractConstructorArgsFromAbi, ae as MergeIntersectionProperties, a as Hash, af as GetValue, g as ContractConfig, ag as IsUndefined, ah as MaybeExtractEventArgsFromAbi, p as ExtractResultFromAbi, ai as Prettify, f as BlockTag, aj as MaybeAbiEventName, e as BlockNumber, m as ExtractEventNameFromAbi, F as FeeHistory, L as Log, a6 as FormattedTransaction, a7 as TransactionFormatter, k as ExtractEventArgsFromAbi } from './chain-5b28fc53.js';
|
3
|
+
import { W as WalletPermission, a as WatchAssetParams, R as Requests, P as PublicRequests } from './eip1193-9080db42.js';
|
4
|
+
import { Abi, Narrow, Address, TypedData, AbiEvent, ExtractAbiEvent } from 'abitype';
|
5
|
+
import { A as Account, T as TypedDataDefinition, J as JsonRpcAccount } from './typedData-42b43450.js';
|
6
6
|
|
7
7
|
type BlockFormatter<TChain extends Chain | undefined = Chain> = TChain extends Chain ? ExtractFormatter<TChain, 'block', NonNullable<Formatters['block']>> : Formatters['block'];
|
8
8
|
type FormattedBlock<TFormatter extends Formatter | undefined = Formatter> = Formatted<TFormatter, Block>;
|
@@ -32,53 +32,36 @@ type FormattedTransactionRequest$1<TFormatter extends Formatter | undefined = Fo
|
|
32
32
|
declare function formatTransactionRequest(transactionRequest: Partial<TransactionRequest>): RpcTransactionRequest;
|
33
33
|
declare const defineTransactionRequest: <TFormat extends Formatter<Partial<TransactionRequest<bigint, number>>, Partial<RpcTransactionRequest> & {
|
34
34
|
[key: string]: unknown;
|
35
|
-
}>, TExclude extends ("value" | "
|
35
|
+
}>, TExclude extends ("value" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "from" | "accessList" | "to" | "data" | "gas" | "nonce")[] = []>({ exclude, format: formatOverride, }: {
|
36
36
|
exclude?: TExclude | undefined;
|
37
37
|
format?: TFormat | undefined;
|
38
38
|
}) => (data: Partial<TransactionRequest<bigint, number>> & {
|
39
39
|
[key: string]: unknown;
|
40
40
|
}) => RpcTransactionRequest & ReturnType<TFormat> & { [K in TExclude[number]]: never; };
|
41
41
|
|
42
|
-
type FormattedCall<TFormatter extends Formatter | undefined = Formatter> = MergeIntersectionProperties<Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>, TransactionRequest>;
|
43
|
-
type CallParameters<TChain extends Chain | undefined = Chain> = FormattedCall<TransactionRequestFormatter<TChain>> & {
|
44
|
-
account?: Account | Address;
|
45
|
-
} & ({
|
46
|
-
/** The balance of the account at a block number. */
|
47
|
-
blockNumber?: bigint;
|
48
|
-
blockTag?: never;
|
49
|
-
} | {
|
50
|
-
blockNumber?: never;
|
51
|
-
/** The balance of the account at a block tag. */
|
52
|
-
blockTag?: BlockTag;
|
53
|
-
});
|
54
|
-
type CallReturnType = {
|
55
|
-
data: Hex | undefined;
|
56
|
-
};
|
57
|
-
declare function call<TChain extends Chain | undefined>(client: PublicClientArg<Transport, TChain>, args: CallParameters<TChain>): Promise<CallReturnType>;
|
58
|
-
|
59
42
|
type AddChainParameters = {
|
60
43
|
chain: Chain;
|
61
44
|
};
|
62
|
-
declare function addChain(client:
|
45
|
+
declare function addChain<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: WalletClient<Transport, TChain, TAccount>, { chain }: AddChainParameters): Promise<void>;
|
63
46
|
|
64
|
-
type DeployContractParameters<
|
47
|
+
type DeployContractParameters<TAbi extends Abi | readonly unknown[] = Abi, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = undefined> = Omit<SendTransactionParameters<TChain, TAccount, TChainOverride>, 'accessList' | 'chain' | 'to' | 'data' | 'value'> & {
|
65
48
|
abi: Narrow<TAbi>;
|
66
49
|
bytecode: Hex;
|
67
50
|
} & GetChain<TChain, TChainOverride> & ExtractConstructorArgsFromAbi<TAbi>;
|
68
51
|
type DeployContractReturnType = SendTransactionReturnType;
|
69
|
-
declare function deployContract<
|
52
|
+
declare function deployContract<TAbi extends Abi | readonly unknown[], TChain extends Chain | undefined, TAccount extends Account | undefined, TChainOverride extends Chain | undefined>(walletClient: WalletClient<Transport, TChain, TAccount>, { abi, args, bytecode, ...request }: DeployContractParameters<TAbi, TChain, TAccount, TChainOverride>): Promise<DeployContractReturnType>;
|
70
53
|
|
71
54
|
type GetAddressesReturnType = Address[];
|
72
|
-
declare function getAddresses(client:
|
55
|
+
declare function getAddresses<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>): Promise<GetAddressesReturnType>;
|
73
56
|
|
74
57
|
type GetChainIdReturnType = number;
|
75
|
-
declare function getChainId(client:
|
58
|
+
declare function getChainId<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: PublicClient<Transport, TChain> | WalletClient<Transport, TChain, TAccount>): Promise<GetChainIdReturnType>;
|
76
59
|
|
77
60
|
type GetPermissionsReturnType = WalletPermission[];
|
78
|
-
declare function getPermissions(client:
|
61
|
+
declare function getPermissions<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>): Promise<WalletPermission[]>;
|
79
62
|
|
80
63
|
type RequestAddressesReturnType = Address[];
|
81
|
-
declare function requestAddresses(client:
|
64
|
+
declare function requestAddresses<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>): Promise<RequestAddressesReturnType>;
|
82
65
|
|
83
66
|
type RequestPermissionsParameters = {
|
84
67
|
eth_accounts: Record<string, any>;
|
@@ -86,23 +69,18 @@ type RequestPermissionsParameters = {
|
|
86
69
|
[key: string]: Record<string, any>;
|
87
70
|
};
|
88
71
|
type RequestPermissionsReturnType = WalletPermission[];
|
89
|
-
declare function requestPermissions(client:
|
72
|
+
declare function requestPermissions<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, permissions: RequestPermissionsParameters): Promise<WalletPermission[]>;
|
90
73
|
|
91
74
|
type FormattedTransactionRequest<TFormatter extends Formatter | undefined = Formatter> = MergeIntersectionProperties<Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>, TransactionRequest>;
|
92
|
-
type SendTransactionParameters<TChain extends Chain | undefined = Chain, TAccount extends Account | undefined = undefined, TChainOverride extends Chain | undefined =
|
75
|
+
type SendTransactionParameters<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = Chain> = FormattedTransactionRequest<TransactionRequestFormatter<TChainOverride>> & GetAccountParameter<TAccount> & GetChain<TChain, TChainOverride>;
|
93
76
|
type SendTransactionReturnType = Hash;
|
94
|
-
declare function sendTransaction<TChain extends Chain | undefined, TAccount extends Account | undefined, TChainOverride extends Chain | undefined
|
77
|
+
declare function sendTransaction<TChain extends Chain | undefined, TAccount extends Account | undefined, TChainOverride extends Chain | undefined>(client: WalletClient<Transport, TChain, TAccount>, args: SendTransactionParameters<TChain, TAccount, TChainOverride>): Promise<SendTransactionReturnType>;
|
95
78
|
|
96
|
-
type SignMessageParameters<TAccount extends Account | undefined = undefined> = GetAccountParameter<TAccount> &
|
97
|
-
/** @deprecated – `data` will be removed in 0.2.0; use `message` instead. */
|
98
|
-
data: string;
|
99
|
-
message?: never;
|
100
|
-
} | {
|
101
|
-
data?: never;
|
79
|
+
type SignMessageParameters<TAccount extends Account | undefined = Account | undefined> = GetAccountParameter<TAccount> & {
|
102
80
|
message: string;
|
103
|
-
}
|
81
|
+
};
|
104
82
|
type SignMessageReturnType = Hex;
|
105
|
-
declare function signMessage<TAccount extends Account | undefined>(client:
|
83
|
+
declare function signMessage<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: WalletClient<Transport, TChain, TAccount>, { account: account_, message, }: SignMessageParameters<TAccount>): Promise<SignMessageReturnType>;
|
106
84
|
|
107
85
|
type SignTypedDataParameters<TTypedData extends TypedData | {
|
108
86
|
[key: string]: unknown;
|
@@ -110,41 +88,242 @@ type SignTypedDataParameters<TTypedData extends TypedData | {
|
|
110
88
|
type SignTypedDataReturnType = Hex;
|
111
89
|
declare function signTypedData<TTypedData extends TypedData | {
|
112
90
|
[key: string]: unknown;
|
113
|
-
}, TPrimaryType extends string
|
91
|
+
}, TPrimaryType extends string, TChain extends Chain | undefined, TAccount extends Account | undefined>(client: WalletClient<Transport, TChain, TAccount>, { account: account_, domain, message, primaryType, types: types_, }: SignTypedDataParameters<TTypedData, TPrimaryType, TAccount>): Promise<SignTypedDataReturnType>;
|
114
92
|
|
115
93
|
type SwitchChainParameters = {
|
116
94
|
id: Chain['id'];
|
117
95
|
};
|
118
|
-
declare function switchChain(client:
|
96
|
+
declare function switchChain<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, { id }: SwitchChainParameters): Promise<void>;
|
119
97
|
|
120
98
|
type WatchAssetParameters = WatchAssetParams;
|
121
99
|
type WatchAssetReturnType = boolean;
|
122
|
-
declare function watchAsset(client:
|
100
|
+
declare function watchAsset<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, params: WatchAssetParameters): Promise<WatchAssetReturnType>;
|
123
101
|
|
124
|
-
type WriteContractParameters<
|
102
|
+
type WriteContractParameters<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TChain extends Chain | undefined = Chain, TAccount extends Account | undefined = undefined, TChainOverride extends Chain | undefined = undefined> = Omit<SendTransactionParameters<TChain, TAccount, TChainOverride>, 'chain' | 'to' | 'data' | 'value'> & {
|
125
103
|
value?: GetValue<TAbi, TFunctionName, SendTransactionParameters<TChain>['value']>;
|
126
104
|
} & GetChain<TChain, TChainOverride> & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'>;
|
127
105
|
type WriteContractReturnType = SendTransactionReturnType;
|
128
|
-
declare function writeContract<TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string,
|
106
|
+
declare function writeContract<TChain extends Chain | undefined, TAccount extends Account | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChainOverride extends Chain | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, { abi, address, args, functionName, ...request }: WriteContractParameters<TAbi, TFunctionName, TChain, TAccount, TChainOverride>): Promise<WriteContractReturnType>;
|
107
|
+
|
108
|
+
type GetAccountParameter<TAccount extends Account | undefined = Account | undefined> = IsUndefined<TAccount> extends true ? {
|
109
|
+
account: Account | Address;
|
110
|
+
} : {
|
111
|
+
account?: Account | Address;
|
112
|
+
};
|
113
|
+
type ParseAccount<TAccount extends Account | Address | undefined> = (TAccount extends Account ? TAccount : never) | (TAccount extends Address ? JsonRpcAccount : never) | (TAccount extends undefined ? undefined : never);
|
114
|
+
|
115
|
+
type FilterType = 'transaction' | 'block' | 'event';
|
116
|
+
type Filter<TFilterType extends FilterType = 'event', TAbi extends Abi | readonly unknown[] = Abi, TEventName extends string | undefined = undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined = MaybeExtractEventArgsFromAbi<TAbi, TEventName>> = {
|
117
|
+
id: Hex;
|
118
|
+
type: TFilterType;
|
119
|
+
} & (TFilterType extends 'event' ? TAbi extends Abi ? undefined extends TEventName ? {
|
120
|
+
abi: TAbi;
|
121
|
+
args?: never;
|
122
|
+
eventName?: never;
|
123
|
+
} : TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> ? {
|
124
|
+
abi: TAbi;
|
125
|
+
args: TArgs;
|
126
|
+
eventName: TEventName;
|
127
|
+
} : {
|
128
|
+
abi: TAbi;
|
129
|
+
args?: never;
|
130
|
+
eventName: TEventName;
|
131
|
+
} : {
|
132
|
+
abi?: never;
|
133
|
+
args?: never;
|
134
|
+
eventName?: never;
|
135
|
+
} : {});
|
136
|
+
|
137
|
+
type MAXIMUM_DEPTH = 20;
|
138
|
+
type Contract<TAbi extends Abi | readonly unknown[] = Abi | readonly unknown[], TFunctionName extends string = string> = {
|
139
|
+
abi: TAbi;
|
140
|
+
functionName: TFunctionName;
|
141
|
+
};
|
142
|
+
type MulticallContracts<TContracts extends Contract[], TProperties extends Record<string, any> = object, Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? (ContractConfig & TProperties)[] : TContracts extends [] ? [] : TContracts extends [infer Head extends Contract] ? [
|
143
|
+
...Result,
|
144
|
+
ContractConfig<Head['abi'], Head['functionName']> & TProperties
|
145
|
+
] : TContracts extends [
|
146
|
+
infer Head extends Contract,
|
147
|
+
...infer Tail extends Contract[]
|
148
|
+
] ? MulticallContracts<[
|
149
|
+
...Tail
|
150
|
+
], TProperties, [
|
151
|
+
...Result,
|
152
|
+
ContractConfig<Head['abi'], Head['functionName']> & TProperties
|
153
|
+
], [
|
154
|
+
...Depth,
|
155
|
+
1
|
156
|
+
]> : unknown[] extends TContracts ? TContracts : TContracts extends ContractConfig<infer TAbi, infer TFunctionName>[] ? (ContractConfig<TAbi, TFunctionName> & TProperties)[] : (ContractConfig & TProperties)[];
|
157
|
+
type MulticallResult<Result, TAllowFailure extends boolean = true> = TAllowFailure extends true ? ({
|
158
|
+
error?: undefined;
|
159
|
+
result: Result;
|
160
|
+
status: 'success';
|
161
|
+
} | {
|
162
|
+
error: Error;
|
163
|
+
result?: undefined;
|
164
|
+
status: 'error';
|
165
|
+
}) : Result;
|
166
|
+
type MulticallResults<TContracts extends Contract[], TAllowFailure extends boolean = true, Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? MulticallResult<ExtractResultFromAbi, TAllowFailure>[] : TContracts extends [] ? [] : TContracts extends [infer Head extends Contract] ? [...Result, MulticallResult<ExtractResultFromAbi<Head['abi'], Head['functionName']>, TAllowFailure>] : TContracts extends [
|
167
|
+
infer Head extends Contract,
|
168
|
+
...infer Tail extends Contract[]
|
169
|
+
] ? MulticallResults<[
|
170
|
+
...Tail
|
171
|
+
], TAllowFailure, [
|
172
|
+
...Result,
|
173
|
+
MulticallResult<ExtractResultFromAbi<Head['abi'], Head['functionName']>, TAllowFailure>
|
174
|
+
], [
|
175
|
+
...Depth,
|
176
|
+
1
|
177
|
+
]> : TContracts extends ContractConfig<infer TAbi, infer TFunctionName>[] ? MulticallResult<ExtractResultFromAbi<TAbi, TFunctionName>, TAllowFailure>[] : MulticallResult<ExtractResultFromAbi, TAllowFailure>[];
|
178
|
+
|
179
|
+
type GetTransportConfig<TTransport extends Transport> = ReturnType<TTransport>['config'];
|
180
|
+
|
181
|
+
type GetEnsAddressParameters = Prettify<Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {
|
182
|
+
/** ENS name to get address. */
|
183
|
+
name: string;
|
184
|
+
/** Address of ENS Universal Resolver Contract */
|
185
|
+
universalResolverAddress?: Address;
|
186
|
+
}>;
|
187
|
+
type GetEnsAddressReturnType = Address;
|
188
|
+
/**
|
189
|
+
* @description Gets address for ENS name.
|
190
|
+
*
|
191
|
+
* - Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.
|
192
|
+
* - Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize.html) function for this.
|
193
|
+
*/
|
194
|
+
declare function getEnsAddress<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { blockNumber, blockTag, name, universalResolverAddress: universalResolverAddress_, }: GetEnsAddressParameters): Promise<GetEnsAddressReturnType>;
|
195
|
+
|
196
|
+
type GetEnsNameParameters = Prettify<Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {
|
197
|
+
/** Address to get ENS name for. */
|
198
|
+
address: Address;
|
199
|
+
/** Address of ENS Universal Resolver Contract. */
|
200
|
+
universalResolverAddress?: Address;
|
201
|
+
}>;
|
202
|
+
type GetEnsNameReturnType = string | null;
|
203
|
+
/**
|
204
|
+
* @description Gets primary name for specified address.
|
205
|
+
*
|
206
|
+
* - Calls `reverse(bytes)` on ENS Universal Resolver Contract.
|
207
|
+
*
|
208
|
+
* @example
|
209
|
+
* const ensName = await getEnsName(publicClient, {
|
210
|
+
* address: '0xd2135CfB216b74109775236E36d4b433F1DF507B',
|
211
|
+
* })
|
212
|
+
* // 'wagmi-dev.eth'
|
213
|
+
*/
|
214
|
+
declare function getEnsName<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { address, blockNumber, blockTag, universalResolverAddress: universalResolverAddress_, }: GetEnsNameParameters): Promise<GetEnsNameReturnType>;
|
215
|
+
|
216
|
+
type PublicActions<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined> = {
|
217
|
+
call: (args: CallParameters<TChain>) => Promise<CallReturnType>;
|
218
|
+
createBlockFilter: () => Promise<CreateBlockFilterReturnType>;
|
219
|
+
createContractEventFilter: <TAbi extends Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined>(args: CreateContractEventFilterParameters<TAbi, TEventName, TArgs>) => Promise<CreateContractEventFilterReturnType<TAbi, TEventName, TArgs>>;
|
220
|
+
createEventFilter: <TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined>(args?: CreateEventFilterParameters<TAbiEvent, TAbi, TEventName, TArgs>) => Promise<CreateEventFilterReturnType<TAbiEvent, TAbi, TEventName, TArgs>>;
|
221
|
+
createPendingTransactionFilter: () => Promise<CreatePendingTransactionFilterReturnType>;
|
222
|
+
estimateContractGas: <TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string>(args: EstimateContractGasParameters<TAbi, TFunctionName, TChain>) => Promise<EstimateContractGasReturnType>;
|
223
|
+
estimateGas: (args: EstimateGasParameters<TChain>) => Promise<EstimateGasReturnType>;
|
224
|
+
getBalance: (args: GetBalanceParameters) => Promise<GetBalanceReturnType>;
|
225
|
+
getBlock: (args?: GetBlockParameters) => Promise<GetBlockReturnType<TChain>>;
|
226
|
+
getBlockNumber: (args?: GetBlockNumberParameters) => Promise<GetBlockNumberReturnType>;
|
227
|
+
getBlockTransactionCount: (args?: GetBlockTransactionCountParameters) => Promise<GetBlockTransactionCountReturnType>;
|
228
|
+
getBytecode: (args: GetBytecodeParameters) => Promise<GetBytecodeReturnType>;
|
229
|
+
getChainId: () => Promise<GetChainIdReturnType>;
|
230
|
+
getEnsAddress: (args: GetEnsAddressParameters) => Promise<GetEnsAddressReturnType>;
|
231
|
+
getEnsName: (args: GetEnsNameParameters) => Promise<GetEnsNameReturnType>;
|
232
|
+
getFeeHistory: (args: GetFeeHistoryParameters) => Promise<GetFeeHistoryReturnType>;
|
233
|
+
getFilterChanges: <TFilterType extends FilterType, TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(args: GetFilterChangesParameters<TFilterType, TAbiEvent, TAbi, TEventName>) => Promise<GetFilterChangesReturnType<TFilterType, TAbiEvent, TAbi, TEventName>>;
|
234
|
+
getFilterLogs: <TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(args: GetFilterLogsParameters<TAbiEvent, TAbi, TEventName>) => Promise<GetFilterLogsReturnType<TAbiEvent, TAbi, TEventName>>;
|
235
|
+
getGasPrice: () => Promise<GetGasPriceReturnType>;
|
236
|
+
getLogs: <TAbiEvent extends AbiEvent | undefined>(args?: GetLogsParameters<TAbiEvent>) => Promise<GetLogsReturnType<TAbiEvent>>;
|
237
|
+
getStorageAt: (args: GetStorageAtParameters) => Promise<GetStorageAtReturnType>;
|
238
|
+
getTransaction: (args: GetTransactionParameters) => Promise<GetTransactionReturnType<TChain>>;
|
239
|
+
getTransactionConfirmations: (args: GetTransactionConfirmationsParameters<TChain>) => Promise<GetTransactionConfirmationsReturnType>;
|
240
|
+
getTransactionCount: (args: GetTransactionCountParameters) => Promise<GetTransactionCountReturnType>;
|
241
|
+
getTransactionReceipt: (args: GetTransactionReceiptParameters) => Promise<GetTransactionReceiptReturnType<TChain>>;
|
242
|
+
multicall: <TContracts extends ContractConfig[], TAllowFailure extends boolean = true>(args: MulticallParameters<TContracts, TAllowFailure>) => Promise<MulticallReturnType<TContracts, TAllowFailure>>;
|
243
|
+
readContract: <TAbi extends Abi | readonly unknown[], TFunctionName extends string>(args: ReadContractParameters<TAbi, TFunctionName>) => Promise<ReadContractReturnType<TAbi, TFunctionName>>;
|
244
|
+
simulateContract: <TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = any, TChainOverride extends Chain | undefined = undefined>(args: SimulateContractParameters<TAbi, TFunctionName, TChain, TChainOverride>) => Promise<SimulateContractReturnType<TAbi, TFunctionName, TChain, TChainOverride>>;
|
245
|
+
uninstallFilter: (args: UninstallFilterParameters) => Promise<UninstallFilterReturnType>;
|
246
|
+
waitForTransactionReceipt: (args: WaitForTransactionReceiptParameters<TChain>) => Promise<WaitForTransactionReceiptReturnType<TChain>>;
|
247
|
+
watchBlockNumber: (args: WatchBlockNumberParameters) => WatchBlockNumberReturnType;
|
248
|
+
watchBlocks: (args: WatchBlocksParameters<TTransport, TChain>) => WatchBlocksReturnType;
|
249
|
+
watchContractEvent: <TAbi extends Abi | readonly unknown[], TEventName extends string>(args: WatchContractEventParameters<TAbi, TEventName>) => WatchContractEventReturnType;
|
250
|
+
watchEvent: <TAbiEvent extends AbiEvent | undefined>(args: WatchEventParameters<TAbiEvent>) => WatchEventReturnType;
|
251
|
+
watchPendingTransactions: (args: WatchPendingTransactionsParameters<TTransport>) => WatchPendingTransactionsReturnType;
|
252
|
+
};
|
253
|
+
|
254
|
+
type WalletClientConfig<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Pick<ClientConfig<TTransport, TChain>, 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'> & {
|
255
|
+
/** The Account to use for the Wallet Client. This will be used for Actions that require an account as an argument. */
|
256
|
+
account?: TAccountOrAddress;
|
257
|
+
};
|
258
|
+
type WalletClient<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TIncludeActions extends boolean = true> = Prettify<Client<TTransport, Requests, TChain> & (TIncludeActions extends true ? WalletActions<TChain, TAccount> : unknown) & {
|
259
|
+
/** The Account to use for the Wallet Client. */
|
260
|
+
account: TAccount;
|
261
|
+
}>;
|
262
|
+
/**
|
263
|
+
* @description Creates a wallet client with a given transport.
|
264
|
+
*/
|
265
|
+
declare function createWalletClient<TTransport extends Transport, TChain extends Chain | undefined = undefined, TAccountOrAddress extends Account | Address | undefined = undefined>({ account, chain, transport, key, name, pollingInterval, }: WalletClientConfig<TTransport, TChain, TAccountOrAddress>): WalletClient<TTransport, TChain, TAccountOrAddress extends Address ? Prettify<JsonRpcAccount<TAccountOrAddress>> : TAccountOrAddress, true>;
|
266
|
+
|
267
|
+
type WalletActions<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined> = {
|
268
|
+
addChain: (args: AddChainParameters) => Promise<void>;
|
269
|
+
deployContract: <TAbi extends Abi | readonly unknown[], TChainOverride extends Chain | undefined>(args: DeployContractParameters<TAbi, TChain, TAccount, TChainOverride>) => Promise<DeployContractReturnType>;
|
270
|
+
getAddresses: () => Promise<GetAddressesReturnType>;
|
271
|
+
getChainId: () => Promise<GetChainIdReturnType>;
|
272
|
+
getPermissions: () => Promise<GetPermissionsReturnType>;
|
273
|
+
requestAddresses: () => Promise<RequestAddressesReturnType>;
|
274
|
+
requestPermissions: (args: RequestPermissionsParameters) => Promise<RequestPermissionsReturnType>;
|
275
|
+
sendTransaction: <TChainOverride extends Chain | undefined>(args: SendTransactionParameters<TChain, TAccount, TChainOverride>) => Promise<SendTransactionReturnType>;
|
276
|
+
signMessage: (args: SignMessageParameters<TAccount>) => Promise<SignMessageReturnType>;
|
277
|
+
signTypedData: <TTypedData extends TypedData | {
|
278
|
+
[key: string]: unknown;
|
279
|
+
}, TPrimaryType extends string>(args: SignTypedDataParameters<TTypedData, TPrimaryType, TAccount>) => Promise<SignTypedDataReturnType>;
|
280
|
+
switchChain: (args: SwitchChainParameters) => Promise<void>;
|
281
|
+
watchAsset: (args: WatchAssetParameters) => Promise<WatchAssetReturnType>;
|
282
|
+
writeContract: <TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChainOverride extends Chain | undefined>(args: WriteContractParameters<TAbi, TFunctionName, TChain, TAccount, TChainOverride>) => Promise<WriteContractReturnType>;
|
283
|
+
};
|
284
|
+
|
285
|
+
type PublicClientConfig<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined> = Pick<ClientConfig<TTransport, TChain>, 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>;
|
286
|
+
type PublicClient<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TIncludeActions extends boolean = true> = Prettify<Client<TTransport, PublicRequests, TChain> & (TIncludeActions extends true ? PublicActions<TTransport, TChain> : unknown)>;
|
287
|
+
/**
|
288
|
+
* @description Creates a public client with a given transport.
|
289
|
+
*/
|
290
|
+
declare function createPublicClient<TTransport extends Transport, TChain extends Chain | undefined = undefined>({ chain, key, name, transport, pollingInterval, }: PublicClientConfig<TTransport, TChain>): PublicClient<TTransport, TChain, true>;
|
291
|
+
|
292
|
+
type FormattedCall<TFormatter extends Formatter | undefined = Formatter> = MergeIntersectionProperties<Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>, TransactionRequest>;
|
293
|
+
type CallParameters<TChain extends Chain | undefined = Chain | undefined> = FormattedCall<TransactionRequestFormatter<TChain>> & {
|
294
|
+
account?: Account | Address;
|
295
|
+
} & ({
|
296
|
+
/** The balance of the account at a block number. */
|
297
|
+
blockNumber?: bigint;
|
298
|
+
blockTag?: never;
|
299
|
+
} | {
|
300
|
+
blockNumber?: never;
|
301
|
+
/** The balance of the account at a block tag. */
|
302
|
+
blockTag?: BlockTag;
|
303
|
+
});
|
304
|
+
type CallReturnType = {
|
305
|
+
data: Hex | undefined;
|
306
|
+
};
|
307
|
+
declare function call<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, args: CallParameters<TChain>): Promise<CallReturnType>;
|
129
308
|
|
130
|
-
type SimulateContractParameters<
|
309
|
+
type SimulateContractParameters<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = any, TChain extends Chain | undefined = Chain | undefined, TChainOverride extends Chain | undefined = undefined> = Omit<CallParameters<TChainOverride extends Chain ? TChainOverride : TChain>, 'to' | 'data' | 'value'> & {
|
131
310
|
chain?: TChainOverride;
|
132
311
|
} & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'> & {
|
133
312
|
value?: GetValue<TAbi, TFunctionName, CallParameters<TChain>['value']>;
|
134
313
|
};
|
135
|
-
type SimulateContractReturnType<
|
314
|
+
type SimulateContractReturnType<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TChain extends Chain | undefined = Chain | undefined, TChainOverride extends Chain | undefined = undefined> = {
|
136
315
|
result: ExtractResultFromAbi<TAbi, TFunctionName>;
|
137
|
-
request: Omit<WriteContractParameters<
|
316
|
+
request: Omit<WriteContractParameters<TAbi, TFunctionName, TChain, undefined, TChainOverride>, 'chain'> & {
|
138
317
|
chain: TChainOverride;
|
139
318
|
} & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'>;
|
140
319
|
};
|
141
|
-
declare function simulateContract<TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChainOverride extends Chain | undefined>(client:
|
320
|
+
declare function simulateContract<TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChainOverride extends Chain | undefined>(client: PublicClient<Transport, TChain>, { abi, address, args, functionName, ...callRequest }: SimulateContractParameters<TAbi, TFunctionName, TChain, TChainOverride>): Promise<SimulateContractReturnType<TAbi, TFunctionName, TChain, TChainOverride>>;
|
142
321
|
|
143
322
|
type CreatePendingTransactionFilterReturnType = Filter<'transaction'>;
|
144
|
-
declare function createPendingTransactionFilter(client:
|
323
|
+
declare function createPendingTransactionFilter<TTransport extends Transport, TChain extends Chain | undefined>(client: PublicClient<TTransport, TChain>): Promise<CreatePendingTransactionFilterReturnType>;
|
145
324
|
|
146
325
|
type CreateBlockFilterReturnType = Filter<'block'>;
|
147
|
-
declare function createBlockFilter(client:
|
326
|
+
declare function createBlockFilter<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>): Promise<CreateBlockFilterReturnType>;
|
148
327
|
|
149
328
|
type CreateEventFilterParameters<TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined = undefined> = {
|
150
329
|
address?: Address | Address[];
|
@@ -164,7 +343,7 @@ type CreateEventFilterParameters<TAbiEvent extends AbiEvent | undefined = undefi
|
|
164
343
|
event?: never;
|
165
344
|
});
|
166
345
|
type CreateEventFilterReturnType<TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined = undefined> = Filter<'event', TAbi, TEventName, TArgs>;
|
167
|
-
declare function createEventFilter<TAbiEvent extends AbiEvent | undefined,
|
346
|
+
declare function createEventFilter<TChain extends Chain | undefined, TAbiEvent extends AbiEvent | undefined, _Abi extends Abi | readonly unknown[] = [TAbiEvent], _EventName extends string | undefined = MaybeAbiEventName<TAbiEvent>, _Args extends MaybeExtractEventArgsFromAbi<_Abi, _EventName> | undefined = undefined>(client: PublicClient<Transport, TChain>, { address, args, event, fromBlock, toBlock, }?: CreateEventFilterParameters<TAbiEvent, _Abi, _EventName, _Args>): Promise<CreateEventFilterReturnType<TAbiEvent, _Abi, _EventName, _Args>>;
|
168
347
|
|
169
348
|
type CreateContractEventFilterParameters<TAbi extends Abi | readonly unknown[] = Abi, TEventName extends string | undefined = undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined = undefined> = {
|
170
349
|
address?: Address | Address[];
|
@@ -180,10 +359,10 @@ type CreateContractEventFilterParameters<TAbi extends Abi | readonly unknown[] =
|
|
180
359
|
args?: never;
|
181
360
|
});
|
182
361
|
type CreateContractEventFilterReturnType<TAbi extends Abi | readonly unknown[] = Abi, TEventName extends string | undefined = undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined = undefined> = Filter<'event', TAbi, TEventName, TArgs>;
|
183
|
-
declare function createContractEventFilter<TAbi extends Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined>(client:
|
362
|
+
declare function createContractEventFilter<TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined>(client: PublicClient<Transport, TChain>, { address, abi, args, eventName, fromBlock, toBlock, }: CreateContractEventFilterParameters<TAbi, TEventName, TArgs>): Promise<CreateContractEventFilterReturnType<TAbi, TEventName, TArgs>>;
|
184
363
|
|
185
364
|
type FormattedEstimateGas<TFormatter extends Formatter | undefined = Formatter> = MergeIntersectionProperties<Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>, TransactionRequest>;
|
186
|
-
type EstimateGasParameters<TChain extends Chain | undefined = Chain, TAccount extends Account | undefined = undefined> = FormattedEstimateGas<TransactionRequestFormatter<TChain>> & GetAccountParameter<TAccount> & ({
|
365
|
+
type EstimateGasParameters<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = undefined> = FormattedEstimateGas<TransactionRequestFormatter<TChain>> & GetAccountParameter<TAccount> & ({
|
187
366
|
/** The balance of the account at a block number. */
|
188
367
|
blockNumber?: bigint;
|
189
368
|
blockTag?: never;
|
@@ -196,13 +375,13 @@ type EstimateGasReturnType = bigint;
|
|
196
375
|
/**
|
197
376
|
* @description Estimates the gas necessary to complete a transaction without submitting it to the network.
|
198
377
|
*/
|
199
|
-
declare function estimateGas<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client:
|
378
|
+
declare function estimateGas<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: PublicClient<Transport, TChain> | WalletClient<Transport, TChain, TAccount>, args: EstimateGasParameters<TChain, TAccount>): Promise<EstimateGasReturnType>;
|
200
379
|
|
201
|
-
type EstimateContractGasParameters<
|
380
|
+
type EstimateContractGasParameters<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TChain extends Chain | undefined = Chain | undefined> = Omit<EstimateGasParameters<TChain>, 'data' | 'to' | 'value'> & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'> & {
|
202
381
|
value?: GetValue<TAbi, TFunctionName, EstimateGasParameters<TChain>['value']>;
|
203
382
|
};
|
204
383
|
type EstimateContractGasReturnType = bigint;
|
205
|
-
declare function estimateContractGas<
|
384
|
+
declare function estimateContractGas<TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { abi, address, args, functionName, ...request }: EstimateContractGasParameters<TAbi, TFunctionName, TChain>): Promise<EstimateContractGasReturnType>;
|
206
385
|
|
207
386
|
type GetBalanceParameters = {
|
208
387
|
/** The address of the account. */
|
@@ -220,7 +399,7 @@ type GetBalanceReturnType = bigint;
|
|
220
399
|
/**
|
221
400
|
* @description Returns the balance of an address in wei.
|
222
401
|
*/
|
223
|
-
declare function getBalance(client:
|
402
|
+
declare function getBalance<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { address, blockNumber, blockTag }: GetBalanceParameters): Promise<GetBalanceReturnType>;
|
224
403
|
|
225
404
|
type GetBlockParameters = {
|
226
405
|
/** Whether or not to include transaction data in the response. */
|
@@ -241,8 +420,8 @@ type GetBlockParameters = {
|
|
241
420
|
/** The block tag. Defaults to 'latest'. */
|
242
421
|
blockTag?: BlockTag;
|
243
422
|
});
|
244
|
-
type GetBlockReturnType<TChain extends Chain | undefined = Chain> = FormattedBlock<BlockFormatter<TChain>>;
|
245
|
-
declare function getBlock<TChain extends Chain | undefined>(client:
|
423
|
+
type GetBlockReturnType<TChain extends Chain | undefined = Chain | undefined> = FormattedBlock<BlockFormatter<TChain>>;
|
424
|
+
declare function getBlock<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: PublicClient<Transport, TChain> | WalletClient<Transport, TChain, TAccount>, { blockHash, blockNumber, blockTag, includeTransactions, }?: GetBlockParameters): Promise<GetBlockReturnType<TChain>>;
|
246
425
|
|
247
426
|
type GetBlockNumberParameters = {
|
248
427
|
/** The maximum age (in ms) of the cached value. */
|
@@ -260,13 +439,22 @@ declare function getBlockNumberCache(id: string): {
|
|
260
439
|
clear: () => boolean;
|
261
440
|
get: () => {
|
262
441
|
created: Date;
|
442
|
+
/**
|
443
|
+
* @description Returns the number of the most recent block seen.
|
444
|
+
*/
|
263
445
|
data: unknown;
|
264
446
|
} | undefined;
|
265
447
|
set: (data: {
|
266
448
|
created: Date;
|
449
|
+
/**
|
450
|
+
* @description Returns the number of the most recent block seen.
|
451
|
+
*/
|
267
452
|
data: unknown;
|
268
453
|
}) => Map<string, {
|
269
454
|
created: Date;
|
455
|
+
/**
|
456
|
+
* @description Returns the number of the most recent block seen.
|
457
|
+
*/
|
270
458
|
data: unknown;
|
271
459
|
}>;
|
272
460
|
};
|
@@ -274,7 +462,7 @@ declare function getBlockNumberCache(id: string): {
|
|
274
462
|
/**
|
275
463
|
* @description Returns the number of the most recent block seen.
|
276
464
|
*/
|
277
|
-
declare function getBlockNumber(client:
|
465
|
+
declare function getBlockNumber<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { maxAge }?: GetBlockNumberParameters): Promise<GetBlockNumberReturnType>;
|
278
466
|
|
279
467
|
type GetBlockTransactionCountParameters = {
|
280
468
|
/** Hash of the block. */
|
@@ -293,7 +481,7 @@ type GetBlockTransactionCountParameters = {
|
|
293
481
|
blockTag?: BlockTag;
|
294
482
|
};
|
295
483
|
type GetBlockTransactionCountReturnType = number;
|
296
|
-
declare function getBlockTransactionCount<TChain extends Chain | undefined>(client:
|
484
|
+
declare function getBlockTransactionCount<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { blockHash, blockNumber, blockTag, }?: GetBlockTransactionCountParameters): Promise<GetBlockTransactionCountReturnType>;
|
297
485
|
|
298
486
|
type GetBytecodeParameters = {
|
299
487
|
address: Address;
|
@@ -305,7 +493,7 @@ type GetBytecodeParameters = {
|
|
305
493
|
blockTag?: never;
|
306
494
|
});
|
307
495
|
type GetBytecodeReturnType = Hex | undefined;
|
308
|
-
declare function getBytecode(client:
|
496
|
+
declare function getBytecode<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { address, blockNumber, blockTag }: GetBytecodeParameters): Promise<GetBytecodeReturnType>;
|
309
497
|
|
310
498
|
type GetFeeHistoryParameters = {
|
311
499
|
blockCount: number;
|
@@ -321,25 +509,25 @@ type GetFeeHistoryReturnType = FeeHistory;
|
|
321
509
|
/**
|
322
510
|
* @description Returns a collection of historical gas information.
|
323
511
|
*/
|
324
|
-
declare function getFeeHistory(client:
|
512
|
+
declare function getFeeHistory<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { blockCount, blockNumber, blockTag, rewardPercentiles, }: GetFeeHistoryParameters): Promise<GetFeeHistoryReturnType>;
|
325
513
|
|
326
514
|
type GetFilterChangesParameters<TFilterType extends FilterType = FilterType, TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = {
|
327
515
|
filter: Filter<TFilterType, TAbi, TEventName, any>;
|
328
516
|
};
|
329
517
|
type GetFilterChangesReturnType<TFilterType extends FilterType = FilterType, TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = TFilterType extends 'event' ? Log<bigint, number, TAbiEvent, TAbi, TEventName>[] : Hash[];
|
330
|
-
declare function getFilterChanges<TFilterType extends FilterType, TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(client:
|
518
|
+
declare function getFilterChanges<TTransport extends Transport, TChain extends Chain | undefined, TFilterType extends FilterType, TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(client: PublicClient<TTransport, TChain>, { filter, }: GetFilterChangesParameters<TFilterType, TAbiEvent, TAbi, TEventName>): Promise<GetFilterChangesReturnType<TFilterType, TAbiEvent, TAbi, TEventName>>;
|
331
519
|
|
332
520
|
type GetFilterLogsParameters<TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = {
|
333
521
|
filter: Filter<'event', TAbi, TEventName, any>;
|
334
522
|
};
|
335
523
|
type GetFilterLogsReturnType<TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = Log<bigint, number, TAbiEvent, TAbi, TEventName>[];
|
336
|
-
declare function getFilterLogs<TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(client:
|
524
|
+
declare function getFilterLogs<TChain extends Chain | undefined, TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(client: PublicClient<Transport, TChain>, { filter }: GetFilterLogsParameters<TAbiEvent, TAbi, TEventName>): Promise<GetFilterLogsReturnType<TAbiEvent, TAbi, TEventName>>;
|
337
525
|
|
338
526
|
type GetGasPriceReturnType = bigint;
|
339
527
|
/**
|
340
528
|
* @description Returns the current price of gas (in wei).
|
341
529
|
*/
|
342
|
-
declare function getGasPrice(client:
|
530
|
+
declare function getGasPrice<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: PublicClient<Transport, TChain> | WalletClient<Transport, TChain, TAccount>): Promise<GetGasPriceReturnType>;
|
343
531
|
|
344
532
|
type GetLogsParameters<TAbiEvent extends AbiEvent | undefined = undefined, TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = {
|
345
533
|
/** Address or list of addresses from which logs originated */
|
@@ -366,7 +554,7 @@ type GetLogsReturnType<TAbiEvent extends AbiEvent | undefined = undefined, TEven
|
|
366
554
|
/**
|
367
555
|
* @description Returns a collection of event logs.
|
368
556
|
*/
|
369
|
-
declare function getLogs<TAbiEvent extends AbiEvent | undefined>(client:
|
557
|
+
declare function getLogs<TChain extends Chain | undefined, TAbiEvent extends AbiEvent | undefined>(client: PublicClient<Transport, TChain>, { address, blockHash, fromBlock, toBlock, event, args, }?: GetLogsParameters<TAbiEvent>): Promise<GetLogsReturnType<TAbiEvent>>;
|
370
558
|
|
371
559
|
type GetStorageAtParameters = {
|
372
560
|
address: Address;
|
@@ -379,7 +567,7 @@ type GetStorageAtParameters = {
|
|
379
567
|
blockTag?: never;
|
380
568
|
});
|
381
569
|
type GetStorageAtReturnType = Hex | undefined;
|
382
|
-
declare function getStorageAt(client:
|
570
|
+
declare function getStorageAt<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { address, blockNumber, blockTag, slot }: GetStorageAtParameters): Promise<GetStorageAtReturnType>;
|
383
571
|
|
384
572
|
type GetTransactionParameters = {
|
385
573
|
/** The block hash */
|
@@ -415,7 +603,7 @@ type GetTransactionParameters = {
|
|
415
603
|
};
|
416
604
|
type GetTransactionReturnType<TChain extends Chain | undefined = Chain> = FormattedTransaction<TransactionFormatter<TChain>>;
|
417
605
|
/** @description Returns information about a transaction given a hash or block identifier. */
|
418
|
-
declare function getTransaction<TChain extends Chain | undefined>(client:
|
606
|
+
declare function getTransaction<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { blockHash, blockNumber, blockTag, hash, index, }: GetTransactionParameters): Promise<GetTransactionReturnType<TChain>>;
|
419
607
|
|
420
608
|
type GetTransactionConfirmationsParameters<TChain extends Chain | undefined = Chain> = {
|
421
609
|
/** The transaction hash. */
|
@@ -427,7 +615,7 @@ type GetTransactionConfirmationsParameters<TChain extends Chain | undefined = Ch
|
|
427
615
|
transactionReceipt: FormattedTransactionReceipt<TransactionReceiptFormatter<TChain>>;
|
428
616
|
};
|
429
617
|
type GetTransactionConfirmationsReturnType = bigint;
|
430
|
-
declare function getTransactionConfirmations<TChain extends Chain | undefined>(client:
|
618
|
+
declare function getTransactionConfirmations<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { hash, transactionReceipt }: GetTransactionConfirmationsParameters<TChain>): Promise<GetTransactionConfirmationsReturnType>;
|
431
619
|
|
432
620
|
type GetTransactionCountParameters = {
|
433
621
|
/** The account address. */
|
@@ -445,56 +633,14 @@ type GetTransactionCountReturnType = number;
|
|
445
633
|
/**
|
446
634
|
* @description Returns the number of transactions an account has broadcast / sent.
|
447
635
|
*/
|
448
|
-
declare function getTransactionCount(client:
|
636
|
+
declare function getTransactionCount<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: PublicClient<Transport, TChain> | WalletClient<Transport, TChain, TAccount>, { address, blockTag, blockNumber }: GetTransactionCountParameters): Promise<GetTransactionCountReturnType>;
|
449
637
|
|
450
638
|
type GetTransactionReceiptParameters = {
|
451
639
|
/** The hash of the transaction. */
|
452
640
|
hash: Hash;
|
453
641
|
};
|
454
|
-
type GetTransactionReceiptReturnType<TChain extends Chain | undefined = Chain> = FormattedTransactionReceipt<TransactionReceiptFormatter<TChain>>;
|
455
|
-
declare function getTransactionReceipt<TChain extends Chain | undefined>(client:
|
456
|
-
|
457
|
-
type MAXIMUM_DEPTH = 20;
|
458
|
-
type Contract<TAbi extends Abi | readonly unknown[] = Abi | readonly unknown[], TFunctionName extends string = string> = {
|
459
|
-
abi: TAbi;
|
460
|
-
functionName: TFunctionName;
|
461
|
-
};
|
462
|
-
type MulticallContracts<TContracts extends Contract[], TProperties extends Record<string, any> = object, Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? (ContractConfig & TProperties)[] : TContracts extends [] ? [] : TContracts extends [infer Head extends Contract] ? [
|
463
|
-
...Result,
|
464
|
-
ContractConfig<Head['abi'], Head['functionName']> & TProperties
|
465
|
-
] : TContracts extends [
|
466
|
-
infer Head extends Contract,
|
467
|
-
...infer Tail extends Contract[]
|
468
|
-
] ? MulticallContracts<[
|
469
|
-
...Tail
|
470
|
-
], TProperties, [
|
471
|
-
...Result,
|
472
|
-
ContractConfig<Head['abi'], Head['functionName']> & TProperties
|
473
|
-
], [
|
474
|
-
...Depth,
|
475
|
-
1
|
476
|
-
]> : unknown[] extends TContracts ? TContracts : TContracts extends ContractConfig<infer TAbi, infer TFunctionName>[] ? (ContractConfig<TAbi, TFunctionName> & TProperties)[] : (ContractConfig & TProperties)[];
|
477
|
-
type MulticallResult<Result, TAllowFailure extends boolean = true> = TAllowFailure extends true ? ({
|
478
|
-
error?: undefined;
|
479
|
-
result: Result;
|
480
|
-
status: 'success';
|
481
|
-
} | {
|
482
|
-
error: Error;
|
483
|
-
result?: undefined;
|
484
|
-
status: 'error';
|
485
|
-
}) : Result;
|
486
|
-
type MulticallResults<TContracts extends Contract[], TAllowFailure extends boolean = true, Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? MulticallResult<ExtractResultFromAbi, TAllowFailure>[] : TContracts extends [] ? [] : TContracts extends [infer Head extends Contract] ? [...Result, MulticallResult<ExtractResultFromAbi<Head['abi'], Head['functionName']>, TAllowFailure>] : TContracts extends [
|
487
|
-
infer Head extends Contract,
|
488
|
-
...infer Tail extends Contract[]
|
489
|
-
] ? MulticallResults<[
|
490
|
-
...Tail
|
491
|
-
], TAllowFailure, [
|
492
|
-
...Result,
|
493
|
-
MulticallResult<ExtractResultFromAbi<Head['abi'], Head['functionName']>, TAllowFailure>
|
494
|
-
], [
|
495
|
-
...Depth,
|
496
|
-
1
|
497
|
-
]> : TContracts extends ContractConfig<infer TAbi, infer TFunctionName>[] ? MulticallResult<ExtractResultFromAbi<TAbi, TFunctionName>, TAllowFailure>[] : MulticallResult<ExtractResultFromAbi, TAllowFailure>[];
|
642
|
+
type GetTransactionReceiptReturnType<TChain extends Chain | undefined = Chain | undefined> = FormattedTransactionReceipt<TransactionReceiptFormatter<TChain>>;
|
643
|
+
declare function getTransactionReceipt<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { hash }: GetTransactionReceiptParameters): Promise<Formatted<TransactionReceiptFormatter<TChain>, TransactionReceipt<bigint, number, "success" | "reverted", TransactionType>, false, false>>;
|
498
644
|
|
499
645
|
type MulticallParameters<TContracts extends ContractConfig[] = ContractConfig[], TAllowFailure extends boolean = true> = Pick<CallParameters, 'blockNumber' | 'blockTag'> & {
|
500
646
|
allowFailure?: TAllowFailure;
|
@@ -502,27 +648,27 @@ type MulticallParameters<TContracts extends ContractConfig[] = ContractConfig[],
|
|
502
648
|
multicallAddress?: Address;
|
503
649
|
};
|
504
650
|
type MulticallReturnType<TContracts extends ContractConfig[] = ContractConfig[], TAllowFailure extends boolean = true> = MulticallResults<TContracts, TAllowFailure>;
|
505
|
-
declare function multicall<TContracts extends ContractConfig[], TAllowFailure extends boolean = true>(client:
|
651
|
+
declare function multicall<TChain extends Chain | undefined, TContracts extends ContractConfig[], TAllowFailure extends boolean = true>(client: PublicClient<Transport, TChain>, args: MulticallParameters<TContracts, TAllowFailure>): Promise<MulticallReturnType<TContracts, TAllowFailure>>;
|
506
652
|
|
507
653
|
type ReadContractParameters<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string> = Pick<CallParameters, 'blockNumber' | 'blockTag'> & ContractConfig<TAbi, TFunctionName, 'view' | 'pure'>;
|
508
654
|
type ReadContractReturnType<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string> = ExtractResultFromAbi<TAbi, TFunctionName>;
|
509
|
-
declare function readContract<TAbi extends Abi | readonly unknown[], TFunctionName extends string>(client:
|
655
|
+
declare function readContract<TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string>(client: PublicClient<Transport, TChain>, { abi, address, args, functionName, ...callRequest }: ReadContractParameters<TAbi, TFunctionName>): Promise<ReadContractReturnType<TAbi, TFunctionName>>;
|
510
656
|
|
511
657
|
type UninstallFilterParameters = {
|
512
658
|
filter: Filter<any>;
|
513
659
|
};
|
514
660
|
type UninstallFilterReturnType = boolean;
|
515
|
-
declare function uninstallFilter(client:
|
661
|
+
declare function uninstallFilter<TTransport extends Transport, TChain extends Chain | undefined>(client: PublicClient<TTransport, TChain>, { filter }: UninstallFilterParameters): Promise<UninstallFilterReturnType>;
|
516
662
|
|
517
663
|
type ReplacementReason = 'cancelled' | 'replaced' | 'repriced';
|
518
|
-
type ReplacementReturnType<TChain extends Chain | undefined = Chain> = {
|
664
|
+
type ReplacementReturnType<TChain extends Chain | undefined = Chain | undefined> = {
|
519
665
|
reason: ReplacementReason;
|
520
666
|
replacedTransaction: Transaction;
|
521
667
|
transaction: Transaction;
|
522
668
|
transactionReceipt: GetTransactionReceiptReturnType<TChain>;
|
523
669
|
};
|
524
|
-
type WaitForTransactionReceiptReturnType<TChain extends Chain | undefined = Chain> = GetTransactionReceiptReturnType<TChain>;
|
525
|
-
type WaitForTransactionReceiptParameters<TChain extends Chain | undefined = Chain> = {
|
670
|
+
type WaitForTransactionReceiptReturnType<TChain extends Chain | undefined = Chain | undefined> = GetTransactionReceiptReturnType<TChain>;
|
671
|
+
type WaitForTransactionReceiptParameters<TChain extends Chain | undefined = Chain | undefined> = {
|
526
672
|
/** The number of confirmations (blocks that have passed) to wait before resolving. */
|
527
673
|
confirmations?: number;
|
528
674
|
/** The hash of the transaction. */
|
@@ -533,51 +679,75 @@ type WaitForTransactionReceiptParameters<TChain extends Chain | undefined = Chai
|
|
533
679
|
/** Optional timeout (in milliseconds) to wait before stopping polling. */
|
534
680
|
timeout?: number;
|
535
681
|
};
|
536
|
-
declare function waitForTransactionReceipt<TChain extends Chain | undefined>(client:
|
682
|
+
declare function waitForTransactionReceipt<TChain extends Chain | undefined>(client: PublicClient<Transport, TChain>, { confirmations, hash, onReplaced, pollingInterval, timeout, }: WaitForTransactionReceiptParameters<TChain>): Promise<WaitForTransactionReceiptReturnType<TChain>>;
|
537
683
|
|
538
684
|
type OnBlockNumberParameter = GetBlockNumberReturnType;
|
539
685
|
type OnBlockNumberFn = (blockNumber: OnBlockNumberParameter, prevBlockNumber: OnBlockNumberParameter | undefined) => void;
|
540
|
-
type
|
686
|
+
type PollOptions$2 = {
|
541
687
|
/** Whether or not to emit the missed block numbers to the callback. */
|
542
688
|
emitMissed?: boolean;
|
543
689
|
/** Whether or not to emit the latest block number to the callback when the subscription opens. */
|
544
690
|
emitOnBegin?: boolean;
|
691
|
+
/** Polling frequency (in ms). Defaults to Client's pollingInterval config. */
|
692
|
+
pollingInterval?: number;
|
693
|
+
};
|
694
|
+
type WatchBlockNumberParameters<TTransport extends Transport = Transport> = {
|
545
695
|
/** The callback to call when a new block number is received. */
|
546
696
|
onBlockNumber: OnBlockNumberFn;
|
547
697
|
/** The callback to call when an error occurred when trying to get for a new block. */
|
548
698
|
onError?: (error: Error) => void;
|
549
|
-
|
550
|
-
|
551
|
-
|
699
|
+
} & (GetTransportConfig<TTransport>['type'] extends 'webSocket' ? {
|
700
|
+
emitMissed?: never;
|
701
|
+
emitOnBegin?: never;
|
702
|
+
/** Whether or not the WebSocket Transport should poll the JSON-RPC, rather than using `eth_subscribe`. */
|
703
|
+
poll?: false;
|
704
|
+
pollingInterval?: never;
|
705
|
+
} | (PollOptions$2 & {
|
706
|
+
poll: true;
|
707
|
+
}) : PollOptions$2 & {
|
708
|
+
poll?: true;
|
709
|
+
});
|
710
|
+
type WatchBlockNumberReturnType = () => void;
|
552
711
|
/** @description Watches and returns incoming block numbers. */
|
553
|
-
declare function watchBlockNumber(client:
|
712
|
+
declare function watchBlockNumber<TChain extends Chain | undefined, TTransport extends Transport>(client: PublicClient<TTransport, TChain>, { emitOnBegin, emitMissed, onBlockNumber, onError, poll: poll_, pollingInterval, }: WatchBlockNumberParameters<TTransport>): WatchBlockNumberReturnType;
|
554
713
|
|
555
|
-
type OnBlockParameter<TChain extends Chain | undefined = Chain
|
556
|
-
type OnBlock<TChain extends Chain | undefined = Chain
|
557
|
-
type
|
714
|
+
type OnBlockParameter<TChain extends Chain | undefined = Chain> = GetBlockReturnType<TChain>;
|
715
|
+
type OnBlock<TChain extends Chain | undefined = Chain> = (block: OnBlockParameter<TChain>, prevBlock: OnBlockParameter<TChain> | undefined) => void;
|
716
|
+
type PollOptions$1 = {
|
558
717
|
/** The block tag. Defaults to "latest". */
|
559
718
|
blockTag?: BlockTag;
|
560
719
|
/** Whether or not to emit the missed blocks to the callback. */
|
561
720
|
emitMissed?: boolean;
|
562
721
|
/** Whether or not to emit the block to the callback when the subscription opens. */
|
563
722
|
emitOnBegin?: boolean;
|
564
|
-
/**
|
565
|
-
|
723
|
+
/** Whether or not to include transaction data in the response. */
|
724
|
+
includeTransactions?: boolean;
|
566
725
|
/** Polling frequency (in ms). Defaults to the client's pollingInterval config. */
|
567
726
|
pollingInterval?: number;
|
568
|
-
}
|
569
|
-
|
570
|
-
includeTransactions: true;
|
571
|
-
/** The callback to call when a new block is received. */
|
572
|
-
onBlock: OnBlock<TChain, true>;
|
573
|
-
} | {
|
574
|
-
/** Whether or not to include transaction data in the response. */
|
575
|
-
includeTransactions?: false;
|
727
|
+
};
|
728
|
+
type WatchBlocksParameters<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain> = {
|
576
729
|
/** The callback to call when a new block is received. */
|
577
730
|
onBlock: OnBlock<TChain>;
|
731
|
+
/** The callback to call when an error occurred when trying to get for a new block. */
|
732
|
+
onError?: (error: Error) => void;
|
733
|
+
} & (GetTransportConfig<TTransport>['type'] extends 'webSocket' ? {
|
734
|
+
blockTag?: never;
|
735
|
+
emitMissed?: never;
|
736
|
+
emitOnBegin?: never;
|
737
|
+
includeTransactions?: never;
|
738
|
+
/** Whether or not the WebSocket Transport should poll the JSON-RPC, rather than using `eth_subscribe`. */
|
739
|
+
poll?: false;
|
740
|
+
pollingInterval?: never;
|
741
|
+
} | (PollOptions$1 & {
|
742
|
+
poll: true;
|
743
|
+
}) : PollOptions$1 & {
|
744
|
+
poll?: true;
|
578
745
|
});
|
579
|
-
|
580
|
-
|
746
|
+
type WatchBlocksReturnType = () => void;
|
747
|
+
/**
|
748
|
+
* @description Watches and returns information for incoming blocks.
|
749
|
+
*/
|
750
|
+
declare function watchBlocks<TTransport extends Transport, TChain extends Chain | undefined>(client: PublicClient<TTransport, TChain>, { blockTag, emitMissed, emitOnBegin, onBlock, onError, includeTransactions, poll: poll_, pollingInterval, }: WatchBlocksParameters<TTransport, TChain>): WatchBlocksReturnType;
|
581
751
|
|
582
752
|
type OnLogsParameter$1<TAbi extends Abi | readonly unknown[] = readonly unknown[], TEventName extends string = string> = TAbi extends Abi ? Log<bigint, number, ExtractAbiEvent<TAbi, TEventName>>[] : Log[];
|
583
753
|
type OnLogsFn$1<TAbi extends Abi | readonly unknown[] = readonly unknown[], TEventName extends string = string> = (logs: OnLogsParameter$1<TAbi, TEventName>) => void;
|
@@ -598,7 +768,8 @@ type WatchContractEventParameters<TAbi extends Abi | readonly unknown[] = readon
|
|
598
768
|
/** Polling frequency (in ms). Defaults to Client's pollingInterval config. */
|
599
769
|
pollingInterval?: number;
|
600
770
|
};
|
601
|
-
|
771
|
+
type WatchContractEventReturnType = () => void;
|
772
|
+
declare function watchContractEvent<TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string>(client: PublicClient<Transport, TChain>, { abi, address, args, batch, eventName, onError, onLogs, pollingInterval, }: WatchContractEventParameters<TAbi, TEventName>): WatchContractEventReturnType;
|
602
773
|
|
603
774
|
type OnLogsParameter<TAbiEvent extends AbiEvent | undefined = undefined, TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = Log<bigint, number, TAbiEvent, [TAbiEvent], TEventName>[];
|
604
775
|
type OnLogsFn<TAbiEvent extends AbiEvent | undefined = undefined, TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>> = (logs: OnLogsParameter<TAbiEvent, TEventName>) => void;
|
@@ -620,169 +791,33 @@ type WatchEventParameters<TAbiEvent extends AbiEvent | undefined = undefined, TE
|
|
620
791
|
event?: never;
|
621
792
|
args?: never;
|
622
793
|
});
|
623
|
-
|
794
|
+
type WatchEventReturnType = () => void;
|
795
|
+
declare function watchEvent<TChain extends Chain | undefined, TAbiEvent extends AbiEvent | undefined, TEventName extends string | undefined>(client: PublicClient<Transport, TChain>, { address, args, batch, event, onError, onLogs, pollingInterval, }: WatchEventParameters<TAbiEvent>): WatchEventReturnType;
|
624
796
|
|
625
797
|
type OnTransactionsParameter = Hash[];
|
626
798
|
type OnTransactionsFn = (transactions: OnTransactionsParameter) => void;
|
627
|
-
type
|
799
|
+
type PollOptions = {
|
628
800
|
/** Whether or not the transaction hashes should be batched on each invocation. */
|
629
801
|
batch?: boolean;
|
802
|
+
/** Polling frequency (in ms). Defaults to Client's pollingInterval config. */
|
803
|
+
pollingInterval?: number;
|
804
|
+
};
|
805
|
+
type WatchPendingTransactionsParameters<TTransport extends Transport = Transport> = {
|
630
806
|
/** The callback to call when an error occurred when trying to get for a new block. */
|
631
807
|
onError?: (error: Error) => void;
|
632
808
|
/** The callback to call when new transactions are received. */
|
633
809
|
onTransactions: OnTransactionsFn;
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
}
|
644
|
-
|
645
|
-
|
646
|
-
eventName?: never;
|
647
|
-
} : TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> ? {
|
648
|
-
abi: TAbi;
|
649
|
-
args: TArgs;
|
650
|
-
eventName: TEventName;
|
651
|
-
} : {
|
652
|
-
abi: TAbi;
|
653
|
-
args?: never;
|
654
|
-
eventName: TEventName;
|
655
|
-
} : {
|
656
|
-
abi?: never;
|
657
|
-
args?: never;
|
658
|
-
eventName?: never;
|
659
|
-
} : {});
|
660
|
-
|
661
|
-
type GetEnsAddressParameters = Prettify<Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {
|
662
|
-
/** ENS name to get address. */
|
663
|
-
name: string;
|
664
|
-
/** Address of ENS Universal Resolver Contract */
|
665
|
-
universalResolverAddress?: Address;
|
666
|
-
}>;
|
667
|
-
type GetEnsAddressReturnType = Address;
|
668
|
-
/**
|
669
|
-
* @description Gets address for ENS name.
|
670
|
-
*
|
671
|
-
* - Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.
|
672
|
-
* - Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize.html) function for this.
|
673
|
-
*
|
674
|
-
* @example
|
675
|
-
* import { normalize } from 'viem/ens'
|
676
|
-
*
|
677
|
-
* const ensAddress = await getEnsAddress(publicClient, {
|
678
|
-
* name: normalize('wagmi-dev.eth'),
|
679
|
-
* })
|
680
|
-
* // '0xd2135CfB216b74109775236E36d4b433F1DF507B'
|
681
|
-
*/
|
682
|
-
declare function getEnsAddress(client: PublicClientArg, { blockNumber, blockTag, name, universalResolverAddress: universalResolverAddress_, }: GetEnsAddressParameters): Promise<GetEnsAddressReturnType>;
|
683
|
-
|
684
|
-
type GetEnsNameParameters = Prettify<Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {
|
685
|
-
/** Address to get ENS name for. */
|
686
|
-
address: Address;
|
687
|
-
/** Address of ENS Universal Resolver Contract. */
|
688
|
-
universalResolverAddress?: Address;
|
689
|
-
}>;
|
690
|
-
type GetEnsNameReturnType = string | null;
|
691
|
-
/**
|
692
|
-
* @description Gets primary name for specified address.
|
693
|
-
*
|
694
|
-
* - Calls `reverse(bytes)` on ENS Universal Resolver Contract.
|
695
|
-
*
|
696
|
-
* @example
|
697
|
-
* const ensName = await getEnsName(publicClient, {
|
698
|
-
* address: '0xd2135CfB216b74109775236E36d4b433F1DF507B',
|
699
|
-
* })
|
700
|
-
* // 'wagmi-dev.eth'
|
701
|
-
*/
|
702
|
-
declare function getEnsName(client: PublicClientArg, { address, blockNumber, blockTag, universalResolverAddress: universalResolverAddress_, }: GetEnsNameParameters): Promise<GetEnsNameReturnType>;
|
703
|
-
|
704
|
-
type PublicActions<TChain extends Chain | undefined = Chain> = {
|
705
|
-
call: (args: CallParameters<TChain>) => Promise<CallReturnType>;
|
706
|
-
createBlockFilter: () => Promise<CreateBlockFilterReturnType>;
|
707
|
-
createContractEventFilter: <TAbi extends Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined>(args: CreateContractEventFilterParameters<TAbi, TEventName, TArgs>) => Promise<CreateContractEventFilterReturnType<TAbi, TEventName, TArgs>>;
|
708
|
-
createEventFilter: <TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined>(args?: CreateEventFilterParameters<TAbiEvent, TAbi, TEventName, TArgs>) => Promise<CreateEventFilterReturnType<TAbiEvent, TAbi, TEventName, TArgs>>;
|
709
|
-
createPendingTransactionFilter: () => Promise<CreatePendingTransactionFilterReturnType>;
|
710
|
-
estimateContractGas: <TChain extends Chain | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string>(args: EstimateContractGasParameters<TChain, TAbi, TFunctionName>) => Promise<EstimateContractGasReturnType>;
|
711
|
-
estimateGas: (args: EstimateGasParameters<TChain>) => Promise<EstimateGasReturnType>;
|
712
|
-
getBalance: (args: GetBalanceParameters) => Promise<GetBalanceReturnType>;
|
713
|
-
getBlock: (args?: GetBlockParameters) => Promise<GetBlockReturnType<TChain>>;
|
714
|
-
getBlockNumber: (args?: GetBlockNumberParameters) => Promise<GetBlockNumberReturnType>;
|
715
|
-
getBlockTransactionCount: (args?: GetBlockTransactionCountParameters) => Promise<GetBlockTransactionCountReturnType>;
|
716
|
-
getBytecode: (args: GetBytecodeParameters) => Promise<GetBytecodeReturnType>;
|
717
|
-
getChainId: () => Promise<GetChainIdReturnType>;
|
718
|
-
getEnsAddress: (args: GetEnsAddressParameters) => Promise<GetEnsAddressReturnType>;
|
719
|
-
getEnsName: (args: GetEnsNameParameters) => Promise<GetEnsNameReturnType>;
|
720
|
-
getFeeHistory: (args: GetFeeHistoryParameters) => Promise<GetFeeHistoryReturnType>;
|
721
|
-
getFilterChanges: <TFilterType extends FilterType, TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(args: GetFilterChangesParameters<TFilterType, TAbiEvent, TAbi, TEventName>) => Promise<GetFilterChangesReturnType<TFilterType, TAbiEvent, TAbi, TEventName>>;
|
722
|
-
getFilterLogs: <TAbiEvent extends AbiEvent | undefined, TAbi extends Abi | readonly unknown[], TEventName extends string | undefined>(args: GetFilterLogsParameters<TAbiEvent, TAbi, TEventName>) => Promise<GetFilterLogsReturnType<TAbiEvent, TAbi, TEventName>>;
|
723
|
-
getGasPrice: () => Promise<GetGasPriceReturnType>;
|
724
|
-
getLogs: <TAbiEvent extends AbiEvent | undefined>(args?: GetLogsParameters<TAbiEvent>) => Promise<GetLogsReturnType<TAbiEvent>>;
|
725
|
-
getStorageAt: (args: GetStorageAtParameters) => Promise<GetStorageAtReturnType>;
|
726
|
-
getTransaction: (args: GetTransactionParameters) => Promise<GetTransactionReturnType<TChain>>;
|
727
|
-
getTransactionConfirmations: (args: GetTransactionConfirmationsParameters<TChain>) => Promise<GetTransactionConfirmationsReturnType>;
|
728
|
-
getTransactionCount: (args: GetTransactionCountParameters) => Promise<GetTransactionCountReturnType>;
|
729
|
-
getTransactionReceipt: (args: GetTransactionReceiptParameters) => Promise<GetTransactionReceiptReturnType<TChain>>;
|
730
|
-
multicall: <TContracts extends ContractConfig[], TAllowFailure extends boolean = true>(args: MulticallParameters<TContracts, TAllowFailure>) => Promise<MulticallReturnType<TContracts, TAllowFailure>>;
|
731
|
-
readContract: <TAbi extends Abi | readonly unknown[], TFunctionName extends string>(args: ReadContractParameters<TAbi, TFunctionName>) => Promise<ReadContractReturnType<TAbi, TFunctionName>>;
|
732
|
-
simulateContract: <TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = any, TChainOverride extends Chain | undefined = undefined>(args: SimulateContractParameters<TChain, TAbi, TFunctionName, TChainOverride>) => Promise<SimulateContractReturnType<TChain, TAbi, TFunctionName, TChainOverride>>;
|
733
|
-
uninstallFilter: (args: UninstallFilterParameters) => Promise<UninstallFilterReturnType>;
|
734
|
-
waitForTransactionReceipt: (args: WaitForTransactionReceiptParameters<TChain>) => Promise<WaitForTransactionReceiptReturnType<TChain>>;
|
735
|
-
watchBlockNumber: (args: WatchBlockNumberParameters) => ReturnType<typeof watchBlockNumber>;
|
736
|
-
watchBlocks: (args: WatchBlocksParameters<TChain>) => ReturnType<typeof watchBlocks>;
|
737
|
-
watchContractEvent: <TAbi extends Abi | readonly unknown[], TEventName extends string>(args: WatchContractEventParameters<TAbi, TEventName>) => ReturnType<typeof watchContractEvent>;
|
738
|
-
watchEvent: <TAbiEvent extends AbiEvent | undefined, TEventName extends string | undefined>(args: WatchEventParameters<TAbiEvent>) => ReturnType<typeof watchEvent>;
|
739
|
-
watchPendingTransactions: (args: WatchPendingTransactionsParameters) => ReturnType<typeof watchPendingTransactions>;
|
740
|
-
};
|
741
|
-
|
742
|
-
type WalletClientConfig<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain, TAccount extends Account | Address | undefined = undefined> = {
|
743
|
-
account?: TAccount;
|
744
|
-
chain?: TChain;
|
745
|
-
/** The key of the Wallet Client. */
|
746
|
-
key?: ClientConfig['key'];
|
747
|
-
/** The name of the Wallet Client. */
|
748
|
-
name?: ClientConfig['name'];
|
749
|
-
/** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */
|
750
|
-
pollingInterval?: ClientConfig['pollingInterval'];
|
751
|
-
transport: ClientConfig<TTransport, TChain>['transport'];
|
752
|
-
};
|
753
|
-
type WalletClient<TTransport extends Transport = Transport, TChain extends Chain | undefined = undefined, TAccount extends Account | undefined = undefined, TIncludeActions extends boolean = true> = Client<TTransport, TChain> & {
|
754
|
-
account: TAccount;
|
755
|
-
} & (TIncludeActions extends true ? WalletActions<TChain, TAccount> : {});
|
756
|
-
type WalletClientArg<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TIncludeActions extends boolean = boolean> = WalletClient<TTransport, TChain, TAccount, TIncludeActions>;
|
757
|
-
/**
|
758
|
-
* @description Creates a wallet client with a given transport.
|
759
|
-
*/
|
760
|
-
declare function createWalletClient<TTransport extends Transport, TChain extends Chain | undefined = undefined, TAccountOrAddress extends Account | Address | undefined = undefined, TAccount extends Account | undefined = ParseAccount<TAccountOrAddress>>({ account, chain, transport, key, name, pollingInterval, }: WalletClientConfig<TTransport, TChain, TAccountOrAddress>): WalletClient<TTransport, TChain, TAccount, true>;
|
761
|
-
|
762
|
-
type WalletActions<TChain extends Chain | undefined = Chain, TAccount extends Account | undefined = undefined> = {
|
763
|
-
addChain: (args: AddChainParameters) => Promise<void>;
|
764
|
-
deployContract: <TAbi extends Abi | readonly unknown[], TChainOverride extends Chain | undefined>(args: DeployContractParameters<TChain, TAbi, TAccount, TChainOverride>) => Promise<DeployContractReturnType>;
|
765
|
-
getAddresses: () => Promise<GetAddressesReturnType>;
|
766
|
-
getChainId: () => Promise<GetChainIdReturnType>;
|
767
|
-
getPermissions: () => Promise<GetPermissionsReturnType>;
|
768
|
-
requestAddresses: () => Promise<RequestAddressesReturnType>;
|
769
|
-
requestPermissions: (args: RequestPermissionsParameters) => Promise<RequestPermissionsReturnType>;
|
770
|
-
sendTransaction: <TChainOverride extends Chain | undefined>(args: SendTransactionParameters<TChain, TAccount, TChainOverride>) => Promise<SendTransactionReturnType>;
|
771
|
-
signMessage: (args: SignMessageParameters<TAccount>) => Promise<SignMessageReturnType>;
|
772
|
-
signTypedData: <TTypedData extends TypedData | {
|
773
|
-
[key: string]: unknown;
|
774
|
-
}, TPrimaryType extends string = string>(args: SignTypedDataParameters<TTypedData, TPrimaryType, TAccount>) => Promise<SignTypedDataReturnType>;
|
775
|
-
switchChain: (args: SwitchChainParameters) => Promise<void>;
|
776
|
-
watchAsset: (args: WatchAssetParameters) => Promise<WatchAssetReturnType>;
|
777
|
-
writeContract: <TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChainOverride extends Chain | undefined>(args: WriteContractParameters<TChainOverride, TAbi, TFunctionName, TAccount, TChainOverride>) => Promise<WriteContractReturnType>;
|
778
|
-
};
|
779
|
-
|
780
|
-
type PublicClientConfig<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain> = Pick<ClientConfig<TTransport, TChain>, 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>;
|
781
|
-
type PublicClient<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain, TIncludeActions extends boolean = true> = Client<TTransport, TChain, PublicRequests> & (TIncludeActions extends true ? PublicActions<TChain> : {});
|
782
|
-
type PublicClientArg<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TIncludeActions extends boolean = boolean> = PublicClient<TTransport, TChain, TIncludeActions>;
|
783
|
-
/**
|
784
|
-
* @description Creates a public client with a given transport.
|
785
|
-
*/
|
786
|
-
declare function createPublicClient<TTransport extends Transport, TChain extends Chain | undefined>({ chain, key, name, transport, pollingInterval, }: PublicClientConfig<TTransport, TChain>): PublicClient<TTransport, TChain, true>;
|
810
|
+
} & (GetTransportConfig<TTransport>['type'] extends 'webSocket' ? {
|
811
|
+
batch?: never;
|
812
|
+
/** Whether or not the WebSocket Transport should poll the JSON-RPC, rather than using `eth_subscribe`. */
|
813
|
+
poll?: false;
|
814
|
+
pollingInterval?: never;
|
815
|
+
} | (PollOptions & {
|
816
|
+
poll: true;
|
817
|
+
}) : PollOptions & {
|
818
|
+
poll?: true;
|
819
|
+
});
|
820
|
+
type WatchPendingTransactionsReturnType = () => void;
|
821
|
+
declare function watchPendingTransactions<TTransport extends Transport, TChain extends Chain | undefined>(client: PublicClient<TTransport, TChain>, { batch, onError, onTransactions, poll: poll_, pollingInterval, }: WatchPendingTransactionsParameters<TTransport>): () => void;
|
787
822
|
|
788
|
-
export {
|
823
|
+
export { ReadContractParameters as $, AddChainParameters as A, GetLogsParameters as B, CallParameters as C, DeployContractParameters as D, EstimateGasParameters as E, GetLogsReturnType as F, GetAddressesReturnType as G, GetPermissionsReturnType as H, GetStorageAtParameters as I, GetStorageAtReturnType as J, GetTransactionConfirmationsParameters as K, GetTransactionCountParameters as L, GetTransactionConfirmationsReturnType as M, GetTransactionCountReturnType as N, GetTransactionParameters as O, GetTransactionReceiptParameters as P, GetTransactionReceiptReturnType as Q, GetTransactionReturnType as R, MulticallParameters as S, OnBlock as T, OnBlockNumberFn as U, OnBlockNumberParameter as V, OnBlockParameter as W, OnLogsFn as X, OnLogsParameter as Y, OnTransactionsFn as Z, OnTransactionsParameter as _, CallReturnType as a, GetEnsAddressParameters as a$, ReadContractReturnType as a0, ReplacementReason as a1, ReplacementReturnType as a2, RequestAddressesReturnType as a3, RequestPermissionsReturnType as a4, SendTransactionParameters as a5, SendTransactionReturnType as a6, SignMessageParameters as a7, SignMessageReturnType as a8, SimulateContractParameters as a9, GetTransportConfig as aA, ParseAccount as aB, BlockFormatter as aC, FormattedBlock as aD, FormattedTransactionReceipt as aE, FormattedTransactionRequest$1 as aF, TransactionReceiptFormatter as aG, TransactionRequestFormatter as aH, defineBlock as aI, defineTransactionReceipt as aJ, defineTransactionRequest as aK, formatBlock as aL, formatTransactionRequest as aM, GetAccountParameter as aN, EstimateContractGasParameters as aO, EstimateContractGasReturnType as aP, MulticallReturnType as aQ, createContractEventFilter as aR, estimateContractGas as aS, getBytecode as aT, getStorageAt as aU, multicall as aV, readContract as aW, simulateContract as aX, watchContractEvent as aY, deployContract as aZ, writeContract as a_, SimulateContractReturnType as aa, SwitchChainParameters as ab, UninstallFilterParameters as ac, UninstallFilterReturnType as ad, WaitForTransactionReceiptParameters as ae, WaitForTransactionReceiptReturnType as af, WatchAssetParameters as ag, WatchAssetReturnType as ah, WatchBlockNumberParameters as ai, WatchBlockNumberReturnType as aj, WatchBlocksParameters as ak, WatchBlocksReturnType as al, WatchContractEventParameters as am, WatchContractEventReturnType as an, WatchEventParameters as ao, WatchEventReturnType as ap, WatchPendingTransactionsParameters as aq, WatchPendingTransactionsReturnType as ar, WriteContractParameters as as, WriteContractReturnType as at, PublicClient as au, PublicClientConfig as av, WalletClient as aw, WalletClientConfig as ax, createPublicClient as ay, createWalletClient as az, CreateBlockFilterReturnType as b, GetEnsNameParameters as b0, getEnsAddress as b1, getEnsName as b2, call as b3, createBlockFilter as b4, createEventFilter as b5, createPendingTransactionFilter as b6, estimateGas as b7, getBalance as b8, getBlock as b9, signTypedData as bA, switchChain as bB, watchAsset as bC, FormattedTransactionRequest as bD, SignTypedDataParameters as bE, SignTypedDataReturnType as bF, getBlockNumber as ba, getBlockNumberCache as bb, getBlockTransactionCount as bc, getChainId as bd, getFeeHistory as be, getFilterChanges as bf, getFilterLogs as bg, getLogs as bh, getGasPrice as bi, getTransaction as bj, getTransactionConfirmations as bk, getTransactionCount as bl, getTransactionReceipt as bm, uninstallFilter as bn, waitForTransactionReceipt as bo, watchBlockNumber as bp, watchBlocks as bq, watchEvent as br, watchPendingTransactions as bs, addChain as bt, getAddresses as bu, getPermissions as bv, requestAddresses as bw, requestPermissions as bx, sendTransaction as by, signMessage as bz, CreateContractEventFilterParameters as c, CreateContractEventFilterReturnType as d, CreateEventFilterParameters as e, CreateEventFilterReturnType as f, CreatePendingTransactionFilterReturnType as g, DeployContractReturnType as h, EstimateGasReturnType as i, GetBalanceParameters as j, GetBalanceReturnType as k, GetBlockNumberParameters as l, GetBlockNumberReturnType as m, GetBlockParameters as n, GetBlockReturnType as o, GetBlockTransactionCountParameters as p, GetBlockTransactionCountReturnType as q, GetBytecodeParameters as r, GetBytecodeReturnType as s, GetFeeHistoryParameters as t, GetFeeHistoryReturnType as u, GetFilterChangesParameters as v, GetFilterChangesReturnType as w, GetFilterLogsParameters as x, GetFilterLogsReturnType as y, GetGasPriceReturnType as z };
|