Parameters
- publicClient: {
extend: <
const client extends
{
account?: undefined;
batch?: undefined;
cacheTime?: undefined;
ccipRead?: undefined;
chain?: undefined;
key?: undefined;
name?: undefined;
pollingInterval?: undefined;
request?: undefined;
transport?: undefined;
type?: undefined;
uid?: undefined;
[key: string]: unknown;
} & ExactPartial<
ExtendableProtectedActions<Transport, undefined | Chain, undefined>,
>,
>(
fn: (
client: Client<
Transport,
undefined
| Chain,
undefined,
PublicRpcSchema,
PublicActions<Transport, undefined | Chain>,
>,
) => client,
) => Client<
Transport,
undefined
| Chain,
undefined,
PublicRpcSchema,
{ [K in string | number | symbol]: client[K] } & PublicActions<
Transport,
undefined
| Chain,
>,
>;
account: undefined;
batch?: { multicall?: boolean | { batchSize?: number; wait?: number } };
cacheTime: number;
ccipRead?:
| false
| {
request?: (
parameters: CcipRequestParameters,
) => Promise<`0x${string}`>;
};
chain: undefined
| Chain;
key: string;
name: string;
pollingInterval: number;
request: EIP1193RequestFn<PublicRpcSchema>;
transport: TransportConfig<string, EIP1193RequestFn> & Record<string, any>;
type: string;
uid: string;
call: (
parameters: CallParameters<undefined | Chain>,
) => Promise<CallReturnType>;
createAccessList: (
parameters: CreateAccessListParameters<undefined | Chain>,
) => Promise<{ accessList: AccessList; gasUsed: bigint }>;
createBlockFilter: () => Promise<
{
id: `0x${string}`;
request: EIP1193RequestFn<
readonly [
{
Method: "eth_getFilterChanges";
Parameters: [filterId: `0x${string}`];
ReturnType: `0x${string}`[] | RpcLog[];
},
{
Method: "eth_getFilterLogs";
Parameters: [filterId: `0x${string}`];
ReturnType: RpcLog[];
},
{
Method: "eth_uninstallFilter";
Parameters: [filterId: `0x${string}`];
ReturnType: boolean;
},
],
>;
type: "block";
},
>;
createContractEventFilter: <
const abi extends Abi
| readonly unknown[],
eventName extends undefined | string,
args extends undefined | Record<string, unknown> | readonly unknown[],
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: CreateContractEventFilterParameters<
abi,
eventName,
args,
strict,
fromBlock,
toBlock,
>,
) => Promise<
CreateContractEventFilterReturnType<
abi,
eventName,
args,
strict,
fromBlock,
toBlock,
>,
>;
createEventFilter: <
const abiEvent extends undefined
| AbiEvent = undefined,
const abiEvents extends
undefined | readonly unknown[] | readonly AbiEvent[] = abiEvent extends AbiEvent
? [abiEvent<abiEvent>]
: undefined,
strict extends undefined
| boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
_EventName extends undefined | string = MaybeAbiEventName<abiEvent>,
_Args extends
undefined | Record<string, unknown> | readonly unknown[] = undefined,
>(
args?: CreateEventFilterParameters<
abiEvent,
abiEvents,
strict,
fromBlock,
toBlock,
_EventName,
_Args,
>,
) => Promise<
{
[K in string
| number
| symbol]: Filter<
"event",
abiEvents,
_EventName,
_Args,
strict,
fromBlock,
toBlock,
>[K]
},
>;
createPendingTransactionFilter: () => Promise<
{
id: `0x${string}`;
request: EIP1193RequestFn<
readonly [
{
Method: "eth_getFilterChanges";
Parameters: [filterId: `0x${string}`];
ReturnType: `0x${string}`[] | RpcLog[];
},
{
Method: "eth_getFilterLogs";
Parameters: [filterId: `0x${string}`];
ReturnType: RpcLog[];
},
{
Method: "eth_uninstallFilter";
Parameters: [filterId: `0x${string}`];
ReturnType: boolean;
},
],
>;
type: "transaction";
},
>;
estimateContractGas: <
chain extends undefined
| Chain,
const abi extends Abi | readonly unknown[],
functionName extends string,
args extends unknown,
>(
args: EstimateContractGasParameters<abi, functionName, args, chain>,
) => Promise<bigint>;
estimateGas: (
args: EstimateGasParameters<undefined | Chain>,
) => Promise<bigint>;
getBalance: (args: GetBalanceParameters) => Promise<bigint>;
getBlobBaseFee: () => Promise<bigint>;
getBlock: <
includeTransactions extends boolean = false,
blockTag extends BlockTag = "latest",
>(
args?: GetBlockParameters<includeTransactions, blockTag>,
) => Promise<
{
baseFeePerGas: null
| bigint;
blobGasUsed: bigint;
difficulty: bigint;
excessBlobGas: bigint;
extraData: `0x${string}`;
gasLimit: bigint;
gasUsed: bigint;
hash: blockTag extends "pending" ? null : `0x${string}`;
logsBloom: blockTag extends "pending" ? null : `0x${string}`;
miner: `0x${string}`;
mixHash: `0x${string}`;
nonce: blockTag extends "pending" ? null : `0x${string}`;
number: blockTag extends "pending" ? null : bigint;
parentBeaconBlockRoot?: `0x${string}`;
parentHash: `0x${string}`;
receiptsRoot: `0x${string}`;
sealFields: `0x${string}`[];
sha3Uncles: `0x${string}`;
size: bigint;
stateRoot: `0x${string}`;
timestamp: bigint;
totalDifficulty: null | bigint;
transactionsRoot: `0x${string}`;
uncles: `0x${string}`[];
withdrawals?: Withdrawal[];
withdrawalsRoot?: `0x${string}`;
transactions: includeTransactions extends true
? (
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
accessList?: undefined;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId?: number;
yParity?: undefined;
type: "legacy";
}
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip2930";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip1559";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas: bigint;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes: readonly `0x${string}`[];
chainId: number;
type: "eip4844";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList: SignedAuthorizationList;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip7702";
}
)[]
: `0x${string}`[];
},
>;
getBlockNumber: (args?: GetBlockNumberParameters) => Promise<bigint>;
getBlockTransactionCount: (
args?: GetBlockTransactionCountParameters,
) => Promise<number>;
getBytecode: (args: GetCodeParameters) => Promise<GetCodeReturnType>;
getChainId: () => Promise<number>;
getCode: (args: GetCodeParameters) => Promise<GetCodeReturnType>;
getContractEvents: <
const abi extends Abi
| readonly unknown[],
eventName extends undefined | string = undefined,
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: GetContractEventsParameters<
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetContractEventsReturnType<abi, eventName, strict, fromBlock, toBlock>,
>;
getEip712Domain: (
args: GetEip712DomainParameters,
) => Promise<GetEip712DomainReturnType>;
getEnsAddress: (
args: {
coinType?: number;
gatewayUrls?: string[];
name: string;
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsAddressReturnType>;
getEnsAvatar: (
args: {
assetGatewayUrls?: AssetGatewayUrls;
name: string;
gatewayUrls?: string[];
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsAvatarReturnType>;
getEnsName: (
args: {
address: `0x${string}`;
gatewayUrls?: string[];
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsNameReturnType>;
getEnsResolver: (
args: {
name: string;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<`0x${string}`>;
getEnsText: (
args: {
name: string;
gatewayUrls?: string[];
key: string;
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsTextReturnType>;
getFeeHistory: (
args: GetFeeHistoryParameters,
) => Promise<GetFeeHistoryReturnType>;
estimateFeesPerGas: <
chainOverride extends undefined
| Chain = undefined,
type extends FeeValuesType = "eip1559",
>(
args?: EstimateFeesPerGasParameters<
undefined
| Chain,
chainOverride,
type,
>,
) => Promise<EstimateFeesPerGasReturnType<type>>;
getFilterChanges: <
filterType extends FilterType,
const abi extends undefined | Abi | readonly unknown[],
eventName extends undefined | string,
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: GetFilterChangesParameters<
filterType,
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetFilterChangesReturnType<
filterType,
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
>;
getFilterLogs: <
const abi extends undefined
| Abi
| readonly unknown[],
eventName extends undefined | string,
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: GetFilterLogsParameters<
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetFilterLogsReturnType<abi, eventName, strict, fromBlock, toBlock>,
>;
getGasPrice: () => Promise<bigint>;
getLogs: <
const abiEvent extends undefined
| AbiEvent = undefined,
const abiEvents extends
undefined | readonly unknown[] | readonly AbiEvent[] = abiEvent extends AbiEvent
? [abiEvent<abiEvent>]
: undefined,
strict extends undefined
| boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args?: GetLogsParameters<
abiEvent,
abiEvents,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetLogsReturnType<abiEvent, abiEvents, strict, fromBlock, toBlock>,
>;
getProof: (args: GetProofParameters) => Promise<GetProofReturnType>;
estimateMaxPriorityFeePerGas: <
chainOverride extends undefined
| Chain = undefined,
>(
args?: { chain: null | chainOverride },
) => Promise<bigint>;
getStorageAt: (
args: GetStorageAtParameters,
) => Promise<GetStorageAtReturnType>;
getTransaction: <blockTag extends BlockTag = "latest">(
args: GetTransactionParameters<blockTag>,
) => Promise<
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
accessList?: undefined;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId?: number;
yParity?: undefined;
type: "legacy";
}
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip2930";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip1559";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas: bigint;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes: readonly `0x${string}`[];
chainId: number;
type: "eip4844";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList: SignedAuthorizationList;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip7702";
},
>;
getTransactionConfirmations: (
args: GetTransactionConfirmationsParameters<undefined | Chain>,
) => Promise<bigint>;
getTransactionCount: (
args: GetTransactionCountParameters,
) => Promise<number>;
getTransactionReceipt: (
args: GetTransactionReceiptParameters,
) => Promise<TransactionReceipt>;
multicall: <
const contracts extends readonly unknown[],
allowFailure extends boolean = true,
>(
args: MulticallParameters<contracts, allowFailure>,
) => Promise<MulticallReturnType<contracts, allowFailure>>;
prepareTransactionRequest: <
const request extends
(
| Omit<
{
accessList?: undefined;
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
authorizationList?: undefined;
gasPrice?: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "legacy";
value?: bigint;
},
"from",
>
| Omit<
{
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
authorizationList?: undefined;
gasPrice?: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "eip2930";
value?: bigint;
accessList?: AccessList;
},
"from",
>
| Omit<
{
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
authorizationList?: undefined;
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: bigint;
maxPriorityFeePerGas?: bigint;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "eip1559";
value?: bigint;
accessList?: AccessList;
},
"from",
>
| Omit<
{
authorizationList?: undefined;
gasPrice?: undefined;
maxFeePerBlobGas: bigint;
maxFeePerGas?: bigint;
maxPriorityFeePerGas?: bigint;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to: null
| `0x${string}`;
type?: "eip4844";
value?: bigint;
accessList?: AccessList;
blobs: readonly `0x${string}`[] | readonly ByteArray[];
blobVersionedHashes?: readonly `0x${string}`[];
kzg?: Kzg;
sidecars?: readonly BlobSidecar<`0x${string}`>[];
},
"from",
>
| Omit<
{
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: bigint;
maxPriorityFeePerGas?: bigint;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "eip7702";
value?: bigint;
accessList?: AccessList;
authorizationList?: AuthorizationList<number, boolean>;
},
"from",
>
) & { kzg?: Kzg } & {
nonceManager?: NonceManager;
parameters?: readonly PrepareTransactionRequestParameterType[];
},
chainOverride extends undefined
| Chain = undefined,
accountOverride extends undefined | `0x${string}` | Account = undefined,
>(
args: PrepareTransactionRequestParameters<
undefined
| Chain,
undefined | Account,
chainOverride,
accountOverride,
request,
>,
) => 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]
: | "type"
| "gas"
| "nonce"
| "blobVersionedHashes"
| "fees"
| "chainId",
>,
> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">)
)[K]
},
>;
readContract: <
const abi extends Abi
| readonly unknown[],
functionName extends string,
const args extends unknown,
>(
args: ReadContractParameters<abi, functionName, args>,
) => Promise<ReadContractReturnType<abi, functionName, args>>;
sendRawTransaction: (
args: SendRawTransactionParameters,
) => Promise<`0x${string}`>;
simulate: <const calls extends readonly unknown[]>(
args: SimulateParameters<calls>,
) => Promise<SimulateReturnType<calls>>;
simulateContract: <
const abi extends Abi
| readonly unknown[],
functionName extends string,
const args extends unknown,
chainOverride extends undefined | Chain,
accountOverride extends undefined | `0x${string}` | Account = undefined,
>(
args: SimulateContractParameters<
abi,
functionName,
args,
undefined
| Chain,
chainOverride,
accountOverride,
>,
) => Promise<
SimulateContractReturnType<
abi,
functionName,
args,
undefined
| Chain,
undefined | Account,
chainOverride,
accountOverride,
>,
>;
verifyMessage: (
args: {
blockNumber?: bigint;
blockTag?: BlockTag;
address: `0x${string}`;
signature: `0x${string}` | ByteArray | Signature;
universalSignatureVerifierAddress?: `0x${string}`;
factory?: `0x${string}`;
factoryData?: `0x${string}`;
message: SignableMessage;
},
) => Promise<boolean>;
verifySiweMessage: (
args: {
blockNumber?: bigint;
blockTag?: BlockTag;
message: string;
signature: `0x${string}`;
address?: `0x${string}`;
domain?: string;
nonce?: string;
scheme?: string;
time?: Date;
},
) => Promise<boolean>;
verifyTypedData: (args: VerifyTypedDataParameters) => Promise<boolean>;
uninstallFilter: (args: UninstallFilterParameters) => Promise<boolean>;
waitForTransactionReceipt: (
args: WaitForTransactionReceiptParameters<undefined | Chain>,
) => Promise<TransactionReceipt>;
watchBlockNumber: (
args: WatchBlockNumberParameters,
) => WatchBlockNumberReturnType;
watchBlocks: <
includeTransactions extends boolean = false,
blockTag extends BlockTag = "latest",
>(
args: WatchBlocksParameters<
Transport,
undefined
| Chain,
includeTransactions,
blockTag,
>,
) => WatchBlocksReturnType;
watchContractEvent: <
const abi extends Abi
| readonly unknown[],
eventName extends string,
strict extends undefined | boolean = undefined,
>(
args: WatchContractEventParameters<abi, eventName, strict, Transport>,
) => WatchContractEventReturnType;
watchEvent: <
const abiEvent extends undefined
| AbiEvent = undefined,
const abiEvents extends
undefined | readonly unknown[] | readonly AbiEvent[] = abiEvent extends AbiEvent
? [abiEvent<abiEvent>]
: undefined,
strict extends undefined
| boolean = undefined,
>(
args: WatchEventParameters<abiEvent, abiEvents, strict, Transport>,
) => WatchEventReturnType;
watchPendingTransactions: (
args: WatchPendingTransactionsParameters<Transport>,
) => WatchPendingTransactionsReturnType;
}extend: <
const client extends
{
account?: undefined;
batch?: undefined;
cacheTime?: undefined;
ccipRead?: undefined;
chain?: undefined;
key?: undefined;
name?: undefined;
pollingInterval?: undefined;
request?: undefined;
transport?: undefined;
type?: undefined;
uid?: undefined;
[key: string]: unknown;
} & ExactPartial<
ExtendableProtectedActions<Transport, undefined | Chain, undefined>,
>,
>(
fn: (
client: Client<
Transport,
undefined
| Chain,
undefined,
PublicRpcSchema,
PublicActions<Transport, undefined | Chain>,
>,
) => client,
) => Client<
Transport,
undefined
| Chain,
undefined,
PublicRpcSchema,
{ [K in string | number | symbol]: client[K] } & PublicActions<
Transport,
undefined
| Chain,
>,
>
account: undefined
Optional
batch?: { multicall?: boolean | { batchSize?: number; wait?: number } }
Optional
multicall?: boolean | { batchSize?: number; wait?: number }
cacheTime: number
Optional
ccipRead?:
| false
| {
request?: (parameters: CcipRequestParameters) => Promise<`0x${string}`>;
}
chain: undefined | Chain
key: string
name: string
pollingInterval: number
request: EIP1193RequestFn<PublicRpcSchema>
transport: TransportConfig<string, EIP1193RequestFn> & Record<string, any>
type: string
uid: string
call: (parameters: CallParameters<undefined | Chain>) => Promise<CallReturnType>
createAccessList: (
parameters: CreateAccessListParameters<undefined | Chain>,
) => Promise<{ accessList: AccessList; gasUsed: bigint }>
createBlockFilter: () => Promise<
{
id: `0x${string}`;
request: EIP1193RequestFn<
readonly [
{
Method: "eth_getFilterChanges";
Parameters: [filterId: `0x${string}`];
ReturnType: `0x${string}`[] | RpcLog[];
},
{
Method: "eth_getFilterLogs";
Parameters: [filterId: `0x${string}`];
ReturnType: RpcLog[];
},
{
Method: "eth_uninstallFilter";
Parameters: [filterId: `0x${string}`];
ReturnType: boolean;
},
],
>;
type: "block";
},
>
createContractEventFilter: <
const abi extends Abi
| readonly unknown[],
eventName extends undefined | string,
args extends undefined | Record<string, unknown> | readonly unknown[],
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: CreateContractEventFilterParameters<
abi,
eventName,
args,
strict,
fromBlock,
toBlock,
>,
) => Promise<
CreateContractEventFilterReturnType<
abi,
eventName,
args,
strict,
fromBlock,
toBlock,
>,
>
createEventFilter: <
const abiEvent extends undefined
| AbiEvent = undefined,
const abiEvents extends
undefined | readonly unknown[] | readonly AbiEvent[] = abiEvent extends AbiEvent
? [abiEvent<abiEvent>]
: undefined,
strict extends undefined
| boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
_EventName extends undefined | string = MaybeAbiEventName<abiEvent>,
_Args extends
undefined | Record<string, unknown> | readonly unknown[] = undefined,
>(
args?: CreateEventFilterParameters<
abiEvent,
abiEvents,
strict,
fromBlock,
toBlock,
_EventName,
_Args,
>,
) => Promise<
{
[K in string
| number
| symbol]: Filter<
"event",
abiEvents,
_EventName,
_Args,
strict,
fromBlock,
toBlock,
>[K]
},
>
createPendingTransactionFilter: () => Promise<
{
id: `0x${string}`;
request: EIP1193RequestFn<
readonly [
{
Method: "eth_getFilterChanges";
Parameters: [filterId: `0x${string}`];
ReturnType: `0x${string}`[] | RpcLog[];
},
{
Method: "eth_getFilterLogs";
Parameters: [filterId: `0x${string}`];
ReturnType: RpcLog[];
},
{
Method: "eth_uninstallFilter";
Parameters: [filterId: `0x${string}`];
ReturnType: boolean;
},
],
>;
type: "transaction";
},
>
estimateContractGas: <
chain extends undefined
| Chain,
const abi extends Abi | readonly unknown[],
functionName extends string,
args extends unknown,
>(
args: EstimateContractGasParameters<abi, functionName, args, chain>,
) => Promise<bigint>
estimateGas: (args: EstimateGasParameters<undefined | Chain>) => Promise<bigint>
getBalance: (args: GetBalanceParameters) => Promise<bigint>
getBlobBaseFee: () => Promise<bigint>
getBlock: <
includeTransactions extends boolean = false,
blockTag extends BlockTag = "latest",
>(
args?: GetBlockParameters<includeTransactions, blockTag>,
) => Promise<
{
baseFeePerGas: null
| bigint;
blobGasUsed: bigint;
difficulty: bigint;
excessBlobGas: bigint;
extraData: `0x${string}`;
gasLimit: bigint;
gasUsed: bigint;
hash: blockTag extends "pending" ? null : `0x${string}`;
logsBloom: blockTag extends "pending" ? null : `0x${string}`;
miner: `0x${string}`;
mixHash: `0x${string}`;
nonce: blockTag extends "pending" ? null : `0x${string}`;
number: blockTag extends "pending" ? null : bigint;
parentBeaconBlockRoot?: `0x${string}`;
parentHash: `0x${string}`;
receiptsRoot: `0x${string}`;
sealFields: `0x${string}`[];
sha3Uncles: `0x${string}`;
size: bigint;
stateRoot: `0x${string}`;
timestamp: bigint;
totalDifficulty: null | bigint;
transactionsRoot: `0x${string}`;
uncles: `0x${string}`[];
withdrawals?: Withdrawal[];
withdrawalsRoot?: `0x${string}`;
transactions: includeTransactions extends true
? (
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
accessList?: undefined;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId?: number;
yParity?: undefined;
type: "legacy";
}
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip2930";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip1559";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas: bigint;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes: readonly `0x${string}`[];
chainId: number;
type: "eip4844";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList: SignedAuthorizationList;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip7702";
}
)[]
: `0x${string}`[];
},
>
getBlockNumber: (args?: GetBlockNumberParameters) => Promise<bigint>
getBlockTransactionCount: (args?: GetBlockTransactionCountParameters) => Promise<number>
getBytecode: (args: GetCodeParameters) => Promise<GetCodeReturnType>
getChainId: () => Promise<number>
getCode: (args: GetCodeParameters) => Promise<GetCodeReturnType>
getContractEvents: <
const abi extends Abi
| readonly unknown[],
eventName extends undefined | string = undefined,
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: GetContractEventsParameters<
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetContractEventsReturnType<abi, eventName, strict, fromBlock, toBlock>,
>
getEip712Domain: (args: GetEip712DomainParameters) => Promise<GetEip712DomainReturnType>
getEnsAddress: (
args: {
coinType?: number;
gatewayUrls?: string[];
name: string;
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsAddressReturnType>
getEnsAvatar: (
args: {
assetGatewayUrls?: AssetGatewayUrls;
name: string;
gatewayUrls?: string[];
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsAvatarReturnType>
getEnsName: (
args: {
address: `0x${string}`;
gatewayUrls?: string[];
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsNameReturnType>
getEnsResolver: (
args: {
name: string;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<`0x${string}`>
getEnsText: (
args: {
name: string;
gatewayUrls?: string[];
key: string;
strict?: boolean;
universalResolverAddress?: `0x${string}`;
blockNumber?: bigint;
blockTag?: BlockTag;
},
) => Promise<GetEnsTextReturnType>
getFeeHistory: (args: GetFeeHistoryParameters) => Promise<GetFeeHistoryReturnType>
estimateFeesPerGas: <
chainOverride extends undefined
| Chain = undefined,
type extends FeeValuesType = "eip1559",
>(
args?: EstimateFeesPerGasParameters<
undefined
| Chain,
chainOverride,
type,
>,
) => Promise<EstimateFeesPerGasReturnType<type>>
getFilterChanges: <
filterType extends FilterType,
const abi extends undefined | Abi | readonly unknown[],
eventName extends undefined | string,
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: GetFilterChangesParameters<
filterType,
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetFilterChangesReturnType<
filterType,
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
>
getFilterLogs: <
const abi extends undefined
| Abi
| readonly unknown[],
eventName extends undefined | string,
strict extends undefined | boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args: GetFilterLogsParameters<
abi,
eventName,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetFilterLogsReturnType<abi, eventName, strict, fromBlock, toBlock>,
>
getGasPrice: () => Promise<bigint>
getLogs: <
const abiEvent extends undefined
| AbiEvent = undefined,
const abiEvents extends
undefined | readonly unknown[] | readonly AbiEvent[] = abiEvent extends AbiEvent
? [abiEvent<abiEvent>]
: undefined,
strict extends undefined
| boolean = undefined,
fromBlock extends undefined | bigint | BlockTag = undefined,
toBlock extends undefined | bigint | BlockTag = undefined,
>(
args?: GetLogsParameters<
abiEvent,
abiEvents,
strict,
fromBlock,
toBlock,
>,
) => Promise<
GetLogsReturnType<abiEvent, abiEvents, strict, fromBlock, toBlock>,
>
getProof: (args: GetProofParameters) => Promise<GetProofReturnType>
estimateMaxPriorityFeePerGas: <chainOverride extends undefined | Chain = undefined>(
args?: { chain: null | chainOverride },
) => Promise<bigint>
getStorageAt: (args: GetStorageAtParameters) => Promise<GetStorageAtReturnType>
getTransaction: <blockTag extends BlockTag = "latest">(
args: GetTransactionParameters<blockTag>,
) => Promise<
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
accessList?: undefined;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId?: number;
yParity?: undefined;
type: "legacy";
}
| {
gasPrice: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip2930";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip1559";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas: bigint;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList?: undefined;
blobVersionedHashes: readonly `0x${string}`[];
chainId: number;
type: "eip4844";
}
| {
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas: bigint;
maxPriorityFeePerGas: bigint;
blockHash: (blockTag extends "pending" ? true : false) extends true
? null
: `0x${string}`;
blockNumber: (blockTag extends "pending" ? true : false) extends true
? null
: bigint;
from: `0x${string}`;
gas: bigint;
hash: `0x${string}`;
input: `0x${string}`;
nonce: number;
r: `0x${string}`;
s: `0x${string}`;
to: null | `0x${string}`;
transactionIndex: (blockTag extends "pending" ? true : false) extends true
? null
: number;
typeHex: null | `0x${string}`;
v: bigint;
value: bigint;
yParity: number;
accessList: AccessList;
authorizationList: SignedAuthorizationList;
blobVersionedHashes?: undefined;
chainId: number;
type: "eip7702";
},
>
getTransactionConfirmations: (
args: GetTransactionConfirmationsParameters<undefined | Chain>,
) => Promise<bigint>
getTransactionCount: (args: GetTransactionCountParameters) => Promise<number>
getTransactionReceipt: (args: GetTransactionReceiptParameters) => Promise<TransactionReceipt>
multicall: <
const contracts extends readonly unknown[],
allowFailure extends boolean = true,
>(
args: MulticallParameters<contracts, allowFailure>,
) => Promise<MulticallReturnType<contracts, allowFailure>>
prepareTransactionRequest: <
const request extends
(
| Omit<
{
accessList?: undefined;
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
authorizationList?: undefined;
gasPrice?: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "legacy";
value?: bigint;
},
"from",
>
| Omit<
{
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
authorizationList?: undefined;
gasPrice?: bigint;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: undefined;
maxPriorityFeePerGas?: undefined;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "eip2930";
value?: bigint;
accessList?: AccessList;
},
"from",
>
| Omit<
{
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
authorizationList?: undefined;
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: bigint;
maxPriorityFeePerGas?: bigint;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "eip1559";
value?: bigint;
accessList?: AccessList;
},
"from",
>
| Omit<
{
authorizationList?: undefined;
gasPrice?: undefined;
maxFeePerBlobGas: bigint;
maxFeePerGas?: bigint;
maxPriorityFeePerGas?: bigint;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to: null
| `0x${string}`;
type?: "eip4844";
value?: bigint;
accessList?: AccessList;
blobs: readonly `0x${string}`[] | readonly ByteArray[];
blobVersionedHashes?: readonly `0x${string}`[];
kzg?: Kzg;
sidecars?: readonly BlobSidecar<`0x${string}`>[];
},
"from",
>
| Omit<
{
blobs?: undefined;
blobVersionedHashes?: undefined;
kzg?: undefined;
sidecars?: undefined;
gasPrice?: undefined;
maxFeePerBlobGas?: undefined;
maxFeePerGas?: bigint;
maxPriorityFeePerGas?: bigint;
data?: `0x${string}`;
from?: `0x${string}`;
gas?: bigint;
nonce?: number;
to?: null
| `0x${string}`;
type?: "eip7702";
value?: bigint;
accessList?: AccessList;
authorizationList?: AuthorizationList<number, boolean>;
},
"from",
>
) & { kzg?: Kzg } & {
nonceManager?: NonceManager;
parameters?: readonly PrepareTransactionRequestParameterType[];
},
chainOverride extends undefined
| Chain = undefined,
accountOverride extends undefined | `0x${string}` | Account = undefined,
>(
args: PrepareTransactionRequestParameters<
undefined
| Chain,
undefined | Account,
chainOverride,
accountOverride,
request,
>,
) => 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]
: | "type"
| "gas"
| "nonce"
| "blobVersionedHashes"
| "fees"
| "chainId",
>,
> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">)
)[K]
},
>
readContract: <
const abi extends Abi
| readonly unknown[],
functionName extends string,
const args extends unknown,
>(
args: ReadContractParameters<abi, functionName, args>,
) => Promise<ReadContractReturnType<abi, functionName, args>>
sendRawTransaction: (args: SendRawTransactionParameters) => Promise<`0x${string}`>
simulate: <const calls extends readonly unknown[]>(
args: SimulateParameters<calls>,
) => Promise<SimulateReturnType<calls>>
simulateContract: <
const abi extends Abi
| readonly unknown[],
functionName extends string,
const args extends unknown,
chainOverride extends undefined | Chain,
accountOverride extends undefined | `0x${string}` | Account = undefined,
>(
args: SimulateContractParameters<
abi,
functionName,
args,
undefined
| Chain,
chainOverride,
accountOverride,
>,
) => Promise<
SimulateContractReturnType<
abi,
functionName,
args,
undefined
| Chain,
undefined | Account,
chainOverride,
accountOverride,
>,
>
verifyMessage: (
args: {
blockNumber?: bigint;
blockTag?: BlockTag;
address: `0x${string}`;
signature: `0x${string}` | ByteArray | Signature;
universalSignatureVerifierAddress?: `0x${string}`;
factory?: `0x${string}`;
factoryData?: `0x${string}`;
message: SignableMessage;
},
) => Promise<boolean>
verifySiweMessage: (
args: {
blockNumber?: bigint;
blockTag?: BlockTag;
message: string;
signature: `0x${string}`;
address?: `0x${string}`;
domain?: string;
nonce?: string;
scheme?: string;
time?: Date;
},
) => Promise<boolean>
verifyTypedData: (args: VerifyTypedDataParameters) => Promise<boolean>
uninstallFilter: (args: UninstallFilterParameters) => Promise<boolean>
waitForTransactionReceipt: (
args: WaitForTransactionReceiptParameters<undefined | Chain>,
) => Promise<TransactionReceipt>
watchBlockNumber: (args: WatchBlockNumberParameters) => WatchBlockNumberReturnType
watchBlocks: <
includeTransactions extends boolean = false,
blockTag extends BlockTag = "latest",
>(
args: WatchBlocksParameters<
Transport,
undefined
| Chain,
includeTransactions,
blockTag,
>,
) => WatchBlocksReturnType
watchContractEvent: <
const abi extends Abi
| readonly unknown[],
eventName extends string,
strict extends undefined | boolean = undefined,
>(
args: WatchContractEventParameters<abi, eventName, strict, Transport>,
) => WatchContractEventReturnType
watchEvent: <
const abiEvent extends undefined
| AbiEvent = undefined,
const abiEvents extends
undefined | readonly unknown[] | readonly AbiEvent[] = abiEvent extends AbiEvent
? [abiEvent<abiEvent>]
: undefined,
strict extends undefined
| boolean = undefined,
>(
args: WatchEventParameters<abiEvent, abiEvents, strict, Transport>,
) => WatchEventReturnType
watchPendingTransactions: (
args: WatchPendingTransactionsParameters<Transport>,
) => WatchPendingTransactionsReturnType
- params: EstimateLpTokensParams
Promise resolving to the estimated LP tokens and final amounts
Estimates the amount of LP tokens that will be received based on the final token amounts This calculation follows the Solidity getShares implementation from the vault contract