import type { Client } from '../Client/client'; import type { GetGlobalLogoNetworkData, MarketsResponse, NetworksInfoResponse } from '../Client'; import type { ChainGateGlobal } from '../ChainGate/ChainGate'; /** * Union of all network identifiers accepted by the `/global/logo/{network}` * endpoint, including networks beyond those with dedicated `/evm` or `/utxo` * endpoints (e.g. Mantle, Celo, Moonbeam, Berachain, etc.). */ export type GlobalLogoNetwork = GetGlobalLogoNetworkData['path']['network']; /** * Explorer for the ChainGate global endpoints. * * Provides access to cross-network market data, real-time network information, * and network logos — including networks that don't have dedicated `/evm` or * `/utxo` endpoints. * * @example * ```ts * const global = cg.exploreGlobal(); * * // Crypto prices and fiat exchange rates * const markets = await global.getMarkets(); * * // Real-time info for all supported networks * const info = await global.getNetworksInfo(); * * // Logo URL for any supported network * const url = global.getNetworkLogoUrl('berachain'); * ``` */ export declare class GlobalExplorer { /** @internal */ private readonly client; /** @internal */ private readonly baseUrl; /** @internal */ private readonly apiKey; /** @internal */ private readonly global; constructor(client: Client, baseUrl: string, apiKey: string, global: ChainGateGlobal); /** * Returns cryptocurrency prices and fiat exchange rates for all supported * networks. * * Results are served from a TTL cache (60 s) shared with the rest of the * library, so repeated calls within the TTL window are essentially free. */ getMarkets(): Promise; /** * Returns real-time information for all supported EVM networks, including * many that don't have dedicated `/evm` endpoints (e.g. Mantle, Celo, * Moonbeam, Berachain, etc.). * * Includes block times, gas usage, and fee predictions. */ getNetworksInfo(): Promise; /** * Returns the URL endpoint for the SVG logo of the given network. * * Accepts any network supported by the global logo endpoint, including * networks without dedicated `/evm` or `/utxo` endpoints. */ getNetworkLogoUrl(network: GlobalLogoNetwork): string; }