pharos-agent-kit
Version:
Connect AI Agents to Pharos protocols
48 lines • 2.69 kB
TypeScript
import { Address, PublicClient, WalletClient } from "viem";
import { Config } from "../types";
import { PharosWalletProvider } from "../wallet-providers";
/**
* Main class for interacting with Pharos blockchain
* Provides a unified interface for token operations, NFT management, trading and more
*
* @class PharosAgentKit
* @property {PublicClient} connection - Pharos RPC connection
* @property {PharosWalletProvider} wallet - Wallet provider for signing transactions
* @property {Address} wallet_address - Address of the wallet
* @property {Config} config - Configuration object
*/
export declare class PharosAgentKit {
connection: PublicClient;
publicClient: PublicClient;
walletClient: WalletClient;
wallet: PharosWalletProvider;
wallet_address: Address;
config: Config | undefined;
rpcUrl: string;
privateKey: string;
constructor(private_key: string, rpc_url: string, config?: Config);
getBalance(token_address?: Address | undefined): Promise<number>;
transfer(to: Address, amount: number, mint?: Address): Promise<string>;
fetchTokenPriceByChainId(tokenAddr: string, chainId: number): Promise<string>;
fetchTokenPriceByChainSlug(tokenAddr: string, chainSlug: string): Promise<string>;
fetchTokenPrices(chainTokenIdentifiers: string[]): Promise<string>;
fetchProtocolTvl(slug: string): Promise<string>;
getCoingeckoLatestPools(): Promise<any>;
getTokenPriceDataUsingCoingecko(...tokenAddresses: string[]): Promise<any>;
getTopGainersOnCoingecko(duration?: "1h" | "24h" | "7d" | "14d" | "30d" | "60d" | "1y", noOfCoins?: 300 | 500 | 1000 | "all"): Promise<any>;
getCoingeckoTrendingPools(duration?: "5m" | "1h" | "24h" | "6h"): Promise<any>;
getTrendingTokensOnCoingecko(): Promise<any>;
getTrendingTokens(): Promise<any>;
getTrendingTokensUsingElfaAi(): Promise<any>;
pingElfaAiApi(): Promise<any>;
getElfaAiApiKeyStatus(): Promise<any>;
getSmartMentions(limit?: number, offset?: number): Promise<any>;
getSmartTwitterAccountStats(username: string): Promise<any>;
getTopMentionsByTicker(ticker: string, timeWindow?: string, page?: number, pageSize?: number, includeAccountDetails?: boolean): Promise<any>;
searchMentionsByKeywords(keywords: string, from: number, to: number, limit?: number): Promise<any>;
getERC721Balance(token_address: Address): Promise<string>;
transferERC721(to: Address, amount: number, tokenAddress: Address, tokenId: string): Promise<string>;
mintERC721(to: Address, tokenAddress: Address, tokenId: bigint): Promise<string>;
getTokenDataByTicker(ticker: string): Promise<any | undefined>;
}
//# sourceMappingURL=index.d.ts.map