import { ChainConfig } from '../types/index.js';
import '../console-BoAIxikK.js';

/**
 * ONE SDK Configuration
 *
 * Chain data is fetched from ONE Engine API - no duplicates needed here.
 * Engine is the single source of truth for 200+ EVM chains.
 */

interface OneConfig {
    oneEngineUrl: string;
    oneClientId: string;
    oneSecretKey?: string;
    supabaseUrl?: string;
    supabaseAnonKey?: string;
    thirdwebClientId?: string;
}
declare function initOneSDK(options: Partial<OneConfig>): void;
declare function getConfig(): OneConfig;
declare function isInitialized(): boolean;
declare function getEngineUrl(): string;
/**
 * Fetch chains from ONE Engine API
 * Engine is the source of truth for 200+ EVM chains
 */
declare function fetchChains(options?: {
    category?: 'mainnet' | 'l2' | 'testnet' | 'gaming' | 'recommended';
    smartWallet?: boolean;
    limit?: number;
}): Promise<ChainConfig[]>;
/**
 * Get all supported chains (cached)
 */
declare function getChains(): Promise<ChainConfig[]>;
/**
 * Get chain by ID
 */
declare function getChainById(chainId: number): Promise<ChainConfig | undefined>;
/**
 * Get chain by name/shortName
 */
declare function getChainByName(name: string): Promise<ChainConfig | undefined>;
/**
 * Get recommended chains for UI display
 */
declare function getRecommendedChains(): Promise<ChainConfig[]>;
/**
 * Get chains with smart wallet support
 */
declare function getSmartWalletChains(): Promise<ChainConfig[]>;
declare const CHAIN_IDS: {
    readonly ETHEREUM: 1;
    readonly POLYGON: 137;
    readonly BSC: 56;
    readonly ARBITRUM: 42161;
    readonly OPTIMISM: 10;
    readonly BASE: 8453;
    readonly AVALANCHE: 43114;
    readonly ZKSYNC: 324;
    readonly LINEA: 59144;
    readonly SCROLL: 534352;
    readonly BLAST: 81457;
    readonly SEPOLIA: 11155111;
    readonly BASE_SEPOLIA: 84532;
    readonly ARBITRUM_SEPOLIA: 421614;
};
declare const DEFAULT_CHAIN_ID: 8453;
declare const TOKEN_NAMES: Record<string, string>;
declare const COINGECKO_IDS: Record<string, string>;
declare const CHAIN_CONFIGS: Record<string, ChainConfig>;
declare const SUPPORTED_CHAINS: string[];
declare function getChainConfig(chain: string): ChainConfig | undefined;

export { CHAIN_CONFIGS, CHAIN_IDS, COINGECKO_IDS, DEFAULT_CHAIN_ID, type OneConfig, SUPPORTED_CHAINS, TOKEN_NAMES, fetchChains, getChainById, getChainByName, getChainConfig, getChains, getConfig, getEngineUrl, getRecommendedChains, getSmartWalletChains, initOneSDK, isInitialized };
