import * as abitype from 'abitype'; import * as viem from 'viem'; import { Chain } from 'viem/chains'; declare const testChains: (Chain | { readonly id: 1; readonly network: "homestead"; readonly name: "Ethereum"; readonly nativeCurrency: { readonly name: "Ether"; readonly symbol: "ETH"; readonly decimals: 18; }; readonly rpcUrls: { readonly alchemy: { readonly http: readonly ["https://eth-mainnet.g.alchemy.com/v2"]; readonly webSocket: readonly ["wss://eth-mainnet.g.alchemy.com/v2"]; }; readonly infura: { readonly http: readonly ["https://mainnet.infura.io/v3"]; readonly webSocket: readonly ["wss://mainnet.infura.io/ws/v3"]; }; readonly default: { readonly http: readonly ["https://cloudflare-eth.com"]; }; readonly public: { readonly http: readonly ["https://cloudflare-eth.com"]; }; }; readonly blockExplorers: { readonly etherscan: { readonly name: "Etherscan"; readonly url: "https://etherscan.io"; }; readonly default: { readonly name: "Etherscan"; readonly url: "https://etherscan.io"; }; }; readonly contracts: { readonly ensRegistry: { readonly address: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"; }; readonly ensUniversalResolver: { readonly address: "0xc0497E381f536Be9ce14B0dD3817cBcAe57d2F62"; readonly blockCreated: 16966585; }; readonly multicall3: { readonly address: "0xca11bde05977b3631167028862be2a173976ca11"; readonly blockCreated: 14353601; }; }; } | { readonly id: 5; readonly network: "goerli"; readonly name: "Goerli"; readonly nativeCurrency: { readonly name: "Goerli Ether"; readonly symbol: "ETH"; readonly decimals: 18; }; readonly rpcUrls: { readonly alchemy: { readonly http: readonly ["https://eth-goerli.g.alchemy.com/v2"]; readonly webSocket: readonly ["wss://eth-goerli.g.alchemy.com/v2"]; }; readonly infura: { readonly http: readonly ["https://goerli.infura.io/v3"]; readonly webSocket: readonly ["wss://goerli.infura.io/ws/v3"]; }; readonly default: { readonly http: readonly ["https://rpc.ankr.com/eth_goerli"]; }; readonly public: { readonly http: readonly ["https://rpc.ankr.com/eth_goerli"]; }; }; readonly blockExplorers: { readonly etherscan: { readonly name: "Etherscan"; readonly url: "https://goerli.etherscan.io"; }; readonly default: { readonly name: "Etherscan"; readonly url: "https://goerli.etherscan.io"; }; }; readonly contracts: { readonly ensRegistry: { readonly address: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"; }; readonly ensUniversalResolver: { readonly address: "0x56522D00C410a43BFfDF00a9A569489297385790"; readonly blockCreated: 8765204; }; readonly multicall3: { readonly address: "0xca11bde05977b3631167028862be2a173976ca11"; readonly blockCreated: 6507670; }; }; readonly testnet: true; } | { readonly id: 10; readonly name: "Optimism"; readonly network: "optimism"; readonly nativeCurrency: { readonly name: "Ether"; readonly symbol: "ETH"; readonly decimals: 18; }; readonly rpcUrls: { readonly alchemy: { readonly http: readonly ["https://opt-mainnet.g.alchemy.com/v2"]; readonly webSocket: readonly ["wss://opt-mainnet.g.alchemy.com/v2"]; }; readonly infura: { readonly http: readonly ["https://optimism-mainnet.infura.io/v3"]; readonly webSocket: readonly ["wss://optimism-mainnet.infura.io/ws/v3"]; }; readonly default: { readonly http: readonly ["https://mainnet.optimism.io"]; }; readonly public: { readonly http: readonly ["https://mainnet.optimism.io"]; }; }; readonly blockExplorers: { readonly etherscan: { readonly name: "Etherscan"; readonly url: "https://optimistic.etherscan.io"; }; readonly default: { readonly name: "Optimism Explorer"; readonly url: "https://explorer.optimism.io"; }; }; readonly contracts: { readonly multicall3: { readonly address: "0xca11bde05977b3631167028862be2a173976ca11"; readonly blockCreated: 4286263; }; }; } | { readonly id: 137; readonly name: "Polygon"; readonly network: "matic"; readonly nativeCurrency: { readonly name: "MATIC"; readonly symbol: "MATIC"; readonly decimals: 18; }; readonly rpcUrls: { readonly alchemy: { readonly http: readonly ["https://polygon-mainnet.g.alchemy.com/v2"]; readonly webSocket: readonly ["wss://polygon-mainnet.g.alchemy.com/v2"]; }; readonly infura: { readonly http: readonly ["https://polygon-mainnet.infura.io/v3"]; readonly webSocket: readonly ["wss://polygon-mainnet.infura.io/ws/v3"]; }; readonly default: { readonly http: readonly ["https://polygon-rpc.com"]; }; readonly public: { readonly http: readonly ["https://polygon-rpc.com"]; }; }; readonly blockExplorers: { readonly etherscan: { readonly name: "PolygonScan"; readonly url: "https://polygonscan.com"; }; readonly default: { readonly name: "PolygonScan"; readonly url: "https://polygonscan.com"; }; }; readonly contracts: { readonly multicall3: { readonly address: "0xca11bde05977b3631167028862be2a173976ca11"; readonly blockCreated: 25770160; }; }; })[]; declare function getWalletClients(): { chain: Chain; key: string; name: string; pollingInterval: number; request: viem.EIP1193RequestFn; transport: viem.TransportConfig<"custom", viem.EIP1193RequestFn> & ((...args: any) => Promise); type: string; uid: string; addChain: (args: viem.AddChainParameters) => Promise; deployContract: (args: viem.DeployContractParameters) => Promise<`0x${string}`>; getAddresses: () => Promise; getChainId: () => Promise; getPermissions: () => Promise; requestAddresses: () => Promise; requestPermissions: (args: { [x: string]: Record; eth_accounts: Record; }) => Promise; sendTransaction: (args: viem.SendTransactionParameters) => Promise<`0x${string}`>; signMessage: (args: viem.SignMessageParameters<{ address: `0x${string}`; type: "json-rpc"; }>) => Promise<`0x${string}`>; signTypedData: (args: viem.SignTypedDataParameters) => Promise<`0x${string}`>; switchChain: (args: viem.SwitchChainParameters) => Promise; watchAsset: (args: viem.WatchAssetParams) => Promise; writeContract: (args: viem.WriteContractParameters) => Promise<`0x${string}`>; account: { address: `0x${string}`; type: "json-rpc"; }; }[]; export { getWalletClients, testChains };