@sjsf/ajv8-validator
Version:
The ajv-8 based validator for svelte-jsonschema-form
25 lines (24 loc) • 1.8 kB
TypeScript
import type { Ajv, ErrorObject, ValidateFunction } from "ajv";
import type { AsyncFieldValueValidator, AsyncFormValueValidator, FieldValueValidator, FormValueValidator, Validator } from "@sjsf/form";
import { type ErrorsTransformerOptions } from "../errors.js";
export type CompiledValidateFunction = {
(this: Ajv | any, data: any): boolean;
} & Pick<ValidateFunction, "errors">;
export type ValidateFunctions = {
[key: string]: CompiledValidateFunction;
};
export interface ValidatorOptions {
validateFunctions: ValidateFunctions;
augmentSuffix?: string;
}
export declare function createValidator(options: ValidatorOptions): Validator;
export interface FormValueValidatorOptions extends ValidatorOptions, ErrorsTransformerOptions {
}
export declare function createFormValueValidator(options: FormValueValidatorOptions): FormValueValidator<ErrorObject>;
export declare function createFieldValueValidator(options: ValidatorOptions): FieldValueValidator<ErrorObject>;
export declare function createAsyncFormValueValidator(options: FormValidatorOptions): AsyncFormValueValidator<ErrorObject>;
export declare function createAsyncFieldValueValidator(options: ValidatorOptions): AsyncFieldValueValidator<ErrorObject>;
export interface FormValidatorOptions extends ValidatorOptions, FormValueValidatorOptions {
}
export declare function createFormValidator(options: FormValidatorOptions): Validator & FormValueValidator<ErrorObject<string, Record<string, any>, unknown>> & FieldValueValidator<ErrorObject<string, Record<string, any>, unknown>>;
export declare function createAsyncFormValidator(options: FormValidatorOptions): Validator & AsyncFormValueValidator<ErrorObject<string, Record<string, any>, unknown>> & AsyncFieldValueValidator<ErrorObject<string, Record<string, any>, unknown>>;