graphlit-client
Version:
Graphlit API Client for TypeScript
25 lines (24 loc) • 1.6 kB
TypeScript
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;