UNPKG

@mastra/schema-compat

Version:

Tool schema compatibility layer for Mastra.ai

25 lines 1.36 kB
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