@mastra/core
Version:
22 lines • 1.4 kB
TypeScript
import type { JsonSchema } from '../json-schema-to-zod.js';
export type SchemaCompatibility = 'compatible' | 'incompatible' | 'unknown';
/**
* Best-effort conversion of a live (Zod / standard) schema to JSON Schema for
* registry-index building. Unconvertible or absent schemas yield `undefined`
* ("unknown"), which schema-flow treats as never-incompatible.
*/
export declare function toJsonSchemaOrUndefined(schema: unknown): JsonSchema | undefined;
export declare function isRecord(value: unknown): value is Record<string, unknown>;
/**
* Structural compatibility of `source` output feeding a `destination` input.
* Recurses through array items and object properties; a destination `required`
* key missing from the source is a proven incompatibility.
*/
export declare function schemaCompatibility(source: unknown, destination: unknown): SchemaCompatibility;
/** Follows a dotted mapping path through object `properties`; `''`/`'.'` is the root. */
export declare function schemaAtPath(schema: JsonSchema | undefined, path: string): JsonSchema | undefined;
/** Plain dotted segments only — no `$.`, brackets, or empty segments. */
export declare function isCanonicalMappingPath(path: string): boolean;
/** Infers a JSON Schema for a literal `{ value }` mapping source. */
export declare function schemaForValue(value: unknown): JsonSchema;
//# sourceMappingURL=schema-utils.d.ts.map