import { BaseClient } from '../../shared/base-client';
import { GmGnMultiWindowTokenInfo, GmGnSmartMoneyWalletData, GmGnTokenCandlesResponse, GmGnTokenHoldersResponse, GmGnTokenSecurityAndLaunchpad, GmGnTokenSocials, GmGnTokenStats, GmGnTokenTraderStatResponse, GmGnTokenWalletTagsStat, GmGnTopBuyersResponse, GmGnTopHolder, GmGnTopTrader, GmGnTrendingTokenResponse, GmGnWalletHoldings } from './types';
export type TimeFrame = '1h' | '24h';
export declare class GmGnClient extends BaseClient {
    constructor(baseUrl?: string);
    getSmartMoneyWalletData(walletAddress: string, chain: string): Promise<GmGnSmartMoneyWalletData>;
    getTopTraders(tokenAddress: string, chain: string): Promise<GmGnTopTrader[]>;
    getTokenSecurityAndLaunchpad(tokenAddress: string, chain: string): Promise<GmGnTokenSecurityAndLaunchpad>;
    getWalletHoldings(walletAddress: string, chain: string): Promise<GmGnWalletHoldings>;
    getTrendingTokens(chain: string, timeframe?: TimeFrame): Promise<GmGnTrendingTokenResponse>;
    getTopBuyers(tokenAddress: string, chain: string): Promise<GmGnTopBuyersResponse>;
    getTopHolders(tokenAddress: string, chain: string): Promise<GmGnTopHolder[]>;
    getMultiWindowTokenInfo(addresses: string[], chain: string): Promise<GmGnMultiWindowTokenInfo[]>;
    getTokenSocials(tokenAddress: string, chain: string): Promise<GmGnTokenSocials>;
    getTokenCandles(tokenAddress: string, chain: string, interval: string, from: number, to: number): Promise<GmGnTokenCandlesResponse>;
    getTokenWalletTagsStat(tokenAddress: string, chain: string): Promise<GmGnTokenWalletTagsStat>;
    getTokenTraderStat(tokenAddress: string, chain: string): Promise<GmGnTokenTraderStatResponse>;
    getTokenStats(tokenAddress: string, chain: string): Promise<GmGnTokenStats>;
    getTokenHolders(tokenAddress: string, chain: string, limit?: number, orderby?: string, direction?: string, tag?: string): Promise<GmGnTokenHoldersResponse>;
    getWalletActivity(wallet: string, chain: string, type?: string[], limit?: number, cost?: number, cursor?: string): Promise<any>;
}
