jsonschema

  • Version 1.4.1
  • Published
  • 81.8 kB
  • No dependencies
  • MIT license

Install

npm i jsonschema
yarn add jsonschema
pnpm add jsonschema

Overview

A fast and easy to use JSON Schema validator

Index

Functions

function validate

validate: (instance: any, schema: any, options?: Options) => ValidatorResult;

    Classes

    class SchemaError

    class SchemaError extends Error {}

      constructor

      constructor(msg: string, schema: Schema);

        property message

        message: string;

          property schema

          schema: Schema;

            class ValidationError

            class ValidationError {}

              constructor

              constructor(
              message?: string,
              instance?: any,
              schema?: Schema,
              propertyPath?: any,
              name?: string,
              argument?: any
              );

                property argument

                argument: any;

                  property instance

                  instance: any;

                    property message

                    message: string;

                      property name

                      name: string;

                        property path

                        path: (string | number)[];

                          property property

                          property: string;

                            property schema

                            schema: string | Schema;

                              property stack

                              stack: string;

                                method toString

                                toString: () => string;

                                  class Validator

                                  class Validator {}

                                    constructor

                                    constructor();

                                      property attributes

                                      attributes: { [property: string]: CustomProperty };

                                        property customFormats

                                        customFormats: { [formatName: string]: CustomFormat };

                                          property schemas

                                          schemas: { [id: string]: Schema };

                                            property unresolvedRefs

                                            unresolvedRefs: string[];

                                              method addSchema

                                              addSchema: (schema?: Schema, uri?: string) => Schema | void;

                                                method validate

                                                validate: (
                                                instance: any,
                                                schema: Schema,
                                                options?: Options,
                                                ctx?: SchemaContext
                                                ) => ValidatorResult;

                                                  class ValidatorResult

                                                  class ValidatorResult {}

                                                    constructor

                                                    constructor(instance: any, schema: Schema, options: Options, ctx: SchemaContext);

                                                      property disableFormat

                                                      disableFormat: boolean;

                                                        property errors

                                                        errors: ValidationError[];

                                                          property instance

                                                          instance: any;

                                                            property propertyPath

                                                            propertyPath: string;

                                                              property schema

                                                              schema: Schema;

                                                                property throwError

                                                                throwError: boolean;

                                                                  property valid

                                                                  valid: boolean;

                                                                    method addError

                                                                    addError: (detail: string | ErrorDetail) => ValidationError;

                                                                      method toString

                                                                      toString: () => string;

                                                                        Interfaces

                                                                        interface CustomFormat

                                                                        interface CustomFormat {}

                                                                          call signature

                                                                          (input: any): boolean;

                                                                            interface CustomProperty

                                                                            interface CustomProperty {}

                                                                              call signature

                                                                              (instance: any, schema: Schema, options: Options, ctx: SchemaContext):
                                                                              | string
                                                                              | ValidatorResult;

                                                                                interface ErrorDetail

                                                                                interface ErrorDetail {}

                                                                                  property argument

                                                                                  argument: string;

                                                                                    property message

                                                                                    message: string;

                                                                                      property name

                                                                                      name: string;

                                                                                        interface Options

                                                                                        interface Options {}

                                                                                          property allowUnknownAttributes

                                                                                          allowUnknownAttributes?: boolean;

                                                                                            property base

                                                                                            base?: string;

                                                                                              property nestedErrors

                                                                                              nestedErrors?: boolean;

                                                                                                property preValidateProperty

                                                                                                preValidateProperty?: PreValidatePropertyFunction;

                                                                                                  property required

                                                                                                  required?: boolean;

                                                                                                    property rewrite

                                                                                                    rewrite?: RewriteFunction;

                                                                                                      property skipAttributes

                                                                                                      skipAttributes?: string[];

                                                                                                        property throwAll

                                                                                                        throwAll?: boolean;

                                                                                                          property throwError

                                                                                                          throwError?: boolean;

                                                                                                            property throwFirst

                                                                                                            throwFirst?: boolean;

                                                                                                              interface PreValidatePropertyFunction

                                                                                                              interface PreValidatePropertyFunction {}

                                                                                                                call signature

                                                                                                                (
                                                                                                                instance: any,
                                                                                                                key: string,
                                                                                                                schema: Schema,
                                                                                                                options: Options,
                                                                                                                ctx: SchemaContext
                                                                                                                ): any;

                                                                                                                  interface RewriteFunction

                                                                                                                  interface RewriteFunction {}

                                                                                                                    call signature

                                                                                                                    (instance: any, schema: Schema, options: Options, ctx: SchemaContext): any;

                                                                                                                      interface Schema

                                                                                                                      interface Schema {}

                                                                                                                        property 'enum'

                                                                                                                        enum?: any[];

                                                                                                                          property $id

                                                                                                                          $id?: string;

                                                                                                                            property $ref

                                                                                                                            $ref?: string;

                                                                                                                              property $schema

                                                                                                                              $schema?: string;

                                                                                                                                property additionalItems

                                                                                                                                additionalItems?: boolean | Schema;

                                                                                                                                  property additionalProperties

                                                                                                                                  additionalProperties?: boolean | Schema;

                                                                                                                                    property allOf

                                                                                                                                    allOf?: Schema[];

                                                                                                                                      property anyOf

                                                                                                                                      anyOf?: Schema[];

                                                                                                                                        property const

                                                                                                                                        const?: any;

                                                                                                                                          property definitions

                                                                                                                                          definitions?: {
                                                                                                                                          [name: string]: Schema;
                                                                                                                                          };

                                                                                                                                            property dependencies

                                                                                                                                            dependencies?: {
                                                                                                                                            [name: string]: Schema | string[];
                                                                                                                                            };

                                                                                                                                              property description

                                                                                                                                              description?: string;

                                                                                                                                                property else

                                                                                                                                                else?: Schema;

                                                                                                                                                  property exclusiveMaximum

                                                                                                                                                  exclusiveMaximum?: number | boolean;

                                                                                                                                                    property exclusiveMinimum

                                                                                                                                                    exclusiveMinimum?: number | boolean;

                                                                                                                                                      property format

                                                                                                                                                      format?: string;

                                                                                                                                                        property id

                                                                                                                                                        id?: string;

                                                                                                                                                          property if

                                                                                                                                                          if?: Schema;

                                                                                                                                                            property items

                                                                                                                                                            items?: Schema | Schema[];

                                                                                                                                                              property maximum

                                                                                                                                                              maximum?: number;

                                                                                                                                                                property maxItems

                                                                                                                                                                maxItems?: number;

                                                                                                                                                                  property maxLength

                                                                                                                                                                  maxLength?: number;

                                                                                                                                                                    property maxProperties

                                                                                                                                                                    maxProperties?: number;

                                                                                                                                                                      property minimum

                                                                                                                                                                      minimum?: number;

                                                                                                                                                                        property minItems

                                                                                                                                                                        minItems?: number;

                                                                                                                                                                          property minLength

                                                                                                                                                                          minLength?: number;

                                                                                                                                                                            property minProperties

                                                                                                                                                                            minProperties?: number;

                                                                                                                                                                              property multipleOf

                                                                                                                                                                              multipleOf?: number;

                                                                                                                                                                                property not

                                                                                                                                                                                not?: Schema;

                                                                                                                                                                                  property oneOf

                                                                                                                                                                                  oneOf?: Schema[];

                                                                                                                                                                                    property pattern

                                                                                                                                                                                    pattern?: string | RegExp;

                                                                                                                                                                                      property patternProperties

                                                                                                                                                                                      patternProperties?: {
                                                                                                                                                                                      [name: string]: Schema;
                                                                                                                                                                                      };

                                                                                                                                                                                        property properties

                                                                                                                                                                                        properties?: {
                                                                                                                                                                                        [name: string]: Schema;
                                                                                                                                                                                        };

                                                                                                                                                                                          property required

                                                                                                                                                                                          required?: string[] | boolean;

                                                                                                                                                                                            property then

                                                                                                                                                                                            then?: Schema;

                                                                                                                                                                                              property title

                                                                                                                                                                                              title?: string;

                                                                                                                                                                                                property type

                                                                                                                                                                                                type?: string | string[];

                                                                                                                                                                                                  property uniqueItems

                                                                                                                                                                                                  uniqueItems?: boolean;

                                                                                                                                                                                                    interface SchemaContext

                                                                                                                                                                                                    interface SchemaContext {}

                                                                                                                                                                                                      property base

                                                                                                                                                                                                      base: string;

                                                                                                                                                                                                        property makeChild

                                                                                                                                                                                                        makeChild: (schema: Schema, key: string) => SchemaContext;

                                                                                                                                                                                                          property options

                                                                                                                                                                                                          options: Options;

                                                                                                                                                                                                            property propertyPath

                                                                                                                                                                                                            propertyPath: string;

                                                                                                                                                                                                              property schema

                                                                                                                                                                                                              schema: Schema;

                                                                                                                                                                                                                property schemas

                                                                                                                                                                                                                schemas: { [base: string]: Schema };

                                                                                                                                                                                                                  Package Files (1)

                                                                                                                                                                                                                  Dependencies (0)

                                                                                                                                                                                                                  No dependencies.

                                                                                                                                                                                                                  Dev Dependencies (6)

                                                                                                                                                                                                                  Peer Dependencies (0)

                                                                                                                                                                                                                  No peer dependencies.

                                                                                                                                                                                                                  Badge

                                                                                                                                                                                                                  To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

                                                                                                                                                                                                                  You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/jsonschema.

                                                                                                                                                                                                                  • Markdown
                                                                                                                                                                                                                    [![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/jsonschema)
                                                                                                                                                                                                                  • HTML
                                                                                                                                                                                                                    <a href="https://www.jsdocs.io/package/jsonschema"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>