import type { ToolSet } from "ai";
import type { HarnessToolDefinition } from "#harness/execute-tool.js";
import type { HarnessSession, HarnessToolMap } from "#harness/types.js";
type AdvertisedToolSession = Pick<HarnessSession, "rootSessionId" | "taskId">;
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;
};
type AdvertisedModelTools = {
    readonly harnessTools: HarnessToolMap;
    readonly modelTools: ToolSet;
    readonly session: HarnessSession;
};
export declare function getAdvertisedTools(input: AdvertisedModelToolsInput): Promise<AdvertisedModelTools>;
export declare function getAdvertisedTools(input: AdvertisedToolMapInput): HarnessToolMap;
export declare function getAdvertisedTools(input: AdvertisedToolDefinitionsInput): readonly HarnessToolDefinition[];
export {};
