alliance-bundle
Version:
Alliance Framework bundle
223 lines (214 loc) • 7.39 kB
TypeScript
// Generated by dts-bundle v0.4.3
// Dependencies for this module:
// ../../../sequelize
declare module 'alliance/db' {
export { Table } from 'alliance/db/decorators/db/table';
export { hasOne, hasMany, belongsTo, belongsToMany } from 'alliance/db/decorators/db/relationships';
export { DAO } from 'alliance/db/decorators/db/DAO';
export { AbstractDAO } from 'alliance/db/components/database/DAO/abstractDAO';
export { Query } from 'alliance/db/components/database/database/query';
let db: any;
export { db };
export { Column } from 'alliance/db/components/database/database/columns';
}
declare module 'alliance/db/decorators/db/table' {
export function Table(target: any): (t: any) => void;
}
declare module 'alliance/db/decorators/db/relationships' {
export function hasMany(target: Function, key?: string): (t: any, k: any) => void;
export function hasOne(target: Function, key?: string): (t: any, k: any) => void;
export function belongsTo(target: Function, key?: string): (t: any, k: any) => void;
export function belongsToMany(target: Function, key?: string): (t: any, k: any) => void;
}
declare module 'alliance/db/decorators/db/DAO' {
export function DAO(table: any): (target: any) => any;
}
declare module 'alliance/db/components/database/DAO/abstractDAO' {
import * as Sequelize from 'sequelize';
export abstract class AbstractDAO<T> {
schema: T;
Query: Sequelize.Model<T, any>;
}
}
declare module 'alliance/db/components/database/database/query' {
export function Query(table: any): any;
}
declare module 'alliance/db/components/database/database/columns' {
import * as sequelize from 'sequelize';
export interface DataTypeAbstract {
dialectTypes: string;
}
export interface DataTypeAbstractString<T> extends DataTypeAbstract {
(target: any, key: string): any;
(options?: {
length: number;
}): T;
(length: number): T;
BINARY: T;
}
export interface DataTypeString extends DataTypeAbstractString<any> {
}
export interface DataTypeChar extends DataTypeAbstractString<any> {
}
export interface DataTypeText extends DataTypeAbstract {
(target: any, key: string): any;
(options?: {
length: string;
}): any;
(length: string): any;
}
export interface DataTypeAbstractNumber<T> extends DataTypeAbstract {
UNSIGNED: T;
ZEROFILL: T;
}
export interface DataTypeNumber extends DataTypeAbstractNumber<any> {
}
export interface DataTypeInteger extends DataTypeAbstractNumber<any> {
(target: any, key: string): any;
(options?: {
length: number;
}): any;
(length: number): any;
}
export interface DataTypeBigInt extends DataTypeAbstractNumber<any> {
(target: any, key: string): any;
(options?: {
length: number;
}): any;
(length: number): any;
}
export interface DataTypeFloat extends DataTypeAbstractNumber<any> {
(target: any, key: string): any;
(options?: {
length: number;
decimals?: number;
}): any;
(length: number, decimals?: number): any;
}
export interface DataTypeReal extends DataTypeAbstractNumber<any> {
(target: any, key: string): any;
(options?: {
length: number;
decimals?: number;
}): any;
(length: number, decimals?: number): any;
}
export interface DataTypeDouble extends DataTypeAbstractNumber<any> {
(target: any, key: string): any;
(options?: {
length: number;
decimals?: number;
}): any;
(length: number, decimals?: number): any;
}
export interface DataTypeDecimal extends DataTypeAbstractNumber<any> {
(target: any, key: string): any;
(options?: {
precision: number;
scale?: number;
}): any;
(precision: number, scale?: number): any;
}
export interface DataTypeBoolean extends DataTypeAbstract {
}
export interface DataTypeTime extends DataTypeAbstract {
}
export interface DataTypeDate extends DataTypeAbstract {
}
export interface DataTypeDateOnly extends DataTypeAbstract {
}
export interface DataTypeHStore extends DataTypeAbstract {
}
export interface DataTypeJSONType extends DataTypeAbstract {
}
export interface DataTypeJSONB extends DataTypeAbstract {
}
export interface DataTypeNow extends DataTypeAbstract {
}
export interface DataTypeBlob extends DataTypeAbstract {
(target: any, key: string): any;
(options?: {
length: string;
}): any;
(length: string): any;
}
export interface DataTypeRange extends DataTypeAbstract {
(target: any, key: string): any;
(options?: {
subtype: DataTypeAbstract;
}): any;
(subtype: DataTypeAbstract): any;
}
export interface DataTypeUUID extends DataTypeAbstract {
}
export interface DataTypeUUIDv1 extends DataTypeAbstract {
}
export interface DataTypeUUIDv4 extends DataTypeAbstract {
}
export interface DataTypeVirtual extends DataTypeAbstract {
}
export interface DataTypeEnum extends DataTypeAbstract {
(target: any, key: string): any;
(options?: {
values: string | string[];
}): any;
(values: string | string[]): any;
(...args: string[]): any;
}
export interface DataTypeArray extends DataTypeAbstract {
(target: any, key: string): any;
(options: {
type: DataTypeAbstract;
}): any;
(type: DataTypeAbstract): any;
}
export interface DataTypeGeometry extends DataTypeAbstract {
(target: any, key: string): any;
(type: string, srid?: number): any;
}
export interface ColumnsInterface {
string: DataTypeString;
integer: DataTypeInteger;
boolean: DataTypeInteger;
char: DataTypeChar;
text: DataTypeText;
bigint: DataTypeBigInt;
float: DataTypeFloat;
real: DataTypeReal;
double: DataTypeDouble;
decimal: DataTypeDecimal;
time: DataTypeTime;
date: DataTypeDate;
dateonly: DataTypeDateOnly;
hstore: DataTypeHStore;
json: DataTypeJSONType;
jsonb: DataTypeJSONB;
now: DataTypeNow;
blob: DataTypeBlob;
range: DataTypeRange;
uuid: DataTypeUUID;
uuidv4: DataTypeUUIDv4;
virtual: DataTypeVirtual;
enum: DataTypeEnum;
array: DataTypeArray;
geometry: DataTypeGeometry;
}
export interface ColumnOptions {
type: string | DataTypeAbstract;
unique?: boolean | string | {
name: string;
msg: string;
};
primaryKey?: boolean;
autoIncrement?: boolean;
comment?: string;
references?: sequelize.DefineAttributeColumnReferencesOptions;
onUpdate?: string;
onDelete?: string;
get?: () => any;
set?: (val: any) => void;
validate?: sequelize.DefineValidateOptions;
values?: Array<string>;
}
export let Column: ColumnsInterface;
}