import { Codex } from '@codex-data/sdk';
import { Token, TokenBalanceResults, TokenPrice } from '@shogun-sdk/money-legos';
import { Balance } from '../lib/codex.js';
/**
 * Client for interacting with Shogun balances API
 */
export declare class ShogunBalancesApiClient {
    readonly sdk: Codex;
    constructor(apiKey: string);
    /**
     * Get EVM wallet balances across multiple chains
     * @param address - Wallet address to check balances for
     */
    getEvmWalletBalance(address: string): Promise<{
        Balances: {
            items: Balance[];
        };
    } | null>;
    /**
     * Get token balances with additional info like prices
     * @param data - Balance data from getEvmWalletBalance
     * @param walletAddress - Wallet address
     * @param fallbackTokens - Optional fallback tokens to include
     */
    getPortfolioTokens(data: Balance[], walletAddress: string, fallbackTokens?: {
        tokenIn?: Token | null;
        tokenOut?: Token | null;
    }): Promise<TokenBalanceResults[]>;
    /**
     * Search for a token by symbol or address
     * @param symbolOrAddress - Symbol or address to search for
     */
    searchToken(symbolOrAddress: string): Promise<{
        symbol: string | null | undefined;
        address: string | undefined;
        decimals: number | undefined;
        chainId: number;
        image: string | null | undefined;
        name: string | null | undefined;
        mcap: string | null | undefined;
    }[]>;
    /**
     * Get Solana token balances for a wallet
     * @param walletAddress - Solana wallet address
     */
    getSolanaTokenBalances(walletAddress: string): Promise<TokenBalanceResults[]>;
    /**
     * Get USD price for a token
     * @param tokenAddress - Token address
     * @param chainId - Chain ID the token is on
     */
    getTokenUSDPrice(tokenAddress: string, chainId: number): Promise<TokenPrice | null>;
    /**
     * Validate if an address is a valid Solana or EVM address
     * @param address - Address to validate
     */
    isValidAddress(address: string): boolean;
    /**
     * Search for a token by address
     * @param options - Options for the search
     */
    searchTokenByAddress(options: {
        addresses: string[];
        network?: number[];
    }): Promise<({
        __typename?: "TokenFilterResult";
        buyCount1?: number | null;
        buyCount4?: number | null;
        buyCount5m?: number | null;
        buyCount12?: number | null;
        buyCount24?: number | null;
        change1?: string | null;
        change4?: string | null;
        change5m?: string | null;
        change12?: string | null;
        change24?: string | null;
        createdAt?: number | null;
        high1?: string | null;
        high4?: string | null;
        high5m?: string | null;
        high12?: string | null;
        high24?: string | null;
        holders?: number | null;
        isScam?: boolean | null;
        lastTransaction?: number | null;
        liquidity?: string | null;
        low1?: string | null;
        low4?: string | null;
        low5m?: string | null;
        low12?: string | null;
        low24?: string | null;
        marketCap?: string | null;
        priceUSD?: string | null;
        quoteToken?: string | null;
        sellCount1?: number | null;
        sellCount4?: number | null;
        sellCount5m?: number | null;
        sellCount12?: number | null;
        sellCount24?: number | null;
        txnCount1?: number | null;
        txnCount4?: number | null;
        txnCount5m?: number | null;
        txnCount12?: number | null;
        txnCount24?: number | null;
        uniqueBuys1?: number | null;
        uniqueBuys4?: number | null;
        uniqueBuys5m?: number | null;
        uniqueBuys12?: number | null;
        uniqueBuys24?: number | null;
        uniqueSells1?: number | null;
        uniqueSells4?: number | null;
        uniqueSells5m?: number | null;
        uniqueSells12?: number | null;
        uniqueSells24?: number | null;
        uniqueTransactions1?: number | null;
        uniqueTransactions4?: number | null;
        uniqueTransactions5m?: number | null;
        uniqueTransactions12?: number | null;
        uniqueTransactions24?: number | null;
        volume1?: string | null;
        volume4?: string | null;
        volume5m?: string | null;
        volume12?: string | null;
        volume24?: string | null;
        volumeChange1?: string | null;
        volumeChange4?: string | null;
        volumeChange5m?: string | null;
        volumeChange12?: string | null;
        volumeChange24?: string | null;
        exchanges?: Array<{
            __typename?: "Exchange";
            address: string;
            color?: string | null;
            exchangeVersion?: string | null;
            iconUrl?: string | null;
            id: string;
            name?: string | null;
            networkId: number;
            tradeUrl?: string | null;
        } | null> | null;
        pair?: {
            __typename?: "Pair";
            address: string;
            createdAt?: number | null;
            exchangeHash: string;
            fee?: number | null;
            id: string;
            networkId: number;
            tickSpacing?: number | null;
            token0: string;
            token1: string;
            pooled?: {
                __typename?: "PooledTokenValues";
                token0?: string | null;
                token1?: string | null;
            } | null;
            token0Data?: {
                __typename?: "EnhancedToken";
                address: string;
                cmcId?: number | null;
                createBlockNumber?: number | null;
                createTransactionHash?: string | null;
                createdAt?: number | null;
                creatorAddress?: string | null;
                decimals: number;
                freezable?: string | null;
                id: string;
                isScam?: boolean | null;
                mintable?: string | null;
                name?: string | null;
                networkId: number;
                symbol?: string | null;
                exchanges?: Array<{
                    __typename?: "Exchange";
                    address: string;
                    color?: string | null;
                    exchangeVersion?: string | null;
                    iconUrl?: string | null;
                    id: string;
                    name?: string | null;
                    networkId: number;
                    tradeUrl?: string | null;
                }> | null;
                info?: {
                    __typename?: "TokenInfo";
                    address: string;
                    circulatingSupply?: string | null;
                    cmcId?: number | null;
                    description?: string | null;
                    id: string;
                    imageBannerUrl?: string | null;
                    imageLargeUrl?: string | null;
                    imageSmallUrl?: string | null;
                    imageThumbUrl?: string | null;
                    isScam?: boolean | null;
                    name?: string | null;
                    networkId: number;
                    symbol: string;
                    totalSupply?: string | null;
                } | null;
                launchpad?: {
                    __typename?: "LaunchpadData";
                    completed?: boolean | null;
                    completedAt?: number | null;
                    completedSlot?: number | null;
                    graduationPercent?: number | null;
                    migrated?: boolean | null;
                    migratedAt?: number | null;
                    migratedPoolAddress?: string | null;
                    migratedSlot?: number | null;
                    poolAddress?: string | null;
                } | null;
                socialLinks?: {
                    __typename?: "SocialLinks";
                    bitcointalk?: string | null;
                    blog?: string | null;
                    coingecko?: string | null;
                    coinmarketcap?: string | null;
                    discord?: string | null;
                    email?: string | null;
                    facebook?: string | null;
                    github?: string | null;
                    instagram?: string | null;
                    linkedin?: string | null;
                    reddit?: string | null;
                    slack?: string | null;
                    telegram?: string | null;
                    twitch?: string | null;
                    twitter?: string | null;
                    website?: string | null;
                    wechat?: string | null;
                    whitepaper?: string | null;
                    youtube?: string | null;
                } | null;
            } | null;
            token1Data?: {
                __typename?: "EnhancedToken";
                address: string;
                cmcId?: number | null;
                createBlockNumber?: number | null;
                createTransactionHash?: string | null;
                createdAt?: number | null;
                creatorAddress?: string | null;
                decimals: number;
                freezable?: string | null;
                id: string;
                isScam?: boolean | null;
                mintable?: string | null;
                name?: string | null;
                networkId: number;
                symbol?: string | null;
                exchanges?: Array<{
                    __typename?: "Exchange";
                    address: string;
                    color?: string | null;
                    exchangeVersion?: string | null;
                    iconUrl?: string | null;
                    id: string;
                    name?: string | null;
                    networkId: number;
                    tradeUrl?: string | null;
                }> | null;
                info?: {
                    __typename?: "TokenInfo";
                    address: string;
                    circulatingSupply?: string | null;
                    cmcId?: number | null;
                    description?: string | null;
                    id: string;
                    imageBannerUrl?: string | null;
                    imageLargeUrl?: string | null;
                    imageSmallUrl?: string | null;
                    imageThumbUrl?: string | null;
                    isScam?: boolean | null;
                    name?: string | null;
                    networkId: number;
                    symbol: string;
                    totalSupply?: string | null;
                } | null;
                launchpad?: {
                    __typename?: "LaunchpadData";
                    completed?: boolean | null;
                    completedAt?: number | null;
                    completedSlot?: number | null;
                    graduationPercent?: number | null;
                    migrated?: boolean | null;
                    migratedAt?: number | null;
                    migratedPoolAddress?: string | null;
                    migratedSlot?: number | null;
                    poolAddress?: string | null;
                } | null;
                socialLinks?: {
                    __typename?: "SocialLinks";
                    bitcointalk?: string | null;
                    blog?: string | null;
                    coingecko?: string | null;
                    coinmarketcap?: string | null;
                    discord?: string | null;
                    email?: string | null;
                    facebook?: string | null;
                    github?: string | null;
                    instagram?: string | null;
                    linkedin?: string | null;
                    reddit?: string | null;
                    slack?: string | null;
                    telegram?: string | null;
                    twitch?: string | null;
                    twitter?: string | null;
                    website?: string | null;
                    wechat?: string | null;
                    whitepaper?: string | null;
                    youtube?: string | null;
                } | null;
            } | null;
        } | null;
        token?: {
            __typename?: "EnhancedToken";
            address: string;
            cmcId?: number | null;
            createBlockNumber?: number | null;
            createTransactionHash?: string | null;
            createdAt?: number | null;
            creatorAddress?: string | null;
            decimals: number;
            freezable?: string | null;
            id: string;
            isScam?: boolean | null;
            mintable?: string | null;
            name?: string | null;
            networkId: number;
            symbol?: string | null;
            exchanges?: Array<{
                __typename?: "Exchange";
                address: string;
                color?: string | null;
                exchangeVersion?: string | null;
                iconUrl?: string | null;
                id: string;
                name?: string | null;
                networkId: number;
                tradeUrl?: string | null;
            }> | null;
            info?: {
                __typename?: "TokenInfo";
                address: string;
                circulatingSupply?: string | null;
                cmcId?: number | null;
                description?: string | null;
                id: string;
                imageBannerUrl?: string | null;
                imageLargeUrl?: string | null;
                imageSmallUrl?: string | null;
                imageThumbUrl?: string | null;
                isScam?: boolean | null;
                name?: string | null;
                networkId: number;
                symbol: string;
                totalSupply?: string | null;
            } | null;
            launchpad?: {
                __typename?: "LaunchpadData";
                completed?: boolean | null;
                completedAt?: number | null;
                completedSlot?: number | null;
                graduationPercent?: number | null;
                migrated?: boolean | null;
                migratedAt?: number | null;
                migratedPoolAddress?: string | null;
                migratedSlot?: number | null;
                poolAddress?: string | null;
            } | null;
            socialLinks?: {
                __typename?: "SocialLinks";
                bitcointalk?: string | null;
                blog?: string | null;
                coingecko?: string | null;
                coinmarketcap?: string | null;
                discord?: string | null;
                email?: string | null;
                facebook?: string | null;
                github?: string | null;
                instagram?: string | null;
                linkedin?: string | null;
                reddit?: string | null;
                slack?: string | null;
                telegram?: string | null;
                twitch?: string | null;
                twitter?: string | null;
                website?: string | null;
                wechat?: string | null;
                whitepaper?: string | null;
                youtube?: string | null;
            } | null;
        } | null;
    } | null)[] | null | undefined>;
    getTokenInfo(tokenAddress: string, chainId: number): Promise<import("@codex-data/sdk/dist/resources/graphql.js").TokenFilterResult>;
}
//# sourceMappingURL=shogun-balances-api-client.d.ts.map