import { WalletProvider } from "./walletProviders";
import { Action, ActionProvider } from "./actionProviders";
/**
 * Configuration options for initializing a TensaiKit instance.
 */
export type TensaiKitOptions = {
    walletProvider?: WalletProvider;
    actionProviders?: ActionProvider[];
};
/**
 * TensaiKit – Core SDK class for building autonomous DeFi AI agents on Katana.
 *
 * Provides integration with wallet and action providers to discover and perform
 * supported financial operations on-chain.
 */
export declare class TensaiKit {
    private walletProvider;
    private actionProviders;
    /**
     * Internal constructor for TensaiKit. Use `TensaiKit.from()` to initialize.
     *
     * @param config - Configuration options for the TensaiKit
     * @param config.walletProvider - The wallet provider to use
     * @param config.actionProviders - The action providers to use
     * @param config.actions - The actions to use
     */
    private constructor();
    /**
     * Factory method to asynchronously initialize a TensaiKit instance.
     *
     * @param config - Optional configuration object including wallet and action providers.
     * @param config.walletProvider - The wallet provider to use
     * @param config.actionProviders - The action providers to use
     * @param config.actions - The actions to use
     *
     * @returns A promise that resolves to an initialized TensaiKit instance.
     *
     * @throws If `walletProvider` is not provided in the config.
     */
    static from(config?: TensaiKitOptions): Promise<TensaiKit>;
    /**
     * Retrieves all supported actions from available action providers.
     *
     * This filters out any action providers that do not support the current network
     * and logs a warning for each unsupported provider.
     *
     * @returns An array of supported actions available for execution.
     */
    getActions(): Action[];
}
