diff options
Diffstat (limited to 'tools/node_modules/eslint/node_modules/ajv/lib/ajv.d.ts')
-rw-r--r-- | tools/node_modules/eslint/node_modules/ajv/lib/ajv.d.ts | 126 |
1 files changed, 78 insertions, 48 deletions
diff --git a/tools/node_modules/eslint/node_modules/ajv/lib/ajv.d.ts b/tools/node_modules/eslint/node_modules/ajv/lib/ajv.d.ts index b687f78147..b815fda5a0 100644 --- a/tools/node_modules/eslint/node_modules/ajv/lib/ajv.d.ts +++ b/tools/node_modules/eslint/node_modules/ajv/lib/ajv.d.ts @@ -3,7 +3,7 @@ declare var ajv: { new (options?: ajv.Options): ajv.Ajv; ValidationError: ValidationError; MissingRefError: MissingRefError; - $dataMetaSchema: Object; + $dataMetaSchema: object; } declare namespace ajv { @@ -11,51 +11,51 @@ declare namespace ajv { /** * Validate data using schema * Schema will be compiled and cached (using serialized JSON as key, [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize by default). - * @param {String|Object|Boolean} schemaKeyRef key, ref or schema object + * @param {string|object|Boolean} schemaKeyRef key, ref or schema object * @param {Any} data to be validated * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`). */ - validate(schemaKeyRef: Object | string | boolean, data: any): boolean | Thenable<any>; + validate(schemaKeyRef: object | string | boolean, data: any): boolean | Thenable<any>; /** * Create validating function for passed schema. - * @param {Object|Boolean} schema schema object + * @param {object|Boolean} schema schema object * @return {Function} validating function */ - compile(schema: Object | boolean): ValidateFunction; + compile(schema: object | boolean): ValidateFunction; /** * Creates validating function for passed schema with asynchronous loading of missing schemas. * `loadSchema` option should be a function that accepts schema uri and node-style callback. * @this Ajv - * @param {Object|Boolean} schema schema object + * @param {object|Boolean} schema schema object * @param {Boolean} meta optional true to compile meta-schema; this parameter can be skipped * @param {Function} callback optional node-style callback, it is always called with 2 parameters: error (or null) and validating function. * @return {Thenable<ValidateFunction>} validating function */ - compileAsync(schema: Object | boolean, meta?: Boolean, callback?: (err: Error, validate: ValidateFunction) => any): Thenable<ValidateFunction>; + compileAsync(schema: object | boolean, meta?: Boolean, callback?: (err: Error, validate: ValidateFunction) => any): Thenable<ValidateFunction>; /** * Adds schema to the instance. - * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored. - * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`. + * @param {object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored. + * @param {string} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`. * @return {Ajv} this for method chaining */ - addSchema(schema: Array<Object> | Object, key?: string): Ajv; + addSchema(schema: Array<object> | object, key?: string): Ajv; /** * Add schema that will be used to validate other schemas * options in META_IGNORE_OPTIONS are alway set to false - * @param {Object} schema schema object - * @param {String} key optional schema key + * @param {object} schema schema object + * @param {string} key optional schema key * @return {Ajv} this for method chaining */ - addMetaSchema(schema: Object, key?: string): Ajv; + addMetaSchema(schema: object, key?: string): Ajv; /** * Validate schema - * @param {Object|Boolean} schema schema to validate + * @param {object|Boolean} schema schema to validate * @return {Boolean} true if schema is valid */ - validateSchema(schema: Object | boolean): boolean; + validateSchema(schema: object | boolean): boolean; /** * Get compiled schema from the instance by `key` or `ref`. - * @param {String} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id). + * @param {string} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id). * @return {Function} schema validating function (with property `schema`). */ getSchema(keyRef: string): ValidateFunction; @@ -64,44 +64,44 @@ declare namespace ajv { * If no parameter is passed all schemas but meta-schemas are removed. * If RegExp is passed all schemas with key/id matching pattern but meta-schemas are removed. * Even if schema is referenced by other schemas it still can be removed as other schemas have local references. - * @param {String|Object|RegExp|Boolean} schemaKeyRef key, ref, pattern to match key/ref or schema object + * @param {string|object|RegExp|Boolean} schemaKeyRef key, ref, pattern to match key/ref or schema object * @return {Ajv} this for method chaining */ - removeSchema(schemaKeyRef?: Object | string | RegExp | boolean): Ajv; + removeSchema(schemaKeyRef?: object | string | RegExp | boolean): Ajv; /** * Add custom format - * @param {String} name format name - * @param {String|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid) + * @param {string} name format name + * @param {string|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid) * @return {Ajv} this for method chaining */ addFormat(name: string, format: FormatValidator | FormatDefinition): Ajv; /** * Define custom keyword * @this Ajv - * @param {String} keyword custom keyword, should be a valid identifier, should be different from all standard, custom and macro keywords. - * @param {Object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`. + * @param {string} keyword custom keyword, should be a valid identifier, should be different from all standard, custom and macro keywords. + * @param {object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`. * @return {Ajv} this for method chaining */ addKeyword(keyword: string, definition: KeywordDefinition): Ajv; /** * Get keyword definition * @this Ajv - * @param {String} keyword pre-defined or custom keyword. - * @return {Object|Boolean} custom keyword definition, `true` if it is a predefined keyword, `false` otherwise. + * @param {string} keyword pre-defined or custom keyword. + * @return {object|Boolean} custom keyword definition, `true` if it is a predefined keyword, `false` otherwise. */ - getKeyword(keyword: string): Object | boolean; + getKeyword(keyword: string): object | boolean; /** * Remove keyword * @this Ajv - * @param {String} keyword pre-defined or custom keyword. + * @param {string} keyword pre-defined or custom keyword. * @return {Ajv} this for method chaining */ removeKeyword(keyword: string): Ajv; /** * Convert array of error message objects to string - * @param {Array<Object>} errors optional array of validation errors, if not passed errors from the instance are used. - * @param {Object} options optional options with properties `separator` and `dataVar`. - * @return {String} human readable string with all errors descriptions + * @param {Array<object>} errors optional array of validation errors, if not passed errors from the instance are used. + * @param {object} options optional options with properties `separator` and `dataVar`. + * @return {string} human readable string with all errors descriptions */ errorsText(errors?: Array<ErrorObject>, options?: ErrorsTextOptions): string; errors?: Array<ErrorObject>; @@ -115,17 +115,17 @@ declare namespace ajv { ( data: any, dataPath?: string, - parentData?: Object | Array<any>, + parentData?: object | Array<any>, parentDataProperty?: string | number, - rootData?: Object | Array<any> + rootData?: object | Array<any> ): boolean | Thenable<any>; - schema?: Object | boolean; + schema?: object | boolean; errors?: null | Array<ErrorObject>; - refs?: Object; + refs?: object; refVal?: Array<any>; - root?: ValidateFunction | Object; + root?: ValidateFunction | object; $async?: true; - source?: Object; + source?: object; } interface Options { @@ -136,19 +136,19 @@ declare namespace ajv { uniqueItems?: boolean; unicode?: boolean; format?: string; - formats?: Object; + formats?: object; unknownFormats?: true | string[] | 'ignore'; - schemas?: Array<Object> | Object; + schemas?: Array<object> | object; schemaId?: '$id' | 'id'; missingRefs?: true | 'ignore' | 'fail'; extendRefs?: true | 'ignore' | 'fail'; - loadSchema?: (uri: string, cb?: (err: Error, schema: Object) => void) => Thenable<Object | boolean>; + loadSchema?: (uri: string, cb?: (err: Error, schema: object) => void) => Thenable<object | boolean>; removeAdditional?: boolean | 'all' | 'failing'; useDefaults?: boolean | 'shared'; coerceTypes?: boolean | 'array'; async?: boolean | string; transpile?: string | ((code: string) => string); - meta?: boolean | Object; + meta?: boolean | object; validateSchema?: boolean | 'log'; addUsedSchema?: boolean; inlineRefs?: boolean | number; @@ -160,7 +160,7 @@ declare namespace ajv { messages?: boolean; sourceCode?: boolean; processCode?: (code: string) => string; - cache?: Object; + cache?: object; } type FormatValidator = string | RegExp | ((data: string) => boolean | Thenable<any>); @@ -176,27 +176,57 @@ declare namespace ajv { async?: boolean; $data?: boolean; errors?: boolean | string; - metaSchema?: Object; + metaSchema?: object; // schema: false makes validate not to expect schema (ValidateFunction) schema?: boolean; modifying?: boolean; valid?: boolean; // one and only one of the following properties should be present validate?: SchemaValidateFunction | ValidateFunction; - compile?: (schema: any, parentSchema: Object) => ValidateFunction; - macro?: (schema: any, parentSchema: Object) => Object | boolean; - inline?: (it: Object, keyword: string, schema: any, parentSchema: Object) => string; + compile?: (schema: any, parentSchema: object, it: CompilationContext) => ValidateFunction; + macro?: (schema: any, parentSchema: object, it: CompilationContext) => object | boolean; + inline?: (it: CompilationContext, keyword: string, schema: any, parentSchema: object) => string; + } + + interface CompilationContext { + level: number; + dataLevel: number; + schema: any; + schemaPath: string; + baseId: string; + async: boolean; + opts: Options; + formats: { + [index: string]: FormatDefinition | undefined; + }; + compositeRule: boolean; + validate: (schema: object) => boolean; + util: { + copy(obj: any, target?: any): any; + toHash(source: string[]): { [index: string]: true | undefined }; + equal(obj: any, target: any): boolean; + getProperty(str: string): string; + schemaHasRules(schema: object, rules: any): string; + escapeQuotes(str: string): string; + toQuotedString(str: string): string; + getData(jsonPointer: string, dataLevel: number, paths: string[]): string; + escapeJsonPointer(str: string): string; + unescapeJsonPointer(str: string): string; + escapeFragment(str: string): string; + unescapeFragment(str: string): string; + }; + self: Ajv; } interface SchemaValidateFunction { ( schema: any, data: any, - parentSchema?: Object, + parentSchema?: object, dataPath?: string, - parentData?: Object | Array<any>, + parentData?: object | Array<any>, parentDataProperty?: string | number, - rootData?: Object | Array<any> + rootData?: object | Array<any> ): boolean | Thenable<any>; errors?: Array<ErrorObject>; } @@ -217,7 +247,7 @@ declare namespace ajv { message?: string; // These are added with the `verbose` option. schema?: any; - parentSchema?: Object; + parentSchema?: object; data?: any; } |