import { Account, Chain, Client, CreatePublicClientErrorType, Prettify, PublicActions, PublicRpcSchema, RpcSchema, Transport, WalletActions, WalletRpcSchema } from "viem"; import { XPAccount } from "../accounts/avalancheAccount.js"; import { CChainRpcSchema } from "../methods/cChain/cChainRpcSchema.js"; import { PChainRpcSchema } from "../methods/pChain/pChainRpcSchema.js"; import { AvalanchePublicRpcSchema } from "../methods/public/avalanchePublicRpcSchema.js"; import { AvalancheWalletRpcSchema } from "../methods/wallet/avalancheWalletRPCSchema.js"; import { XChainRpcSchema } from "../methods/xChain/xChainRpcSchema.js"; import { AvalancheCoreClient } from "./createAvalancheCoreClient.js"; import { AvalancheWalletCoreClient, AvalancheWalletCoreClientConfig } from "./createAvalancheWalletCoreClient.js"; import { AvalanchePublicActions } from "./decorators/avalanchePublic.js"; import { AvalancheWalletActions } from "./decorators/avalancheWallet.js"; import { CChainActions } from "./decorators/cChain.js"; import { CChainWalletActions } from "./decorators/cChainWallet.js"; import { PChainActions } from "./decorators/pChain.js"; import { PChainWalletActions } from "./decorators/pChainWallet.js"; import { XChainActions } from "./decorators/xChain.js"; import { XChainWalletActions } from "./decorators/xChainWallet.js"; export type AvalancheWalletClientConfig = Prettify>; export type AvalancheWalletClient = Prettify & AvalancheWalletActions & AvalanchePublicActions & PublicActions> & { xpAccount?: XPAccount; pChainClient: AvalancheCoreClient; cChainClient: AvalancheCoreClient; xChainClient: AvalancheCoreClient; } & { cChain: AvalancheWalletCoreClient; pChain: AvalancheWalletCoreClient; xChain: AvalancheWalletCoreClient; }>; export type CreateAvalancheWalletClientErrorType = CreatePublicClientErrorType; /** * Creates an Avalanche Wallet Client with a given transport configured for a Chain. * * The Avalanche Wallet Client is an interface to interact with the Core Wallet API through Avalanche-specific JSON-RPC API methods. * @see https://docs.core.app/docs/reference/json-rpc-api * * @param parameters - {@link AvalancheWalletClientConfig} * @returns A Avalanche Wallet Client. {@link AvalancheWalletClient} * * @example * ```ts * import { createAvalancheWalletClient } from '@avalanche-sdk/client' * import { avalanche } from '@avalanche-sdk/client/chains' * * const client = createAvalancheWalletClient({ * chain: avalanche, * transport: { type: "http" }, * }) * * const pubKey = await client.getAccountPubKey() * ``` */ export declare function createAvalancheWalletClient(parameters: AvalancheWalletClientConfig): AvalancheWalletClient; //# sourceMappingURL=createAvalancheWalletClient.d.ts.map