UNPKG

graphlit-client

Version:
25 lines (24 loc) 1.6 kB
import type { ConversationToolCall, ToolDefinitionInput } from "../generated/graphql-types.js"; import type { ToolVisibilityResult } from "../types/agent.js"; export interface ProviderToolChoicePolicy { requireTool: boolean; requiredToolName?: string; } export declare class RequiredToolChoiceError extends Error { readonly code = "required_tool_choice_violation"; readonly requiredToolName?: string; readonly actualToolNames: string[]; constructor(args: { message: string; requiredToolName?: string; actualToolNames?: string[]; }); } export declare function normalizeToolVisibilityResult(fallbackTools: ToolDefinitionInput[] | undefined, result: ToolDefinitionInput[] | ToolVisibilityResult | undefined): ToolVisibilityResult; export declare function deriveProviderToolChoicePolicy(visibility: ToolVisibilityResult): ProviderToolChoicePolicy | undefined; export declare function assertRequiredToolChoiceConfig(visibility: ToolVisibilityResult): void; export declare function validateRequiredToolChoice(visibility: ToolVisibilityResult, toolCalls: ConversationToolCall[] | undefined): void; export declare function toOpenAIChatToolChoice(policy: ProviderToolChoicePolicy | undefined): unknown | undefined; export declare function toOpenAIResponsesToolChoice(policy: ProviderToolChoicePolicy | undefined): unknown | undefined; export declare function toAnthropicToolChoice(policy: ProviderToolChoicePolicy | undefined): unknown | undefined; export declare function toGoogleToolConfig(policy: ProviderToolChoicePolicy | undefined): unknown | undefined;