UNPKG

unich-web3-sdk

Version:

Web3 SDK for DEX applications with multi-chain support

888 lines (887 loc) 436 kB
import { c as ChainAdapter, a as ChainConfig, b as ChainType } from '../chain-BlOpMgJb.mjs'; import * as viem_experimental from 'viem/experimental'; import * as viem__types_utils_ccip from 'viem/_types/utils/ccip'; import * as viem from 'viem'; import { PublicClient, Chain } from 'viem'; import { Connection } from '@solana/web3.js'; /** * Implementation of chain-specific functionality for EVM-compatible chains */ declare class EVMChainAdapter implements ChainAdapter { private clientCache; /** * Get a provider for the specified chain * @param chain Chain configuration * @returns Provider instance */ getProvider(chain: ChainConfig): PublicClient; /** * Get the balance of an address on the specified chain * @param chain Chain configuration * @param address Address to check * @returns Balance in wei */ getBalance(chain: ChainConfig, address: string): Promise<bigint>; /** * Get the current block number on the specified chain * @param chain Chain configuration * @returns Current block number */ getBlockNumber(chain: ChainConfig): Promise<bigint>; /** * Get a wallet client for signing transactions * @param chain Chain configuration * @returns Wallet client or null if not connected */ getWalletClient(chain: ChainConfig): { account: undefined; batch?: { multicall?: boolean | viem.Prettify<viem.MulticallBatchOptions> | undefined; } | undefined; cacheTime: number; ccipRead?: false | { request?: (parameters: viem.CcipRequestParameters) => Promise<viem__types_utils_ccip.CcipRequestReturnType>; } | undefined; chain: Chain; key: string; name: string; pollingInterval: number; request: viem.EIP1193RequestFn<viem.WalletRpcSchema>; transport: viem.TransportConfig<"custom", viem.EIP1193RequestFn>; type: string; uid: string; addChain: (args: viem.AddChainParameters) => Promise<void>; deployContract: <const abi extends viem.Abi | readonly unknown[], chainOverride extends Chain | undefined>(args: viem.DeployContractParameters<abi, Chain, undefined, chainOverride>) => Promise<viem.DeployContractReturnType>; getAddresses: () => Promise<viem.GetAddressesReturnType>; getChainId: () => Promise<viem.GetChainIdReturnType>; getPermissions: () => Promise<viem.GetPermissionsReturnType>; prepareTransactionRequest: <const request extends viem.PrepareTransactionRequestRequest<Chain, chainOverride>, chainOverride extends Chain | undefined = undefined, accountOverride extends viem.Account | viem.Address | undefined = undefined>(args: viem.PrepareTransactionRequestParameters<Chain, undefined, chainOverride, accountOverride, request>) => Promise<viem.UnionRequiredBy<Extract<viem.UnionOmit<viem.ExtractChainFormatterParameters<viem.DeriveChain<Chain, chainOverride>, "transactionRequest", viem.TransactionRequest>, "from"> & (viem.DeriveChain<Chain, chainOverride> extends infer T_14 ? T_14 extends viem.DeriveChain<Chain, chainOverride> ? T_14 extends Chain ? { chain: T_14; } : { chain?: undefined; } : never : never) & (viem.DeriveAccount<undefined, accountOverride> extends infer T_15 ? T_15 extends viem.DeriveAccount<undefined, accountOverride> ? T_15 extends viem.Account ? { account: T_15; from: viem.Address; } : { account?: undefined; from?: undefined; } : never : never), viem.IsNever<((request["type"] extends string | undefined ? request["type"] : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "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"] : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) ? T_16 extends "legacy" ? viem.TransactionRequestLegacy : never : never : never) | ((request["type"] extends string | undefined ? request["type"] : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) extends infer T_17 ? T_17 extends (request["type"] extends string | undefined ? request["type"] : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) ? T_17 extends "eip1559" ? viem.TransactionRequestEIP1559 : never : never : never) | ((request["type"] extends string | undefined ? request["type"] : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)> extends "legacy" ? unknown : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: 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; } & (viem.OneOf<{ maxFeePerGas: viem.FeeValuesEIP1559["maxFeePerGas"]; } | { maxPriorityFeePerGas: viem.FeeValuesEIP1559["maxPriorityFeePerGas"]; }, viem.FeeValuesEIP1559> & { accessList?: viem.TransactionSerializableEIP2930["accessList"] | undefined; }) ? "eip1559" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: undefined | undefined; maxPriorityFeePerGas?: undefined | undefined; } & { accessList: viem.TransactionSerializableEIP2930["accessList"]; } ? "eip2930" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: undefined | undefined; blobs?: readonly `0x${string}`[] | readonly viem.ByteArray[] | undefined; blobVersionedHashes?: readonly `0x${string}`[] | undefined; maxFeePerBlobGas?: bigint | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: false | readonly viem.BlobSidecar<`0x${string}`>[] | undefined; }) & (viem.ExactPartial<viem.FeeValuesEIP4844> & viem.OneOf<{ blobs: viem.TransactionSerializableEIP4844["blobs"]; } | { blobVersionedHashes: viem.TransactionSerializableEIP4844["blobVersionedHashes"]; } | { sidecars: viem.TransactionSerializableEIP4844["sidecars"]; }, viem.TransactionSerializableEIP4844>) ? "eip4844" : never) | (request extends ({ accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; } | { accessList?: viem.AccessList | undefined; authorizationList?: viem_experimental.SignedAuthorizationList | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: undefined | undefined; maxFeePerBlobGas?: undefined | undefined; maxFeePerGas?: bigint | undefined; maxPriorityFeePerGas?: bigint | undefined; sidecars?: undefined | undefined; }) & { authorizationList: viem.TransactionSerializableEIP7702["authorizationList"]; } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) extends infer T_18 ? T_18 extends (request["type"] extends string | undefined ? request["type"] : viem.GetTransactionType<request, (request extends { accessList?: undefined | undefined; authorizationList?: undefined | undefined; blobs?: undefined | undefined; blobVersionedHashes?: undefined | undefined; gasPrice?: bigint | undefined; sidecars?: undefined | undefined; } & viem.FeeValuesLegacy ? "legacy" : never) | (request extends { accessList?: viem.AccessList | undefined; authorizationList?: undef