UNPKG

@dappykit/sdk

Version:

Web3 SDK for DApps

543 lines 596 kB
import { INetworkConfig } from '../network-config'; import { HDAccount } from 'viem/accounts'; import { Chain, HttpTransport } from 'viem'; import { ToSimpleSmartAccountReturnType } from 'permissionless/accounts'; import { SmartAccountClient } from 'permissionless'; import { type SmartAccount } from 'viem/account-abstraction'; export type LightSmartAccountType = ToSimpleSmartAccountReturnType; export type SmartAccountClientType = SmartAccountClient<HttpTransport, Chain, SmartAccount>; export declare class RpcHelper { readonly config: INetworkConfig; readonly eoaSigner?: HDAccount | undefined; private account; private accountClient; constructor(config: INetworkConfig, eoaSigner?: HDAccount | undefined); /** * Get a public client for the network. No ability to sign transactions. */ getPublicClient(): { account: undefined; batch?: { multicall?: boolean | import("viem").Prettify<import("viem").MulticallBatchOptions> | undefined; } | undefined; cacheTime: number; ccipRead?: false | { request?: (parameters: import("viem").CcipRequestParameters) => Promise<import("viem/_types/utils/ccip").CcipRequestReturnType>; } | undefined; chain: Chain; key: string; name: string; pollingInterval: number; request: import("viem").EIP1193RequestFn<import("viem").PublicRpcSchema>; transport: import("viem").TransportConfig<"http", import("viem").EIP1193RequestFn> & { fetchOptions?: import("viem").HttpTransportConfig["fetchOptions"] | undefined; url?: string | undefined; }; type: string; uid: string; call: (parameters: import("viem").CallParameters<Chain>) => Promise<import("viem").CallReturnType>; createBlockFilter: () => Promise<import("viem").CreateBlockFilterReturnType>; createContractEventFilter: <const abi extends import("viem").Abi | readonly unknown[], eventName extends import("viem").ContractEventName<abi> | undefined, args extends import("viem").MaybeExtractEventArgsFromAbi<abi, eventName> | undefined, strict extends boolean | undefined = undefined, fromBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, toBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined>(args: import("viem").CreateContractEventFilterParameters<abi, eventName, args, strict, fromBlock, toBlock>) => Promise<import("viem").CreateContractEventFilterReturnType<abi, eventName, args, strict, fromBlock, toBlock>>; createEventFilter: <const abiEvent extends import("viem").AbiEvent | undefined = undefined, const abiEvents extends readonly import("viem").AbiEvent[] | readonly unknown[] | undefined = abiEvent extends import("viem").AbiEvent ? [abiEvent] : undefined, strict extends boolean | undefined = undefined, fromBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, toBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, _EventName extends string | undefined = import("viem").MaybeAbiEventName<abiEvent>, _Args extends import("viem").MaybeExtractEventArgsFromAbi<abiEvents, _EventName> | undefined = undefined>(args?: import("viem").CreateEventFilterParameters<abiEvent, abiEvents, strict, fromBlock, toBlock, _EventName, _Args> | undefined) => Promise<import("viem").CreateEventFilterReturnType<abiEvent, abiEvents, strict, fromBlock, toBlock, _EventName, _Args>>; createPendingTransactionFilter: () => Promise<import("viem").CreatePendingTransactionFilterReturnType>; estimateContractGas: <chain extends Chain | undefined, const abi extends import("viem").Abi | readonly unknown[], functionName extends import("viem").ContractFunctionName<abi, "nonpayable" | "payable">, args extends import("viem").ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>>(args: import("viem").EstimateContractGasParameters<abi, functionName, args, chain>) => Promise<import("viem").EstimateContractGasReturnType>; estimateGas: (args: import("viem").EstimateGasParameters<Chain>) => Promise<import("viem").EstimateGasReturnType>; getBalance: (args: import("viem").GetBalanceParameters) => Promise<import("viem").GetBalanceReturnType>; getBlobBaseFee: () => Promise<import("viem").GetBlobBaseFeeReturnType>; getBlock: <includeTransactions extends boolean = false, blockTag extends import("viem").BlockTag = "latest">(args?: import("viem").GetBlockParameters<includeTransactions, blockTag> | undefined) => Promise<{ number: blockTag extends "pending" ? null : bigint; nonce: blockTag extends "pending" ? null : `0x${string}`; hash: blockTag extends "pending" ? null : `0x${string}`; logsBloom: blockTag extends "pending" ? null : `0x${string}`; baseFeePerGas: bigint | null; blobGasUsed: bigint; difficulty: bigint; excessBlobGas: bigint; extraData: import("viem").Hex; gasLimit: bigint; gasUsed: bigint; miner: import("viem").Address; mixHash: import("viem").Hash; parentBeaconBlockRoot?: `0x${string}` | undefined; parentHash: import("viem").Hash; receiptsRoot: import("viem").Hex; sealFields: import("viem").Hex[]; sha3Uncles: import("viem").Hash; size: bigint; stateRoot: import("viem").Hash; timestamp: bigint; totalDifficulty: bigint | null; transactionsRoot: import("viem").Hash; uncles: import("viem").Hash[]; withdrawals?: import("viem").Withdrawal[] | undefined | undefined; withdrawalsRoot?: `0x${string}` | undefined; transactions: includeTransactions extends true ? ({ type: "legacy"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice: bigint; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; accessList?: undefined | undefined; blobVersionedHashes?: undefined | undefined; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity?: undefined | undefined; chainId?: number | undefined; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T ? T extends (blockTag extends "pending" ? true : false) ? T extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_1 ? T_1 extends (blockTag extends "pending" ? true : false) ? T_1 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_2 ? T_2 extends (blockTag extends "pending" ? true : false) ? T_2 extends true ? null : number : never : never; } | { type: "eip2930"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice: bigint; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; accessList: import("viem").AccessList; blobVersionedHashes?: undefined | undefined; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_3 ? T_3 extends (blockTag extends "pending" ? true : false) ? T_3 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_4 ? T_4 extends (blockTag extends "pending" ? true : false) ? T_4 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_5 ? T_5 extends (blockTag extends "pending" ? true : false) ? T_5 extends true ? null : number : never : never; } | { type: "eip1559"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; accessList: import("viem").AccessList; blobVersionedHashes?: undefined | undefined; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_6 ? T_6 extends (blockTag extends "pending" ? true : false) ? T_6 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_7 ? T_7 extends (blockTag extends "pending" ? true : false) ? T_7 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_8 ? T_8 extends (blockTag extends "pending" ? true : false) ? T_8 extends true ? null : number : never : never; } | { type: "eip4844"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas: bigint; gasPrice?: undefined | undefined; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; accessList: import("viem").AccessList; blobVersionedHashes: readonly import("viem").Hex[]; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_9 ? T_9 extends (blockTag extends "pending" ? true : false) ? T_9 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_10 ? T_10 extends (blockTag extends "pending" ? true : false) ? T_10 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_11 ? T_11 extends (blockTag extends "pending" ? true : false) ? T_11 extends true ? null : number : never : never; } | { type: "eip7702"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; accessList: import("viem").AccessList; blobVersionedHashes?: undefined | undefined; authorizationList: import("viem/experimental").SignedAuthorizationList; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_12 ? T_12 extends (blockTag extends "pending" ? true : false) ? T_12 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_13 ? T_13 extends (blockTag extends "pending" ? true : false) ? T_13 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_14 ? T_14 extends (blockTag extends "pending" ? true : false) ? T_14 extends true ? null : number : never : never; })[] : `0x${string}`[]; }>; getBlockNumber: (args?: import("viem").GetBlockNumberParameters | undefined) => Promise<import("viem").GetBlockNumberReturnType>; getBlockTransactionCount: (args?: import("viem").GetBlockTransactionCountParameters | undefined) => Promise<import("viem").GetBlockTransactionCountReturnType>; getBytecode: (args: import("viem").GetBytecodeParameters) => Promise<import("viem").GetBytecodeReturnType>; getChainId: () => Promise<import("viem").GetChainIdReturnType>; getCode: (args: import("viem").GetBytecodeParameters) => Promise<import("viem").GetBytecodeReturnType>; getContractEvents: <const abi extends import("viem").Abi | readonly unknown[], eventName extends import("viem").ContractEventName<abi> | undefined = undefined, strict extends boolean | undefined = undefined, fromBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, toBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined>(args: import("viem").GetContractEventsParameters<abi, eventName, strict, fromBlock, toBlock>) => Promise<import("viem").GetContractEventsReturnType<abi, eventName, strict, fromBlock, toBlock>>; getEip712Domain: (args: import("viem").GetEip712DomainParameters) => Promise<import("viem").GetEip712DomainReturnType>; getEnsAddress: (args: import("viem").GetEnsAddressParameters) => Promise<import("viem").GetEnsAddressReturnType>; getEnsAvatar: (args: import("viem").GetEnsAvatarParameters) => Promise<import("viem").GetEnsAvatarReturnType>; getEnsName: (args: import("viem").GetEnsNameParameters) => Promise<import("viem").GetEnsNameReturnType>; getEnsResolver: (args: import("viem").GetEnsResolverParameters) => Promise<import("viem").GetEnsResolverReturnType>; getEnsText: (args: import("viem").GetEnsTextParameters) => Promise<import("viem").GetEnsTextReturnType>; getFeeHistory: (args: import("viem").GetFeeHistoryParameters) => Promise<import("viem").GetFeeHistoryReturnType>; estimateFeesPerGas: <chainOverride extends Chain | undefined = undefined, type extends import("viem").FeeValuesType = "eip1559">(args?: import("viem").EstimateFeesPerGasParameters<Chain, chainOverride, type> | undefined) => Promise<import("viem").EstimateFeesPerGasReturnType<type>>; getFilterChanges: <filterType extends import("viem").FilterType, const abi extends import("viem").Abi | readonly unknown[] | undefined, eventName extends string | undefined, strict extends boolean | undefined = undefined, fromBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, toBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined>(args: import("viem").GetFilterChangesParameters<filterType, abi, eventName, strict, fromBlock, toBlock>) => Promise<import("viem").GetFilterChangesReturnType<filterType, abi, eventName, strict, fromBlock, toBlock>>; getFilterLogs: <const abi extends import("viem").Abi | readonly unknown[] | undefined, eventName extends string | undefined, strict extends boolean | undefined = undefined, fromBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, toBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined>(args: import("viem").GetFilterLogsParameters<abi, eventName, strict, fromBlock, toBlock>) => Promise<import("viem").GetFilterLogsReturnType<abi, eventName, strict, fromBlock, toBlock>>; getGasPrice: () => Promise<import("viem").GetGasPriceReturnType>; getLogs: <const abiEvent extends import("viem").AbiEvent | undefined = undefined, const abiEvents extends readonly import("viem").AbiEvent[] | readonly unknown[] | undefined = abiEvent extends import("viem").AbiEvent ? [abiEvent] : undefined, strict extends boolean | undefined = undefined, fromBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined, toBlock extends import("viem").BlockNumber | import("viem").BlockTag | undefined = undefined>(args?: import("viem").GetLogsParameters<abiEvent, abiEvents, strict, fromBlock, toBlock> | undefined) => Promise<import("viem").GetLogsReturnType<abiEvent, abiEvents, strict, fromBlock, toBlock>>; getProof: (args: import("viem").GetProofParameters) => Promise<import("viem").GetProofReturnType>; estimateMaxPriorityFeePerGas: <chainOverride extends Chain | undefined = undefined>(args?: { chain?: chainOverride | null | undefined; } | undefined) => Promise<import("viem").EstimateMaxPriorityFeePerGasReturnType>; getStorageAt: (args: import("viem").GetStorageAtParameters) => Promise<import("viem").GetStorageAtReturnType>; getTransaction: <blockTag extends import("viem").BlockTag = "latest">(args: import("viem").GetTransactionParameters<blockTag>) => Promise<{ type: "legacy"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice: bigint; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; accessList?: undefined | undefined; blobVersionedHashes?: undefined | undefined; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity?: undefined | undefined; chainId?: number | undefined; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T ? T extends (blockTag extends "pending" ? true : false) ? T extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_1 ? T_1 extends (blockTag extends "pending" ? true : false) ? T_1 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_2 ? T_2 extends (blockTag extends "pending" ? true : false) ? T_2 extends true ? null : number : never : never; } | { type: "eip2930"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice: bigint; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; accessList: import("viem").AccessList; blobVersionedHashes?: undefined | undefined; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_3 ? T_3 extends (blockTag extends "pending" ? true : false) ? T_3 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_4 ? T_4 extends (blockTag extends "pending" ? true : false) ? T_4 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_5 ? T_5 extends (blockTag extends "pending" ? true : false) ? T_5 extends true ? null : number : never : never; } | { type: "eip1559"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; accessList: import("viem").AccessList; blobVersionedHashes?: undefined | undefined; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_6 ? T_6 extends (blockTag extends "pending" ? true : false) ? T_6 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_7 ? T_7 extends (blockTag extends "pending" ? true : false) ? T_7 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_8 ? T_8 extends (blockTag extends "pending" ? true : false) ? T_8 extends true ? null : number : never : never; } | { type: "eip4844"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas: bigint; gasPrice?: undefined | undefined; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; accessList: import("viem").AccessList; blobVersionedHashes: readonly import("viem").Hex[]; authorizationList?: undefined | undefined; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_9 ? T_9 extends (blockTag extends "pending" ? true : false) ? T_9 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_10 ? T_10 extends (blockTag extends "pending" ? true : false) ? T_10 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_11 ? T_11 extends (blockTag extends "pending" ? true : false) ? T_11 extends true ? null : number : never : never; } | { type: "eip7702"; value: bigint; to: import("viem").Address | null; from: import("viem").Address; gas: bigint; nonce: number; maxFeePerBlobGas?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; accessList: import("viem").AccessList; blobVersionedHashes?: undefined | undefined; authorizationList: import("viem/experimental").SignedAuthorizationList; r: import("viem").Hex; s: import("viem").Hex; v: bigint; yParity: number; chainId: number; hash: import("viem").Hash; input: import("viem").Hex; typeHex: import("viem").Hex | null; blockNumber: (blockTag extends "pending" ? true : false) extends infer T_12 ? T_12 extends (blockTag extends "pending" ? true : false) ? T_12 extends true ? null : bigint : never : never; blockHash: (blockTag extends "pending" ? true : false) extends infer T_13 ? T_13 extends (blockTag extends "pending" ? true : false) ? T_13 extends true ? null : `0x${string}` : never : never; transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_14 ? T_14 extends (blockTag extends "pending" ? true : false) ? T_14 extends true ? null : number : never : never; }>; getTransactionConfirmations: (args: import("viem").GetTransactionConfirmationsParameters<Chain>) => Promise<import("viem").GetTransactionConfirmationsReturnType>; getTransactionCount: (args: import("viem").GetTransactionCountParameters) => Promise<import("viem").GetTransactionCountReturnType>; getTransactionReceipt: (args: import("viem").GetTransactionReceiptParameters) => Promise<import("viem").TransactionReceipt>; multicall: <const contracts extends readonly unknown[], allowFailure extends boolean = true>(args: import("viem").MulticallParameters<contracts, allowFailure>) => Promise<import("viem").MulticallReturnType<contracts, allowFailure>>; prepareTransactionRequest: <const request extends import("viem").PrepareTransactionRequestRequest<Chain, chainOverride>, chainOverride extends Chain | undefined = undefined, accountOverride extends import("viem").Account | import("viem").Address | undefined = undefined>(args: import("viem").PrepareTransactionRequestParameters<Chain, import("viem").Account | undefined, chainOverride, accountOverride, request>) => Promise<import("viem").UnionRequiredBy<Extract<import("viem").UnionOmit<import("viem").ExtractChainFormatterParameters<import("viem").DeriveChain<Chain, chainOverride>, "transactionRequest", import("viem").TransactionRequest>, "from"> & (import("viem").DeriveChain<Chain, chainOverride> extends infer T_14 ? T_14 extends import("viem").DeriveChain<Chain, chainOverride> ? T_14 extends Chain ? { chain: T_14; } : { chain?: undefined; } : never : never) & (import("viem").DeriveAccount<import("viem").Account | undefined, accountOverride> extends infer T_15 ? T_15 extends import("viem").DeriveAccount<import("viem").Account | undefined, accountOverride> ? T_15 extends import("viem").Account ? { account: T_15; from: import("viem").Address; } : { account?: undefined; from?: undefined; } : never : never), import("viem").IsNever<((request["type"] extends string | undefined ? request["type"] : import("viem").GetTransactionType<request, (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").FeeValuesLegacy) | (import("viem").ValueOf<Required<{ [K_1 in keyof request]: K_1 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "r" | "s" | "v" | "yParity" | "chainId" ? K_1 : undefined; }>> extends string ? import("viem").TransactionSerializableLegacy : never) | (import("viem").ValueOf<Required<{ [K_2 in keyof request]: K_2 extends keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "legacy"> ? K_2 : undefined; }>> extends string ? import("viem").TransactionRequestLegacy : never) ? "legacy" : never) | (request extends ({ accessList?: import("viem").AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } & (import("viem").OneOf<{ maxFeePerGas: import("viem").FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: import("viem").FeeValuesEIP1559["maxPriorityFeePerGas"]; }, import("viem").FeeValuesEIP1559> & { accessList?: import("viem").TransactionSerializableEIP2930["accessList"] | undefined; })) | (import("viem").ValueOf<Required<{ [K_3 in keyof request]: K_3 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_3 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP1559 : never) | (import("viem").ValueOf<Required<{ [K_4 in keyof request]: K_4 extends "accessList" | keyof import("viem").FeeValuesEIP1559<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip1559"> ? K_4 : undefined; }>> extends string ? import("viem").TransactionRequestEIP1559 : never) ? "eip1559" : never) | (request extends ({ accessList?: import("viem").AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").ExactPartial<import("viem").FeeValuesLegacy> & { accessList: import("viem").TransactionSerializableEIP2930["accessList"]; }) | (import("viem").ValueOf<Required<{ [K_5 in keyof request]: K_5 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_5 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP2930 : never) | (import("viem").ValueOf<Required<{ [K_6 in keyof request]: K_6 extends "accessList" | keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip2930"> ? K_6 : undefined; }>> extends string ? import("viem").TransactionRequestEIP2930 : never) ? "eip2930" : never) | (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly import("viem").ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly import("viem").BlobSidecar<`0x${string}`>[] | undefined; } & (import("viem").ExactPartial<import("viem").FeeValuesEIP4844> & import("viem").OneOf<{ blobs: import("viem").TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: import("viem").TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: import("viem").TransactionSerializableEIP4844["sidecars"]; }, import("viem").TransactionSerializableEIP4844>)) | (import("viem").ValueOf<Required<{ [K_7 in keyof request]: K_7 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "blobs" | "blobVersionedHashes" | "kzg" | "sidecars" | "r" | "s" | "v" | "yParity" | "chainId" ? K_7 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP4844 : never) | (import("viem").ValueOf<Required<{ [K_8 in keyof request]: K_8 extends "type" | "value" | "to" | "data" | "from" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "blobs" | "blobVersionedHashes" | "kzg" | "sidecars" ? K_8 : undefined; }>> extends string ? import("viem").TransactionRequestEIP4844 : never) ? "eip4844" : never) | (request extends ({ accessList?: undefined | undefined; authorizationList?: import("viem/experimental").SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").ExactPartial<import("viem").FeeValuesEIP1559> & { authorizationList: import("viem").TransactionSerializableEIP7702["authorizationList"]; }) | (import("viem").ValueOf<Required<{ [K_9 in keyof request]: K_9 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "authorizationList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_9 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP7702 : never) | (import("viem").ValueOf<Required<{ [K_10 in keyof request]: K_10 extends "accessList" | "authorizationList" | keyof import("viem").FeeValuesEIP1559<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip7702"> ? K_10 : undefined; }>> extends string ? import("viem").TransactionRequestEIP7702 : never) ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : import("viem").GetTransactionType<request, (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").FeeValuesLegacy) | (import("viem").ValueOf<Required<{ [K_1 in keyof request]: K_1 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "r" | "s" | "v" | "yParity" | "chainId" ? K_1 : undefined; }>> extends string ? import("viem").TransactionSerializableLegacy : never) | (import("viem").ValueOf<Required<{ [K_2 in keyof request]: K_2 extends keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "legacy"> ? K_2 : undefined; }>> extends string ? import("viem").TransactionRequestLegacy : never) ? "legacy" : never) | (request extends ({ accessList?: import("viem").AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } & (import("viem").OneOf<{ maxFeePerGas: import("viem").FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: import("viem").FeeValuesEIP1559["maxPriorityFeePerGas"]; }, import("viem").FeeValuesEIP1559> & { accessList?: import("viem").TransactionSerializableEIP2930["accessList"] | undefined; })) | (import("viem").ValueOf<Required<{ [K_3 in keyof request]: K_3 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_3 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP1559 : never) | (import("viem").ValueOf<Required<{ [K_4 in keyof request]: K_4 extends "accessList" | keyof import("viem").FeeValuesEIP1559<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip1559"> ? K_4 : undefined; }>> extends string ? import("viem").TransactionRequestEIP1559 : never) ? "eip1559" : never) | (request extends ({ accessList?: import("viem").AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").ExactPartial<import("viem").FeeValuesLegacy> & { accessList: import("viem").TransactionSerializableEIP2930["accessList"]; }) | (import("viem").ValueOf<Required<{ [K_5 in keyof request]: K_5 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_5 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP2930 : never) | (import("viem").ValueOf<Required<{ [K_6 in keyof request]: K_6 extends "accessList" | keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip2930"> ? K_6 : undefined; }>> extends string ? import("viem").TransactionRequestEIP2930 : never) ? "eip2930" : never) | (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly import("viem").ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly import("viem").BlobSidecar<`0x${string}`>[] | undefined; } & (import("viem").ExactPartial<import("viem").FeeValuesEIP4844> & import("viem").OneOf<{ blobs: import("viem").TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: import("viem").TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: import("viem").TransactionSerializableEIP4844["sidecars"]; }, import("viem").TransactionSerializableEIP4844>)) | (import("viem").ValueOf<Required<{ [K_7 in keyof request]: K_7 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "blobs" | "blobVersionedHashes" | "kzg" | "sidecars" | "r" | "s" | "v" | "yParity" | "chainId" ? K_7 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP4844 : never) | (import("viem").ValueOf<Required<{ [K_8 in keyof request]: K_8 extends "type" | "value" | "to" | "data" | "from" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "blobs" | "blobVersionedHashes" | "kzg" | "sidecars" ? K_8 : undefined; }>> extends string ? import("viem").TransactionRequestEIP4844 : never) ? "eip4844" : never) | (request extends ({ accessList?: undefined | undefined; authorizationList?: import("viem/experimental").SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").ExactPartial<import("viem").FeeValuesEIP1559> & { authorizationList: import("viem").TransactionSerializableEIP7702["authorizationList"]; }) | (import("viem").ValueOf<Required<{ [K_9 in keyof request]: K_9 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "authorizationList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_9 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP7702 : never) | (import("viem").ValueOf<Required<{ [K_10 in keyof request]: K_10 extends "accessList" | "authorizationList" | keyof import("viem").FeeValuesEIP1559<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip7702"> ? K_10 : undefined; }>> extends string ? import("viem").TransactionRequestEIP7702 : never) ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) extends infer T_16 ? T_16 extends (request["type"] extends string | undefined ? request["type"] : import("viem").GetTransactionType<request, (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").FeeValuesLegacy) | (import("viem").ValueOf<Required<{ [K_1 in keyof request]: K_1 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "r" | "s" | "v" | "yParity" | "chainId" ? K_1 : undefined; }>> extends string ? import("viem").TransactionSerializableLegacy : never) | (import("viem").ValueOf<Required<{ [K_2 in keyof request]: K_2 extends keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "legacy"> ? K_2 : undefined; }>> extends string ? import("viem").TransactionRequestLegacy : never) ? "legacy" : never) | (request extends ({ accessList?: import("viem").AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } & (import("viem").OneOf<{ maxFeePerGas: import("viem").FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: import("viem").FeeValuesEIP1559["maxPriorityFeePerGas"]; }, import("viem").FeeValuesEIP1559> & { accessList?: import("viem").TransactionSerializableEIP2930["accessList"] | undefined; })) | (import("viem").ValueOf<Required<{ [K_3 in keyof request]: K_3 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_3 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP1559 : never) | (import("viem").ValueOf<Required<{ [K_4 in keyof request]: K_4 extends "accessList" | keyof import("viem").FeeValuesEIP1559<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip1559"> ? K_4 : undefined; }>> extends string ? import("viem").TransactionRequestEIP1559 : never) ? "eip1559" : never) | (request extends ({ accessList?: import("viem").AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").ExactPartial<import("viem").FeeValuesLegacy> & { accessList: import("viem").TransactionSerializableEIP2930["accessList"]; }) | (import("viem").ValueOf<Required<{ [K_5 in keyof request]: K_5 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_5 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP2930 : never) | (import("viem").ValueOf<Required<{ [K_6 in keyof request]: K_6 extends "accessList" | keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip2930"> ? K_6 : undefined; }>> extends string ? import("viem").TransactionRequestEIP2930 : never) ? "eip2930" : never) | (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly import("viem").ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly import("viem").BlobSidecar<`0x${string}`>[] | undefined; } & (import("viem").ExactPartial<import("viem").FeeValuesEIP4844> & import("viem").OneOf<{ blobs: import("viem").TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: import("viem").TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: import("viem").TransactionSerializableEIP4844["sidecars"]; }, import("viem").TransactionSerializableEIP4844>)) | (import("viem").ValueOf<Required<{ [K_7 in keyof request]: K_7 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "blobs" | "blobVersionedHashes" | "kzg" | "sidecars" | "r" | "s" | "v" | "yParity" | "chainId" ? K_7 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP4844 : never) | (import("viem").ValueOf<Required<{ [K_8 in keyof request]: K_8 extends "type" | "value" | "to" | "data" | "from" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "blobs" | "blobVersionedHashes" | "kzg" | "sidecars" ? K_8 : undefined; }>> extends string ? import("viem").TransactionRequestEIP4844 : never) ? "eip4844" : never) | (request extends ({ accessList?: undefined | undefined; authorizationList?: import("viem/experimental").SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").ExactPartial<import("viem").FeeValuesEIP1559> & { authorizationList: import("viem").TransactionSerializableEIP7702["authorizationList"]; }) | (import("viem").ValueOf<Required<{ [K_9 in keyof request]: K_9 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "accessList" | "authorizationList" | "r" | "s" | "v" | "yParity" | "chainId" ? K_9 : undefined; }>> extends string ? import("viem").TransactionSerializableEIP7702 : never) | (import("viem").ValueOf<Required<{ [K_10 in keyof request]: K_10 extends "accessList" | "authorizationList" | keyof import("viem").FeeValuesEIP1559<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "eip7702"> ? K_10 : undefined; }>> extends string ? import("viem").TransactionRequestEIP7702 : never) ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : import("viem").GetTransactionType<request, (request extends ({ accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & import("viem").FeeValuesLegacy) | (import("viem").ValueOf<Required<{ [K_1 in keyof request]: K_1 extends "type" | "value" | "to" | "data" | "gas" | "nonce" | "maxFeePerBlobGas" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "r" | "s" | "v" | "yParity" | "chainId" ? K_1 : undefined; }>> extends string ? import("viem").TransactionSerializableLegacy : never) | (import("viem").ValueOf<Required<{ [K_2 in keyof request]: K_2 extends keyof import("viem").FeeValuesLegacy<bigint> | keyof import("viem").TransactionRequestBase<bigint, number, "legacy"> ? K_2 : undefined; }>> extends string ? import("viem").TransactionRequestLegacy : never) ? "legacy" : never) | (request extends ({ accessList?: import("viem").AccessList |