@coinbase/agentkit
Version:
Coinbase AgentKit core primitives
58 lines (57 loc) • 2.08 kB
TypeScript
import { z } from "zod";
import { Network } from "../../network";
import { ActionProvider } from "../actionProvider";
import { GetWalletPortfolioSchema } from "./schemas";
/**
* Configuration options for the ZerionActionProvider.
*/
export interface ZerionActionProviderConfig {
/**
* Zerion API Key. Request new at https://zerion.io/api
*/
apiKey?: string;
}
/**
* ZerionActionProvider provides actions for zerion operations.
*
* @description
* This provider is designed to provide EVM-based operations.
* It supports all EVM-based networks.
*/
export declare class ZerionActionProvider extends ActionProvider {
private readonly apiKey;
/**
* Constructor for the ZerionActionProvider.
*
* @param config - The configuration options for the ZerionActionProvider.
*/
constructor(config?: ZerionActionProviderConfig);
/**
* Fetches and summarizes a crypto wallet's portfolio in USD.
*
* @param args - Arguments defined by GetWalletPortfolioSchema
* @returns A promise that resolves to a string describing the action result
*/
getPortfolioOverview(args: z.infer<typeof GetWalletPortfolioSchema>): Promise<string>;
/**
* Retrieves and summarizes a wallet's fungible token holdings.
*
* @param args - Arguments defined by GetWalletPortfolioSchema
* @returns A promise that resolves to a string describing the action result
*/
getFungiblePositions(args: z.infer<typeof GetWalletPortfolioSchema>): Promise<string>;
/**
* Checks if this provider supports the given network.
*
* @param network - The network to check support for
* @returns True if the network is supported
*/
supportsNetwork(network: Network): boolean;
}
/**
* Factory function to create a new ZerionActionProvider instance.
*
* @param config - The configuration options for the ZerionActionProvider.
* @returns A new ZerionActionProvider instance
*/
export declare const zerionActionProvider: (config?: ZerionActionProviderConfig) => ZerionActionProvider;