/** * Chain types + `fetchChains()` — the SDK-side surface for the * `GET /api/x402/facilitator/chains` endpoint on `api.compose.market`. * * The API is the single source of truth for all chain definitions. * The SDK only exports types + a thin fetch function so that consumers * (web app, external integrators) can query the live chain table at * runtime without shipping a duplicate that can drift out of sync. */ export type EvmNetworkId = `eip155:${number}`; export type SolanaNetworkId = `solana:${string}`; export type NetworkId = EvmNetworkId | SolanaNetworkId; export interface FacilitatorChain { /** Human-readable name. */ name: string; /** The CAIP-2 network identifier. */ network: NetworkId; /** The namespace of the network, either "eip155" or "solana". */ namespace: "eip155" | "solana"; /** The short name of the network. */ shortName?: string; /** Indicates whether the network is a testnet. */ isTestnet: boolean; /** The URL of the block explorer. */ explorer: string; /** Optional query string required to select the correct explorer cluster. */ explorerQuery?: string; /** The RPC endpoint URL for this chain. */ rpcUrl: string; assetAddress: string; schemes: readonly ("exact" | "upto" | "batch-settlement")[]; asset: "USDC" | "USDT"; decimals: 6; } export interface FacilitatorChainsResponse { chains: FacilitatorChain[]; defaultNetwork: NetworkId; } export interface FetchChainsOptions { /** API base URL. Defaults to `https://api.compose.market`. */ baseUrl?: string; /** Custom fetch implementation. */ fetch?: typeof fetch; /** Abort signal. */ signal?: AbortSignal; } export declare function fetchChains(options?: FetchChainsOptions): Promise; //# sourceMappingURL=index.d.ts.map