UNPKG

@themost/data

Version:

MOST Web Framework Codename Blueshift - Data module

87 lines (70 loc) 2.53 kB
// MOST Web Framework 2.0 Codename Blueshift BSD-3-Clause license Copyright (c) 2017-2022, THEMOST LP All rights reserved import {BeforeSaveEventListener, DataContext, DataEventArgs} from "./types"; export declare interface DataValidationResult { code: string; message: string; innerMessage?: string; } export declare class DataValidator { setContext(context: DataContext): void; getContext(): DataContext; target: any; } export declare class PatternValidator extends DataValidator { constructor(pattern: string); pattern: number; message?: string; validateSync(val:any): DataValidationResult; } export declare class MinLengthValidator extends DataValidator { constructor(length: number); minLength: number; message?: string; validateSync(val:any): DataValidationResult; } export declare class MaxLengthValidator extends DataValidator { constructor(length: number); maxLength: number; message?: string; validateSync(val:any): DataValidationResult; } export declare class MinValueValidator extends DataValidator { constructor(min: any); minValue: any; message?: string; validateSync(val:any): DataValidationResult; } export declare class MaxValueValidator extends DataValidator { constructor(max: any); maxValue: any; message?: string; validateSync(val:any): DataValidationResult; } export declare class RangeValidator extends DataValidator { constructor(min: any,max: any); minValue: any; maxValue: any; message?: string; validateSync(val:any): DataValidationResult; } export declare class DataTypeValidator extends DataValidator { constructor(type: string); type: string; message?: string; validateSync(val:any): DataValidationResult; } export declare class RequiredValidator extends DataValidator { constructor(); validateSync(val:any): DataValidationResult; } export declare class JsonTypeValidator extends DataValidator { constructor(type: string, state: number); validate(value: unknown, callback?: (err?: Error, res?: DataValidationResult) => void): void; } export declare class DataValidatorListener implements BeforeSaveEventListener { beforeSave(event: DataEventArgs, callback: (err?: Error) => void): void; } export declare class AsyncExecuteValidator extends DataValidator { constructor(model: any, validator: (event: { model: any, target: any, value: any }) => Promise<boolean>) validate(val:any): Promise<DataValidationResult>; }