import type { BaseChatMessageHistory } from '@langchain/core/chat_history'; import type { modelMapping } from './utils/models.js'; export interface CitreaAgentConfig { privateKey: string; rpcUrl: string; model: keyof typeof modelMapping; openAiApiKey?: string; anthropicApiKey?: string; personalityPrompt?: string; memory?: { getMessageHistory?: (sessionId: string) => BaseChatMessageHistory; }; } export interface TransferCITREAParams { toAddress: string; amount: string; } export interface TransferErc20Params { tokenAddress: string; toAddress: string; amount: string | number; } export interface BurnErc20Params { tokenAddress: string; amount: string | number; } export interface GetErc20BalanceParams { tokenAddress: string; walletAddress?: string; } export interface DeployContractParams { abi: any[]; bytecode: string; args?: any[]; } export declare class CitreaAgent { private privateKey; private rpcUrl; private agentExecutor; private model; private openAiApiKey?; private anthropicApiKey?; private defaultSessionId; private getMessageHistory?; constructor(config: CitreaAgentConfig); getCredentials(): { privateKey: string; openAiApiKey: string; anthropicApiKey: string; }; execute(input: string, options?: { sessionId?: string; }): Promise; transferCITREA(params: TransferCITREAParams): Promise; transferErc20(params: TransferErc20Params): Promise; burnErc20(params: BurnErc20Params): Promise; getCITREABalance(params?: { walletAddress?: string; }): Promise; getErc20Balance(params: GetErc20BalanceParams): Promise; deployContract(params: DeployContractParams): Promise; }