import type { FieldConfig } from '@rangka/shared'; import type { ResolvedModel } from '../schema/types.js'; export interface JsonSchemaProperty { type: string; format?: string; description?: string; enum?: readonly string[]; items?: { type: string; }; } export interface JsonSchemaObject { type: 'object'; properties: Record; required?: string[]; } /** Map a Rangka field type to its JSON Schema equivalent. Returns null for relation/computed types. */ export declare function fieldToJsonSchema(config: FieldConfig): JsonSchemaProperty | null; /** Build a full JSON Schema object for a model, including all serializable fields. */ export declare function modelToSchemaComponent(model: ResolvedModel): JsonSchemaObject; /** Schema for creating a record — same as the full schema but without the `id` field. */ export declare function modelToCreateSchema(model: ResolvedModel): JsonSchemaObject; /** Schema for updating a record — same as create (all fields optional, no `id`). */ export declare function modelToUpdateSchema(model: ResolvedModel): JsonSchemaObject; //# sourceMappingURL=openapi-schema.d.ts.map