import { Account, Address, Chain, ParseAccount, Prettify, RpcSchema, Transport } from "viem"; import { XChainRpcSchema } from "../methods/xChain/xChainRpcSchema.js"; import { AvalancheCoreClient, CreateAvalancheCoreClientErrorType } from "./createAvalancheCoreClient.js"; import { XChainActions } from "./decorators/xChain.js"; import { AvalancheClientConfig } from "./types/createAvalancheClient.js"; export type XChainClientConfig = Prettify>; export type XChainClient = Prettify>; export type CreateXChainClientErrorType = CreateAvalancheCoreClientErrorType; /** * Creates an X-Chain (Exchange Chain) Client with a given transport configured for a Chain. * * The X-Chain Client is an interface to interact with the Avalanche Exchange Chain through JSON-RPC API methods. * The Exchange Chain is responsible for: * - Creating and trading digital assets * - Managing asset transfers * - Handling atomic swaps * - Creating and managing custom assets * * @param parameters - {@link XChainClientConfig} * @returns An X-Chain Client. {@link XChainClient} * * @example * ```ts * import { createXChainClient} from '@avalanche-sdk/client' * import { avalanche } from '@avalanche-sdk/client/chains' * * const client = createXChainClient({ * chain: avalanche, * transport: { * type: "http", * }, * }) * * // Get asset information * const asset = await client.getAssetDescription({ assetID: 'asset-id' }) * * // Get balance for an address * const balance = await client.getBalance({ address: 'X-avax...' }) * ``` */ export declare function createXChainClient(parameters: XChainClientConfig): XChainClient, rpcSchema>; //# sourceMappingURL=createXChainClient.d.ts.map