Skip to main content

Interface: IJsonSchema

JSON schema representation used by the TypeScript conversion utilities.

See​

https://json-schema.org/draft/2020-12/json-schema-core

Indexable​

[key: string]: unknown

Allow additional extension keywords.

See​

Properties​

$schema?​

optional $schema?: string

Dialect URI for the schema document.

See​


$id?​

optional $id?: string

Canonical identifier for the schema resource.

See​


$ref?​

optional $ref?: string

Reference to another schema resource.

See​


$anchor?​

optional $anchor?: string

Location-independent identifier fragment.

See​


$dynamicRef?​

optional $dynamicRef?: string

Runtime-resolved dynamic schema reference.

See​


$dynamicAnchor?​

optional $dynamicAnchor?: string

Dynamic extension point anchor.

See​


$vocabulary?​

optional $vocabulary?: object

Declares vocabularies for a meta-schema dialect.

Index Signature​

[uri: string]: boolean

See​


$comment?​

optional $comment?: string

Maintainer comment for tools.

See​


$defs?​

optional $defs?: object

Reusable inlined schema definitions.

Index Signature​

[id: string]: IJsonSchema

See​


title?​

optional title?: string

Human-friendly schema title.

See​


description?​

optional description?: string

Human-friendly schema description.

See​


type?​

optional type?: string | string[]

Constrain allowed JSON value types.

See​


properties?​

optional properties?: object

Property schemas for object members.

Index Signature​

[id: string]: IJsonSchema

See​


patternProperties?​

optional patternProperties?: object

Property schemas selected by regex on property names.

Index Signature​

[pattern: string]: IJsonSchema

See​


required?​

optional required?: string[]

Object property names that must be present.

See​


dependentSchemas?​

optional dependentSchemas?: object

Property-level schema dependencies.

Index Signature​

[property: string]: IJsonSchema

See​


dependentRequired?​

optional dependentRequired?: object

Property-level required-key dependencies.

Index Signature​

[property: string]: string[]

See​


items?​

optional items?: boolean | IJsonSchema

Schema for array items (or boolean form).

See​


prefixItems?​

optional prefixItems?: IJsonSchema[]

Tuple-style schemas for leading array positions.

See​


additionalProperties?​

optional additionalProperties?: boolean | IJsonSchema

Schema for properties not listed in properties/patternProperties.

See​


anyOf?​

optional anyOf?: IJsonSchema[]

Union where at least one branch schema must match.

See​


allOf?​

optional allOf?: IJsonSchema[]

Intersection where all branch schemas must match.

See​


oneOf?​

optional oneOf?: IJsonSchema[]

Exactly one branch schema must match.

See​


not?​

optional not?: IJsonSchema

Negated schema condition.

See​


if?​

optional if?: IJsonSchema

Condition schema for conditional application.

See​


then?​

optional then?: IJsonSchema

Schema applied when if matches.

See​


else?​

optional else?: IJsonSchema

Schema applied when if does not match.

See​


contains?​

optional contains?: IJsonSchema

Array must contain at least one matching item.

See​


propertyNames?​

optional propertyNames?: IJsonSchema

Schema for validating object property names.

See​


const?​

optional const?: unknown

Single fixed value constraint.

See​


enum?​

optional enum?: unknown[]

Enumerated set of allowed values.

See​


examples?​

optional examples?: unknown[]

Example instances for documentation tooling.

See​


default?​

optional default?: unknown

Suggested default instance value.

See​


format?​

optional format?: string

Semantic format annotation.

See​


pattern?​

optional pattern?: string

Regular expression that strings must match.

See​


contentEncoding?​

optional contentEncoding?: string

Content encoding annotation for string instances.

See​


contentMediaType?​

optional contentMediaType?: string

Media type annotation for string content.

See​


contentSchema?​

optional contentSchema?: IJsonSchema

Schema for the decoded content payload.

See​


readOnly?​

optional readOnly?: boolean

Annotation indicating read-only semantics.

See​


writeOnly?​

optional writeOnly?: boolean

Annotation indicating write-only semantics.

See​


deprecated?​

optional deprecated?: boolean

Annotation indicating deprecation.

See​


discriminator?​

optional discriminator?: object

Non-standard extension used by some tooling ecosystems.

propertyName​

propertyName: string


minLength?​

optional minLength?: number

Minimum length for strings.

See​


maxLength?​

optional maxLength?: number

Maximum length for strings.

See​


minimum?​

optional minimum?: number

Inclusive lower numeric bound.

See​


maximum?​

optional maximum?: number

Inclusive upper numeric bound.

See​


exclusiveMinimum?​

optional exclusiveMinimum?: number

Exclusive lower numeric bound.

See​


exclusiveMaximum?​

optional exclusiveMaximum?: number

Exclusive upper numeric bound.

See​


multipleOf?​

optional multipleOf?: number

Numeric divisor constraint.

See​


minItems?​

optional minItems?: number

Minimum array length.

See​


maxItems?​

optional maxItems?: number

Maximum array length.

See​


uniqueItems?​

optional uniqueItems?: boolean

Require array elements to be unique.

See​


minProperties?​

optional minProperties?: number

Minimum number of object properties.

See​


maxProperties?​

optional maxProperties?: number

Maximum number of object properties.

See​


minContains?​

optional minContains?: number

Minimum number of contains matches.

See​


maxContains?​

optional maxContains?: number

Maximum number of contains matches.

See​


unevaluatedItems?​

optional unevaluatedItems?: boolean | IJsonSchema

Schema applied to array items not yet evaluated by adjacent applicators.

See​


unevaluatedProperties?​

optional unevaluatedProperties?: boolean | IJsonSchema

Schema applied to object properties not yet evaluated by adjacent applicators.

See​