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: CalculateLimitPriceParams
Promise resolving to the calculated sqrt price limit
Calculates the sqrt price limit for slippage protection during swaps using high-precision arithmetic