import type { ChatSystemMessage } from "../../chat/types.js"; /** A tool the model may load but cannot yet call. */ export interface DeferredToolSummary { readonly name: string; readonly description?: string; } /** Returns whether instructions already carry a hosted runtime tool inventory. */ export declare function hasRuntimeToolInventory(instructions: string | readonly ChatSystemMessage[]): boolean; /** * Applies runtime tool inventory. * * `deferredTools` names capabilities the model is authorized to use but cannot * call yet. Listing them is what keeps an authorized tool from being invisible: * a tool absent from both the provider tool list and this inventory cannot even * be searched for, because the model has no reason to believe it exists. */ export declare function withRuntimeToolInventory(instructions: string | readonly ChatSystemMessage[], toolNames: readonly string[], deferredTools?: readonly DeferredToolSummary[]): ChatSystemMessage[]; /** Flatten system instructions helper. */ export declare function flattenSystemInstructions(instructions: readonly ChatSystemMessage[]): string; //# sourceMappingURL=tool-inventory.d.ts.map