database-builder
Version:
Library to assist in creating and maintaining SQL commands.
43 lines (42 loc) • 2.22 kB
TypeScript
import { PrimaryKeyType } from "./../core/enums/primary-key-type";
import { MapperSettingsModel } from "./mapper-settings-model";
import { ReturnExpression } from "lambda-expression";
import { GetMapper } from "./interface-get-mapper";
import { MetadataTable } from "../metadata-table";
import { DatabaseHelper } from "../database-helper";
export declare class MapperBase implements GetMapper {
private _databaseHelper;
protected _defaultSettings: MapperSettingsModel;
private _mappers;
constructor(_databaseHelper: DatabaseHelper, _defaultSettings?: MapperSettingsModel);
/**
* Auto Mapper Table for Model, primary key and all column initialized in model class
* @param newable Type Model
* @param keyColumn Expression primary key
* @param isAutoIncrement If primary key is autoincrement, default 'false'
* @param readOnly if column is readonly, default 'false'
* @param settings settings mapper, default settings construtor
* @deprecated use {@link mapper} instead.
*/
autoMapper<TReturn, T>(newable: new () => T, keyColumn: ReturnExpression<TReturn, T>, primaryKeyType?: PrimaryKeyType, keyType?: new () => TReturn, readOnly?: boolean, settings?: MapperSettingsModel): MetadataTable<T>;
/**
* Mapper Table for Model
* @param newable Type Model
* @param readOnly if column is readonly, default 'false'
* @deprecated use {@link mapper} with tableName overload instead.
*/
mapper<T>(newable: new () => T, readOnly?: boolean): MetadataTable<T>;
/**
* Mapper Table for Model
* @param newable Type Model
* @param tableName Table Name
* @param readOnly if column is readonly, default 'false'
*/
mapper<T>(newable: new () => T, tableName: string, readOnly?: boolean): MetadataTable<T>;
has<T>(tKey: (new () => T) | string): boolean;
get<T>(tKey: (new () => T) | string): MetadataTable<T>;
getThrowErrorNotFound<T>(tKey: (new () => T) | string): MetadataTable<T>;
forEachMapper(callbackfn: (value: MetadataTable<any>, key: string, map: Map<string, MetadataTable<any>>) => void, thisArg?: any): void;
clear(): void;
private push;
}