import type { ToolSet } from "ai"; import type { HarnessToolDefinition } from "#harness/execute-tool.js"; import type { HarnessSession, HarnessToolMap } from "#harness/types.js"; import type { WorkflowSandboxLifecycle } from "#shared/workflow-sandbox.js"; type AdvertisedToolSession = Pick; type AdvertisedToolMapInput = { readonly session: AdvertisedToolSession; readonly tools: HarnessToolMap; }; type AdvertisedToolDefinitionsInput = { readonly session: AdvertisedToolSession; readonly tools: readonly HarnessToolDefinition[]; }; type AdvertisedModelToolsInput = { readonly modelTools: ToolSet; readonly session: HarnessSession; readonly tools: HarnessToolMap; readonly workflow?: { readonly lifecycle?: (input: { readonly session: HarnessSession; readonly tools: HarnessToolMap; }) => WorkflowSandboxLifecycle | undefined; readonly maxSubagents?: number; }; }; type AdvertisedModelTools = { readonly harnessTools: HarnessToolMap; readonly modelTools: ToolSet; readonly session: HarnessSession; }; export declare function getAdvertisedTools(input: AdvertisedModelToolsInput): Promise; export declare function getAdvertisedTools(input: AdvertisedToolMapInput): HarnessToolMap; export declare function getAdvertisedTools(input: AdvertisedToolDefinitionsInput): readonly HarnessToolDefinition[]; export {};