mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-01 12:42:58 +08:00
Merge pull request #5004 from VienosNotes/sequelize-patch
Enable Sequelize data types to specify options
This commit is contained in:
@@ -213,4 +213,215 @@ promiseMe = myModelInst.increment({});
|
||||
promiseMe = myModelInst.decrement({}, incrOpts);
|
||||
isBool = myModelInst.equal(myModelInst);
|
||||
isBool = myModelInst.equalsOneOf([myModelInst]);
|
||||
myModelPojo = myModelInst.toJSON();
|
||||
myModelPojo = myModelInst.toJSON();
|
||||
|
||||
|
||||
// data types test
|
||||
var types:any = Sequelize.STRING;
|
||||
types = Sequelize.STRING(12);
|
||||
types = Sequelize.STRING(12, true);
|
||||
types = Sequelize.STRING.BINARY;
|
||||
types = Sequelize.STRING(12).BINARY;
|
||||
types = Sequelize.STRING.BINARY(12);
|
||||
types = Sequelize.STRING({length:12, binary:true});
|
||||
types = Sequelize.STRING({length:12}).BINARY;
|
||||
|
||||
types = Sequelize.CHAR;
|
||||
types = Sequelize.CHAR(12);
|
||||
types = Sequelize.CHAR(12, true);
|
||||
types = Sequelize.CHAR.BINARY;
|
||||
types = Sequelize.CHAR(12).BINARY;
|
||||
types = Sequelize.CHAR.BINARY(12);
|
||||
types = Sequelize.CHAR({length:12, binary:true});
|
||||
types = Sequelize.CHAR({length:12}).BINARY;
|
||||
|
||||
types = Sequelize.TEXT;
|
||||
types = Sequelize.TEXT('tiny');
|
||||
types = Sequelize.TEXT({length:'tiny'});
|
||||
|
||||
types = Sequelize.NUMBER;
|
||||
var numberOptions = {length:12, zerofill:true, decimals:1, precision:1, scale:1, unsigned:true};
|
||||
types = Sequelize.NUMBER(numberOptions);
|
||||
|
||||
types = Sequelize.INTEGER;
|
||||
types = Sequelize.INTEGER.ZEROFILL;
|
||||
types = Sequelize.INTEGER.UNSIGNED;
|
||||
types = Sequelize.INTEGER.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.INTEGER.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.INTEGER(12);
|
||||
types = Sequelize.INTEGER(12).ZEROFILL;
|
||||
types = Sequelize.INTEGER(12).UNSIGNED;
|
||||
types = Sequelize.INTEGER(12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.INTEGER(12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.INTEGER(numberOptions);
|
||||
types = Sequelize.INTEGER(numberOptions).ZEROFILL;
|
||||
types = Sequelize.INTEGER(numberOptions).UNSIGNED;
|
||||
types = Sequelize.INTEGER(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.INTEGER(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.BIGINT;
|
||||
types = Sequelize.BIGINT.ZEROFILL;
|
||||
types = Sequelize.BIGINT.UNSIGNED;
|
||||
types = Sequelize.BIGINT.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.BIGINT.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.BIGINT(12);
|
||||
types = Sequelize.BIGINT(12).ZEROFILL;
|
||||
types = Sequelize.BIGINT(12).UNSIGNED;
|
||||
types = Sequelize.BIGINT(12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.BIGINT(12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.BIGINT(numberOptions);
|
||||
types = Sequelize.BIGINT(numberOptions).ZEROFILL;
|
||||
types = Sequelize.BIGINT(numberOptions).UNSIGNED;
|
||||
types = Sequelize.BIGINT(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.BIGINT(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.FLOAT;
|
||||
types = Sequelize.FLOAT.ZEROFILL;
|
||||
types = Sequelize.FLOAT.UNSIGNED;
|
||||
types = Sequelize.FLOAT.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.FLOAT.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.FLOAT(12);
|
||||
types = Sequelize.FLOAT(12).ZEROFILL;
|
||||
types = Sequelize.FLOAT(12).UNSIGNED;
|
||||
types = Sequelize.FLOAT(12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.FLOAT(12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.FLOAT(12,12);
|
||||
types = Sequelize.FLOAT(12,12).ZEROFILL;
|
||||
types = Sequelize.FLOAT(12,12).UNSIGNED;
|
||||
types = Sequelize.FLOAT(12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.FLOAT(12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.FLOAT(numberOptions);
|
||||
types = Sequelize.FLOAT(numberOptions).ZEROFILL;
|
||||
types = Sequelize.FLOAT(numberOptions).UNSIGNED;
|
||||
types = Sequelize.FLOAT(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.FLOAT(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.DOUBLE;
|
||||
types = Sequelize.DOUBLE.ZEROFILL;
|
||||
types = Sequelize.DOUBLE.UNSIGNED;
|
||||
types = Sequelize.DOUBLE.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DOUBLE(12);
|
||||
types = Sequelize.DOUBLE(12).ZEROFILL;
|
||||
types = Sequelize.DOUBLE(12).UNSIGNED;
|
||||
types = Sequelize.DOUBLE(12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE(12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DOUBLE(12,12);
|
||||
types = Sequelize.DOUBLE(12,12).ZEROFILL;
|
||||
types = Sequelize.DOUBLE(12,12).UNSIGNED;
|
||||
types = Sequelize.DOUBLE(12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE(12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DOUBLE(numberOptions);
|
||||
types = Sequelize.DOUBLE(numberOptions).ZEROFILL;
|
||||
types = Sequelize.DOUBLE(numberOptions).UNSIGNED;
|
||||
types = Sequelize.DOUBLE(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.TIME;
|
||||
types = Sequelize.DATE;
|
||||
types = Sequelize.DATEONLY;
|
||||
types = Sequelize.BOOLEAN;
|
||||
types = Sequelize.NOW;
|
||||
|
||||
types = Sequelize.BLOB;
|
||||
types = Sequelize.BLOB('tiny');
|
||||
types = Sequelize.BLOB({length:'tiny'});
|
||||
|
||||
types = Sequelize.DECIMAL;
|
||||
types = Sequelize.DECIMAL.ZEROFILL;
|
||||
types = Sequelize.DECIMAL.UNSIGNED;
|
||||
types = Sequelize.DECIMAL.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DECIMAL.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DECIMAL(12,12);
|
||||
types = Sequelize.DECIMAL(12,12).ZEROFILL;
|
||||
types = Sequelize.DECIMAL(12,12).UNSIGNED;
|
||||
types = Sequelize.DECIMAL(12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DECIMAL(12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DECIMAL(numberOptions);
|
||||
types = Sequelize.DECIMAL(numberOptions).ZEROFILL;
|
||||
types = Sequelize.DECIMAL(numberOptions).UNSIGNED;
|
||||
types = Sequelize.DECIMAL(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DECIMAL(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.NUMERIC;
|
||||
types = Sequelize.NUMERIC.ZEROFILL;
|
||||
types = Sequelize.NUMERIC.UNSIGNED;
|
||||
types = Sequelize.NUMERIC.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.NUMERIC.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.NUMERIC(12,12);
|
||||
types = Sequelize.NUMERIC(12,12).ZEROFILL;
|
||||
types = Sequelize.NUMERIC(12,12).UNSIGNED;
|
||||
types = Sequelize.NUMERIC(12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.NUMERIC(12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.NUMERIC(numberOptions);
|
||||
types = Sequelize.NUMERIC(numberOptions).ZEROFILL;
|
||||
types = Sequelize.NUMERIC(numberOptions).UNSIGNED;
|
||||
types = Sequelize.NUMERIC(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.NUMERIC(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.UUID;
|
||||
types = Sequelize.UUIDV1;
|
||||
types = Sequelize.UUIDV4;
|
||||
types = Sequelize.HSTORE;
|
||||
types = Sequelize.JSON;
|
||||
types = Sequelize.JSONB;
|
||||
types = Sequelize.VIRTUAL;
|
||||
|
||||
types = Sequelize.ARRAY(Sequelize.INTEGER(12));
|
||||
types = Sequelize.ARRAY({type: Sequelize.BLOB});
|
||||
var obj = {};
|
||||
var isbool:boolean = types.is(obj, obj);
|
||||
|
||||
types = Sequelize.NONE;
|
||||
types = Sequelize.ENUM("one", "two", 'three');
|
||||
|
||||
types = Sequelize.RANGE(Sequelize.INTEGER(12));
|
||||
types = Sequelize.RANGE({subtype: Sequelize.BLOB});
|
||||
|
||||
types = Sequelize.REAL;
|
||||
types = Sequelize.REAL.ZEROFILL;
|
||||
types = Sequelize.REAL.UNSIGNED;
|
||||
types = Sequelize.REAL.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.REAL.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.REAL(12,12);
|
||||
types = Sequelize.REAL(12,12).ZEROFILL;
|
||||
types = Sequelize.REAL(12,12).UNSIGNED;
|
||||
types = Sequelize.REAL(12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.REAL(12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.REAL(numberOptions);
|
||||
types = Sequelize.REAL(numberOptions).ZEROFILL;
|
||||
types = Sequelize.REAL(numberOptions).UNSIGNED;
|
||||
types = Sequelize.REAL(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.REAL(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize.DOUBLE;
|
||||
types = Sequelize.DOUBLE.ZEROFILL;
|
||||
types = Sequelize.DOUBLE.UNSIGNED;
|
||||
types = Sequelize.DOUBLE.ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE.UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DOUBLE(12,12);
|
||||
types = Sequelize.DOUBLE(12,12).ZEROFILL;
|
||||
types = Sequelize.DOUBLE(12,12).UNSIGNED;
|
||||
types = Sequelize.DOUBLE(12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE(12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize.DOUBLE(numberOptions);
|
||||
types = Sequelize.DOUBLE(numberOptions).ZEROFILL;
|
||||
types = Sequelize.DOUBLE(numberOptions).UNSIGNED;
|
||||
types = Sequelize.DOUBLE(numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize.DOUBLE(numberOptions).UNSIGNED.ZEROFILL;
|
||||
|
||||
types = Sequelize["DOUBLE PRECISION"];
|
||||
types = Sequelize["DOUBLE PRECISION"].ZEROFILL;
|
||||
types = Sequelize["DOUBLE PRECISION"].UNSIGNED;
|
||||
types = Sequelize["DOUBLE PRECISION"].ZEROFILL.UNSIGNED;
|
||||
types = Sequelize["DOUBLE PRECISION"].UNSIGNED.ZEROFILL;
|
||||
types = Sequelize["DOUBLE PRECISION"](12,12);
|
||||
types = Sequelize["DOUBLE PRECISION"](12,12).ZEROFILL;
|
||||
types = Sequelize["DOUBLE PRECISION"](12,12).UNSIGNED;
|
||||
types = Sequelize["DOUBLE PRECISION"](12,12).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize["DOUBLE PRECISION"](12,12).UNSIGNED.ZEROFILL;
|
||||
types = Sequelize["DOUBLE PRECISION"](numberOptions);
|
||||
types = Sequelize["DOUBLE PRECISION"](numberOptions).ZEROFILL;
|
||||
types = Sequelize["DOUBLE PRECISION"](numberOptions).UNSIGNED;
|
||||
types = Sequelize["DOUBLE PRECISION"](numberOptions).ZEROFILL.UNSIGNED;
|
||||
types = Sequelize["DOUBLE PRECISION"](numberOptions).UNSIGNED.ZEROFILL;
|
||||
82
sequelize/sequelize.d.ts
vendored
82
sequelize/sequelize.d.ts
vendored
@@ -2725,59 +2725,121 @@ declare module "sequelize"
|
||||
|
||||
interface DataTypeStringBase {
|
||||
BINARY: DataTypeString;
|
||||
(length:number, binary?:boolean):DataTypeString;
|
||||
(options:{length?:number; binary?:boolean;}):DataTypeString;
|
||||
}
|
||||
|
||||
interface DataTypeNumberOptions {
|
||||
length?:number;
|
||||
zerofill?:boolean;
|
||||
decimals?:number;
|
||||
precision?:number;
|
||||
scale?:number;
|
||||
unsigned?:boolean;
|
||||
}
|
||||
|
||||
interface DataTypeNumberBase {
|
||||
UNSIGNED: boolean;
|
||||
ZEROFILL: boolean;
|
||||
UNSIGNED: DataTypeNumberBase;
|
||||
ZEROFILL: DataTypeNumberBase;
|
||||
(options: DataTypeNumberOptions): DataTypeNumberBase;
|
||||
}
|
||||
|
||||
interface DataTypeString extends DataTypeStringBase {
|
||||
}
|
||||
interface DataTypeChar extends DataTypeStringBase {
|
||||
}
|
||||
|
||||
interface DataTypeText {
|
||||
(length:string): DataTypeText;
|
||||
(options:{length:string}): DataTypeText;
|
||||
}
|
||||
|
||||
interface DataTypeInteger extends DataTypeNumberBase {
|
||||
(length:number):DataTypeInteger;
|
||||
(options:DataTypeNumberOptions):DataTypeInteger;
|
||||
}
|
||||
|
||||
interface DataTypeBigInt extends DataTypeNumberBase {
|
||||
(length:number):DataTypeBigInt;
|
||||
(options:DataTypeNumberOptions):DataTypeBigInt;
|
||||
}
|
||||
|
||||
interface DataTypeFloat extends DataTypeNumberBase {
|
||||
(length:number, decimals?:number):DataTypeFloat;
|
||||
(options:DataTypeNumberOptions):DataTypeFloat;
|
||||
}
|
||||
|
||||
interface DataTypeReal extends DataTypeNumberBase {
|
||||
(length:number, decimals?:number):DataTypeReal;
|
||||
(options:DataTypeNumberOptions):DataTypeReal;
|
||||
}
|
||||
|
||||
interface DataTypeDouble extends DataTypeNumberBase {
|
||||
(length:number, decimals?:number):DataTypeDouble;
|
||||
(options:DataTypeNumberOptions):DataTypeDouble;
|
||||
}
|
||||
|
||||
interface DataTypeBlob {
|
||||
(length:string):DataTypeBlob;
|
||||
(options:{length:string}):DataTypeBlob;
|
||||
}
|
||||
interface DataTypeDecimal {
|
||||
PRECISION: number;
|
||||
SCALE: number;
|
||||
|
||||
interface DataTypeDecimal extends DataTypeNumberBase {
|
||||
(precision:number, scale:number):DataTypeDecimal;
|
||||
(options:DataTypeNumberOptions):DataTypeDecimal;
|
||||
}
|
||||
|
||||
interface DataTypeRange {
|
||||
(subtype?:any):DataTypeRange;
|
||||
(options:{subtype:any}):DataTypeRange;
|
||||
}
|
||||
|
||||
interface DataTypeVirtual {
|
||||
}
|
||||
|
||||
interface DataTypeEnum {
|
||||
(...values: Array<string>): DataTypeEnum;
|
||||
}
|
||||
interface DataTypeArray {
|
||||
(type?:any):DataTypeArray;
|
||||
(options:{type:any}):DataTypeArray;
|
||||
is(obj:any, type:any):boolean;
|
||||
}
|
||||
|
||||
interface DataTypeHstore {
|
||||
}
|
||||
|
||||
interface DataTypes {
|
||||
ABSTRACT: string;
|
||||
STRING: DataTypeString;
|
||||
CHAR: DataTypeChar;
|
||||
TEXT: string;
|
||||
TEXT: DataTypeText;
|
||||
NUMBER: DataTypeNumberBase;
|
||||
INTEGER: DataTypeInteger;
|
||||
BIGINT: DataTypeBigInt;
|
||||
DATE: string;
|
||||
BOOLEAN: string;
|
||||
FLOAT: DataTypeFloat;
|
||||
TIME:string;
|
||||
DATE: string;
|
||||
DATEONLY:string;
|
||||
BOOLEAN: string;
|
||||
NOW: string;
|
||||
BLOB: DataTypeBlob;
|
||||
DECIMAL: DataTypeDecimal;
|
||||
NUMERIC: DataTypeDecimal;
|
||||
UUID: string;
|
||||
UUIDV1: string;
|
||||
UUIDV4: string;
|
||||
HSTORE: DataTypeHstore;
|
||||
JSON: string;
|
||||
JSONB: string;
|
||||
VIRTUAL: DataTypeVirtual;
|
||||
ARRAY: DataTypeArray;
|
||||
NONE: DataTypeVirtual;
|
||||
ENUM: DataTypeEnum;
|
||||
ARRAY: DataTypeArray;
|
||||
HSTORE: DataTypeHstore;
|
||||
RANGE:DataTypeRange;
|
||||
REAL: DataTypeReal;
|
||||
DOUBLE: DataTypeDouble;
|
||||
"DOUBLE PRECISION": DataTypeDouble;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user