import { JSONSchema4, JSONSchema6, JSONSchema7 } from 'json-schema'; const v4_schemas = new Set([ 'http://json-schema.org/schema#', 'https://json-schema.org/schema#', 'http://json-schema.org/schema', 'https://json-schema.org/schema', 'http://json-schema.org/hyper-schema#', 'https://json-schema.org/hyper-schema#', 'http://json-schema.org/hyper-schema', 'https://json-schema.org/hyper-schema', 'http://json-schema.org/draft-04/schema#', 'https://json-schema.org/draft-04/schema#', 'http://json-schema.org/draft-04/schema', 'https://json-schema.org/draft-04/schema', 'http://json-schema.org/draft-04/hyper-schema#', 'https://json-schema.org/draft-04/hyper-schema#', 'http://json-schema.org/draft-04/hyper-schema', 'https://json-schema.org/draft-04/hyper-schema', 'http://json-schema.org/draft-03/schema#', 'https://json-schema.org/draft-03/schema#', 'http://json-schema.org/draft-03/schema', 'https://json-schema.org/draft-03/schema', 'http://json-schema.org/draft-03/hyper-schema#', 'https://json-schema.org/draft-03/hyper-schema#', 'http://json-schema.org/draft-03/hyper-schema', 'https://json-schema.org/draft-03/hyper-schema', ]) export function is_json_schema_draft4(data: unknown) : data is JSONSchema4 { return v4_schemas.has(data?.['$schema']); } const v6_schemas = new Set([ 'http://json-schema.org/schema#', 'https://json-schema.org/schema#', 'http://json-schema.org/schema', 'https://json-schema.org/schema', 'http://json-schema.org/hyper-schema#', 'https://json-schema.org/hyper-schema#', 'http://json-schema.org/hyper-schema', 'https://json-schema.org/hyper-schema', 'http://json-schema.org/draft-06/schema#', 'https://json-schema.org/draft-06/schema#', 'http://json-schema.org/draft-06/schema', 'https://json-schema.org/draft-06/schema', 'http://json-schema.org/draft-06/hyper-schema#', 'https://json-schema.org/draft-06/hyper-schema#', 'http://json-schema.org/draft-06/hyper-schema', 'https://json-schema.org/draft-06/hyper-schema', ]); export function is_json_schema_draft6(data: unknown) : data is JSONSchema6 { return v6_schemas.has(data?.['$schema']); } const v7_schemas = new Set([ 'http://json-schema.org/schema#', 'https://json-schema.org/schema#', 'http://json-schema.org/schema', 'https://json-schema.org/schema', 'http://json-schema.org/hyper-schema#', 'https://json-schema.org/hyper-schema#', 'http://json-schema.org/hyper-schema', 'https://json-schema.org/hyper-schema', 'http://json-schema.org/draft-07/schema#', 'https://json-schema.org/draft-07/schema#', 'http://json-schema.org/draft-07/schema', 'https://json-schema.org/draft-07/schema', 'http://json-schema.org/draft-07/hyper-schema#', 'https://json-schema.org/draft-07/hyper-schema#', 'http://json-schema.org/draft-07/hyper-schema', 'https://json-schema.org/draft-07/hyper-schema', ]); export function is_json_schema_draft7(data: unknown) : data is JSONSchema7 { return v7_schemas.has(data?.['$schema']); }