import '../base-BihKcqDY.cjs';
import { I as Workflow, z as ToolAction } from '../base-QJ_GwQxQ.cjs';
import '@opentelemetry/api';
import '../index-CquI0inB.cjs';
import 'stream';
import 'pino';
import '@opentelemetry/sdk-trace-base';
import 'ai';
import '../types-BtMyV38I.cjs';
import 'sift';
import 'zod';
import 'json-schema';
import '../runtime-context/index.cjs';
import 'xstate';
import 'node:events';
import '../vector/index.cjs';
import '../vector/filter/index.cjs';
import '../tts/index.cjs';
import 'events';
import '../deployer/index.cjs';
import '../bundler/index.cjs';
import 'hono';
import 'hono/cors';
import 'hono-openapi';
import 'ai/test';

declare class Integration<ToolsParams = void, ApiClient = void> {
    name: string;
    private workflows;
    constructor();
    /**
     * Workflows
     */
    registerWorkflow(name: string, fn: Workflow): void;
    getWorkflows({ serialized }: {
        serialized?: boolean;
    }): Record<string, Workflow>;
    /**
     * TOOLS
     */
    getStaticTools(_params?: ToolsParams): Record<string, ToolAction<any, any, any>>;
    getTools(_params?: ToolsParams): Promise<Record<string, ToolAction<any, any, any>>>;
    getApiClient(): Promise<ApiClient>;
}

declare abstract class OpenAPIToolset {
    abstract readonly name: string;
    abstract readonly tools: Record<string, ToolAction<any, any, any>>;
    authType: string;
    constructor();
    protected get toolSchemas(): any;
    protected get toolDocumentations(): Record<string, {
        comment: string;
        doc?: string;
    }>;
    protected get baseClient(): any;
    getApiClient(): Promise<any>;
    protected _generateIntegrationTools<T>(): T;
}

export { Integration, OpenAPIToolset };
