python-proxy-scraper-client
Version:
A TypeScript client for interacting with a Python proxy scraper service
71 lines (70 loc) • 4.09 kB
TypeScript
import { BaseClient, BaseClientConfig } from '../../shared/base-client';
import { GeckoTerminalPoolData, GeckoTerminalSearchData, GeckoTerminalTrendingPoolsResponse, TokenInfoSnapshotData, TokenInfoSnapshotsResponse, GeckoTerminalCandlesticksResponse, GeckoTerminalPoolInfoWithIncludesResponse, GeckoTerminalNetworksResponse, GeckoTerminalTopHoldersResponse } from './types';
export declare class GeckoTerminalClient extends BaseClient {
constructor(config?: BaseClientConfig);
search(query: string): Promise<GeckoTerminalSearchData>;
/**
* Get detailed information about a specific pool
* @param chain The blockchain network (e.g., 'solana', 'ethereum')
* @param poolAddress The address of the pool
* @returns Pool information and related data
*/
getPoolInfo(network: string, poolAddress: string): Promise<GeckoTerminalPoolData>;
/**
* Get trending pools for a specific network
* @param network The blockchain network (e.g., 'solana', 'ethereum')
* @param include Optional array of related data to include in the response
* @returns List of trending pools and related data
*/
getTrendingPools(network: string, include?: string[]): Promise<GeckoTerminalTrendingPoolsResponse>;
/**
* Get token info snapshots for a specific pool
* @param network The blockchain network (e.g., 'solana', 'ethereum')
* @param poolAddress The address of the pool
* @returns Token info snapshots for the pool
*/
getTokenInfoSnapshots(network: string, poolAddress: string): Promise<TokenInfoSnapshotsResponse>;
getTokenDetails(network: string, tokenAddress: string): Promise<{
tokenAddress: string;
searchResult: GeckoTerminalSearchData;
poolInfo: GeckoTerminalPoolData;
tokenInfoSnapshots: TokenInfoSnapshotData[];
}>;
/**
* Get candlestick data for a specific pool
* @param networkId The network ID (e.g., '168087677')
* @param pairId The pair ID (e.g., '5668054')
* @param resolution Candlestick resolution in minutes (default: 1)
* @param fromTimestamp Start timestamp in seconds (optional)
* @param toTimestamp End timestamp in seconds (optional)
* @param forUpdate Whether this is for an update (default: false)
* @param countBack Number of candlesticks to get (optional)
* @param currency Currency for price data (default: 'usd')
* @param isInverted Whether the price is inverted (default: false)
* @returns Candlestick data for the pool
*/
getCandlesticks(networkId: string, pairId: string, resolution?: number, fromTimestamp?: number, toTimestamp?: number, forUpdate?: boolean, countBack?: number, currency?: string, isInverted?: boolean): Promise<GeckoTerminalCandlesticksResponse>;
/**
* Get detailed information about a specific pool with specific includes
* @param network The blockchain network (e.g., 'solana', 'ethereum')
* @param poolAddress The address of the pool
* @param include Optional array of related data to include in the response
* @param baseToken Base token index (default: 0)
* @returns Pool information and related data
*/
getPoolInfoWithIncludes(network: string, poolAddress: string, include?: string[], baseToken?: number): Promise<GeckoTerminalPoolInfoWithIncludesResponse>;
/**
* Get list of networks with specific fields and sidebar visibility
* @param fields Optional array of fields to include for networks (default: ['name', 'identifier', 'image_url', 'is_new'])
* @param showForSidebar Whether to show networks in sidebar (default: true)
* @returns List of networks with specified fields
*/
getNetworks(): Promise<GeckoTerminalNetworksResponse>;
/**
* Get top holders for a specific token
* @param network The blockchain network (e.g., 'solana', 'ethereum')
* @param tokenAddress The address of the token
* @returns List of top holders for the token
*/
getTopHolders(network: string, tokenAddress: string): Promise<GeckoTerminalTopHoldersResponse>;
}