tsbase
Version:
Base class libraries for TypeScript
21 lines (20 loc) • 974 B
TypeScript
import { Result } from '../Patterns/Result/Result';
import { IValidation } from '../Patterns/Validator/module';
export declare abstract class Model<T> {
IsTemplate: boolean;
static Metadata: Record<string, Record<string, any>>;
static GetKeyFromMemberFunc(member: (func: any) => any): string;
constructor(IsTemplate?: boolean);
get ModelKeys(): Array<string>;
LabelFor(member: ((func: T) => any) | string): string;
DescriptionFor(member: ((func: T) => any) | string): string;
InputTypeFor(member: ((func: T) => any) | string): string;
OptionsFor(member: ((func: T) => any) | string): Record<string, string>;
ValidationsFor(member: ((func: T) => any) | string): Array<IValidation<Model<T>>>;
Validate(member?: (func: T) => any): Result<null>;
ValidateField(member: (func: any) => any): Result<null>;
private validateModel;
private validateDataModelArray;
private fieldIsArrayOfDataModel;
private getMetadata;
}