import Ajv from 'ajv'; import { ValidationError } from './Error'; declare type Options = { allErrors?: boolean; rootDir?: string; verbose?: boolean; format?: 'full' | 'empty'; metaValidation?: boolean; }; declare type Meta = { asset?: boolean; dimensions?: { width: number; height: number; }; square?: boolean; contentTypePattern?: string; contentTypeHuman?: string; }; declare type AssetField = { fieldPath: string; data: string; meta: Meta; }; export { SchemerError, ValidationError, ErrorCodes, ErrorCode } from './Error'; export default class Schemer { options: Options; ajv: Ajv.Ajv; schema: object; rootDir: string; manualValidationErrors: ValidationError[]; constructor(schema: object, options?: Options); _formatAjvErrorMessage({ keyword, dataPath, params, parentSchema, data, message, }: Ajv.ErrorObject): ValidationError; getErrors(): ValidationError[]; _throwOnErrors(): void; validateAll(data: any): Promise; validateAssetsAsync(data: any): Promise; validateSchemaAsync(data: any): Promise; _validateSchemaAsync(data: any): void; _validateAssetsAsync(data: any): Promise; _validateImageAsync({ fieldPath, data, meta }: AssetField): Promise; _validateAssetAsync({ fieldPath, data, meta }: AssetField): Promise; validateProperty(fieldPath: string, data: any): Promise; validateName(name: string): Promise; validateSlug(slug: string): Promise; validateSdkVersion(version: string): Promise; validateIcon(iconPath: string): Promise; }