UNPKG

breeze-sequelize

Version:
25 lines (24 loc) 1.08 kB
import { MetadataStore } from "breeze-client"; import { ModelCtor, Sequelize } from "sequelize"; /** Map name to Sequelize Model type */ export interface NameModelMap { [modelName: string]: ModelCtor<any>; } /** Maps Breeze metadata to Sequelize Models */ export declare class MetadataMapper { readonly sequelize: Sequelize; readonly metadataStore: MetadataStore; /** Maps entity type name to Sequelize Model */ entityTypeSqModelMap: NameModelMap; /** Maps resource name to Sequelize Model */ resourceNameSqModelMap: NameModelMap; constructor(breezeMetadata: MetadataStore | string | Object, sequelize: Sequelize); /** creates entityTypeSqModelMap and resourceNameSqModelMap */ private _createMaps; /** Adds relationships to the Models based on Breeze NavigationProperties */ private createNavProps; /** Creates a set of Sequelize attributes based on DataProperties */ private mapToSqModelConfig; /** Creates Sequelize column attributes based on a DataProperty */ private mapToSqPropConfig; }