@mastra/schema-compat
Version:
Tool schema compatibility layer for Mastra.ai
25 lines • 1.36 kB
TypeScript
import type { JSONSchema7 } from '../_types/@types_json-schema/index.d.ts';
import type { ZodType as ZodTypeV3 } from 'zod/v3';
import type { ZodType as ZodTypeV4 } from 'zod/v4';
import type { Targets } from 'zod-to-json-schema';
import type { Schema } from '../json-schema/index.js';
import { SchemaCompatLayer } from '../schema-compatibility.js';
import type { PublicSchema, ZodType } from '../schema.types.js';
import type { StandardSchemaWithJSON } from '../standard-schema/standard-schema.types.js';
export declare class OpenAISchemaCompatLayer extends SchemaCompatLayer {
#private;
getSchemaTarget(): Targets | undefined;
isReasoningModel(): boolean;
shouldApply(): boolean;
processZodType(value: ZodType): ZodType;
/**
* Override to apply the same JSON Schema fixes (additionalProperties, required fields)
* that processToJSONSchema applies. The base implementation skips JSON Schema traversal,
* which causes OpenAI strict mode to reject tool schemas missing additionalProperties: false.
*/
processToAISDKSchema(zodSchema: ZodTypeV3 | ZodTypeV4): Schema;
processToCompatSchema<T>(schema: PublicSchema<T>): StandardSchemaWithJSON<T>;
preProcessJSONNode(schema: JSONSchema7, _parentSchema?: JSONSchema7): void;
postProcessJSONNode(schema: JSONSchema7): void;
}
//# sourceMappingURL=openai.d.ts.map