import type { AgentToolResult } from '@earendil-works/pi-agent-core'; import type { Config } from '../../config/schema.js'; import type { ExtensionHookRunner } from '../../extensions/index.js'; import { ComposioSessionsAdapter } from '../../connectors/composio-sessions.js'; import type { ExternalToolDescriptor, ExternalToolExecutionContext, ExternalToolProvider, ExternalToolSearchHit } from './types.js'; type CurrentContext = { channel: string; chatId: string; sessionKey: string; } | null; export interface ComposioToolProviderDeps { getConfig: () => Config | undefined; getCurrentContext: () => CurrentContext; agentId?: string; adapter?: ComposioSessionsAdapter; hookRunner?: ExtensionHookRunner; } export declare class ComposioToolProvider implements ExternalToolProvider { private readonly deps; readonly source: "composio"; private readonly adapter; constructor(deps: ComposioToolProviderDeps); search(query: string): Promise; describe(toolRef: string): Promise; execute(toolRef: string, args: Record, approvalId: string | undefined, _context: ExternalToolExecutionContext): Promise>>; private availableInstallations; private resolve; } export {};