@coinbase/agentkit
Version:
Coinbase AgentKit core primitives
43 lines (42 loc) • 1.73 kB
TypeScript
import { z } from "zod";
import { ActionProvider } from "../actionProvider";
import { Network } from "../../network";
import { MessariResearchQuestionSchema } from "./schemas";
import { MessariActionProviderConfig } from "./types";
/**
* MessariActionProvider is an action provider for Messari AI toolkit interactions.
* It enables AI agents to ask research questions about crypto markets, protocols, and tokens.
*
* @augments ActionProvider
*/
export declare class MessariActionProvider extends ActionProvider {
private readonly apiKey;
/**
* Constructor for the MessariActionProvider class.
*
* @param config - The configuration options for the MessariActionProvider
*/
constructor(config?: MessariActionProviderConfig);
/**
* Makes a request to the Messari AI API with a research question
*
* @param args - The arguments containing the research question
* @returns A string containing the research results or an error message
*/
researchQuestion(args: z.infer<typeof MessariResearchQuestionSchema>): Promise<string>;
/**
* Checks if the action provider supports the given network.
* Messari research is network-agnostic, so it supports all networks.
*
* @param _ - The network to check
* @returns Always returns true as Messari research is network-agnostic
*/
supportsNetwork(_: Network): boolean;
}
/**
* Factory function to create a new MessariActionProvider instance.
*
* @param config - The configuration options for the MessariActionProvider
* @returns A new instance of MessariActionProvider
*/
export declare const messariActionProvider: (config?: MessariActionProviderConfig) => MessariActionProvider;