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;
