import type { ToolRouterSessionSearchResponse } from "@composio/core";
import type { AgentTool } from "../../types.js";
import { ComposioService } from "./client.js";
import type { ComposioToolFactoryOptions } from "./types.js";
declare const composioToolsSchema: import("@sinclair/typebox").TObject<{
    query: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    toolkits: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    toolSlugs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    authConfigIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
    cursor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>;
export interface ComposioToolsToolDetails {
    mode: "search" | "list";
    userId: string;
    searchResults?: ToolRouterSessionSearchResponse;
    listResults?: Awaited<ReturnType<ComposioService["listRawTools"]>>;
}
export declare function createComposioToolsTool(options?: ComposioToolFactoryOptions): AgentTool<typeof composioToolsSchema, ComposioToolsToolDetails>;
export declare const composioToolsTool: AgentTool<import("@sinclair/typebox").TObject<{
    query: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    toolkits: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    toolSlugs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    authConfigIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
    cursor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>, ComposioToolsToolDetails>;
export {};
