import type { JsonObjectSchema } from '../types';
import { UserError } from '../errors';
type PreparedOpenAIStrictToolSchema<T> = {
    schema: T;
    normalizeInput: (value: unknown) => unknown;
};
export declare function isJsonSchemaDepthError(error: unknown): error is UserError;
export declare function toOpenAIStrictToolSchema<T extends JsonObjectSchema<any>>(schema: T): T;
export declare function prepareOpenAIStrictToolSchema<T extends JsonObjectSchema<any>>(schema: T): PreparedOpenAIStrictToolSchema<T>;
export declare function assertOpenAIStrictToolSchemaPreservesOpenObjects(schema: JsonObjectSchema<any>): void;
export declare function stripStrictNullsForJsonSchema(schema: unknown, value: unknown): unknown;
export declare function stripStrictNullsForZodSchema(schema: unknown, value: unknown): unknown;
export {};
