blow-data
Version:
Data access layer for Blow.
37 lines (36 loc) • 1.52 kB
TypeScript
import { IBaseModelConstructor, IModelMetadataOptions, IModelMetadata, IModelPropertyMetadata, IModelRelationMetadata, IModelPropertyMetadataOptions, IModelRelationMetadataOptions } from './interfaces';
export declare class ModelMetadata implements IModelMetadata {
protected _name: string;
protected _pluralName: string;
protected _autoId: boolean;
protected _connectionName: string;
protected _properties: Map<string, IModelPropertyMetadata>;
protected _relations: Map<string, IModelRelationMetadata>;
protected _model: IBaseModelConstructor;
protected _raw: any;
constructor(options: IModelMetadataOptions, properties?: {
[key: string]: IModelPropertyMetadataOptions;
}, relations?: {
[key: string]: IModelRelationMetadataOptions;
});
name: string;
pluralName: string;
autoId: boolean;
properties: IterableIterator<IModelPropertyMetadata>;
relations: IterableIterator<IModelRelationMetadata>;
connectionName: string;
idProperty: IModelPropertyMetadata;
validationSchema: {
[key: string]: any;
};
asyncValidationSchema: {
[key: string]: any;
};
defineProperty(options: IModelPropertyMetadataOptions): void;
buildPropertyId(name: string, type: any): void;
getProperty(name: string): IModelPropertyMetadata;
hasProperty(name: string): boolean;
isAllowedProperty(name: string): boolean;
defineRelation(options: IModelRelationMetadataOptions): void;
apply(model: any): void;
}