import { type typeofschema } from "https://deno.land/x/enzastdlib@v0.0.4/schema/mod.ts";
Converts a constant JSON Schema object into TypeScript typing at compile-time.
WARNING: Depending on the complexity of your JSON Schemas, your type checking and continous integration suites might experience slowdowns.
WARNING: It is recommended to put schema-related code into a seperate TypeScript file (ex.
*.schema.ts
) to allow your IDE to cache the resulting typings.Otherwise you might experience slowdowns with your IDE.
Examples
Example 1
Example 1
import type { JSONSchema, typeofschema } from 'https://deno.land/x/enzastdlib/schema/mod.ts';
const MY_OBJECT_SCHEMA = {
type: 'object',
additionalProperties: {
type: 'string',
},
} as const satisfies JSONSchema;
type MyObjectType = typeofschema<typeof MY_OBJECT_SCHEMA>; // `{ [x: string]: string; }`
Type Parameters
Schema extends JSONSchema
definition: FromSchema<Schema>