Skip to content

Commit 1219705

Browse files
authored
Merge branch 'master' into infer-bigint
2 parents 0415bdd + 6547ffd commit 1219705

File tree

3 files changed

+16
-3
lines changed

3 files changed

+16
-3
lines changed

src/model/table/table-options.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import {ModelOptions} from "sequelize";
1+
import {Model, ModelOptions} from "sequelize";
22

3-
export interface TableOptions extends ModelOptions {
3+
export interface TableOptions<M extends Model = Model> extends ModelOptions<M> {
44
modelName?: string;
55

66
/**

src/model/table/table.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import {TableOptions} from "./table-options";
22
import {Model} from "../model/model";
33
import {setModelName, addOptions} from "../shared/model-service";
44

5-
export function Table(options: TableOptions): Function;
5+
export function Table<M extends Model = Model>(options: TableOptions<M>): Function;
66
export function Table(target: Function): void;
77
export function Table(arg: any): void | Function {
88

test/types/model.spec.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,16 @@ export class User extends Model {
1010
@Column(DataType.ARRAY(DataType.STRING))
1111
myCol: string[];
1212
}
13+
14+
@Table<Post>({
15+
hooks: {
16+
beforeUpdate: (instance) => {
17+
// without generic random will result in error
18+
instance.random = 4;
19+
},
20+
},
21+
})
22+
export class Post extends Model {
23+
@Column(DataType.INTEGER)
24+
random: number;
25+
}

0 commit comments

Comments
 (0)