1 | import Ajv from 'ajv';
|
2 | import { ValidationError } from './Error';
|
3 | declare type Options = {
|
4 | allErrors?: boolean;
|
5 | rootDir?: string;
|
6 | verbose?: boolean;
|
7 | format?: 'full' | 'empty';
|
8 | metaValidation?: boolean;
|
9 | };
|
10 | declare type Meta = {
|
11 | asset?: boolean;
|
12 | dimensions?: {
|
13 | width: number;
|
14 | height: number;
|
15 | };
|
16 | square?: boolean;
|
17 | contentTypePattern?: string;
|
18 | contentTypeHuman?: string;
|
19 | };
|
20 | declare type AssetField = {
|
21 | fieldPath: string;
|
22 | data: string;
|
23 | meta: Meta;
|
24 | };
|
25 | export { SchemerError, ValidationError, ErrorCodes, ErrorCode } from './Error';
|
26 | export default class Schemer {
|
27 | options: Options;
|
28 | ajv: Ajv.Ajv;
|
29 | schema: object;
|
30 | rootDir: string;
|
31 | manualValidationErrors: ValidationError[];
|
32 | constructor(schema: object, options?: Options);
|
33 | _formatAjvErrorMessage({ keyword, dataPath, params, parentSchema, data, message, }: Ajv.ErrorObject): ValidationError;
|
34 | getErrors(): ValidationError[];
|
35 | _throwOnErrors(): void;
|
36 | validateAll(data: any): Promise<void>;
|
37 | validateAssetsAsync(data: any): Promise<void>;
|
38 | validateSchemaAsync(data: any): Promise<void>;
|
39 | _validateSchemaAsync(data: any): void;
|
40 | _validateAssetsAsync(data: any): Promise<void>;
|
41 | _validateImageAsync({ fieldPath, data, meta }: AssetField): Promise<void>;
|
42 | _validateAssetAsync({ fieldPath, data, meta }: AssetField): Promise<void>;
|
43 | validateProperty(fieldPath: string, data: any): Promise<void>;
|
44 | validateName(name: string): Promise<void>;
|
45 | validateSlug(slug: string): Promise<void>;
|
46 | validateSdkVersion(version: string): Promise<void>;
|
47 | validateIcon(iconPath: string): Promise<void>;
|
48 | }
|