export interface HostedToolSchemaProperty { type?: string | string[]; const?: unknown; enum?: unknown[]; minimum?: number; maximum?: number; exclusiveMinimum?: number | boolean; exclusiveMaximum?: number | boolean; minLength?: number; maxLength?: number; pattern?: string; minItems?: number; maxItems?: number; items?: HostedToolSchemaProperty | HostedToolSchemaProperty[]; required?: string[]; properties?: Record; additionalProperties?: boolean | HostedToolSchemaProperty; anyOf?: HostedToolSchemaProperty[]; oneOf?: HostedToolSchemaProperty[]; allOf?: HostedToolSchemaProperty[]; } export interface HostedToolSchema extends HostedToolSchemaProperty { type?: string | string[]; } export interface HostedToolDefinition { function: { name: string; parameters?: HostedToolSchema; }; } export interface ValidateHostedToolArgumentsOptions { skipEnumProperties?: string[]; coercePrimitives?: boolean; stripUnknownProperties?: boolean; } export interface HostedToolArgumentValidationResult { ok: boolean; errors: string[]; } export interface NormalizeHostedToolArgumentsResult extends HostedToolArgumentValidationResult { cleaned: Record; warnings: string[]; } export declare function validateAndNormalizeHostedToolArguments(tools: HostedToolDefinition[], toolName: string, args: Record, options?: ValidateHostedToolArgumentsOptions): NormalizeHostedToolArgumentsResult; export declare function validateHostedToolArguments(tools: HostedToolDefinition[], toolName: string, args: Record, options?: ValidateHostedToolArgumentsOptions): HostedToolArgumentValidationResult; export declare function assertHostedToolArguments(tools: HostedToolDefinition[], toolName: string, args: Record, options?: ValidateHostedToolArgumentsOptions): void; //# sourceMappingURL=hostedToolValidation.d.ts.map