juice-shop
51 строка · 987.0 Байт
1/*
2* Copyright (c) 2014-2024 Bjoern Kimminich & the OWASP Juice Shop contributors.
3* SPDX-License-Identifier: MIT
4*/
5
6/* jslint node: true */
7import {
8Model,
9type InferAttributes,
10type InferCreationAttributes,
11DataTypes,
12type CreationOptional,
13type Sequelize
14} from 'sequelize'
15
16class Wallet extends Model<
17InferAttributes<Wallet>,
18InferCreationAttributes<Wallet>
19> {
20declare UserId: number
21declare id: CreationOptional<number>
22declare balance: CreationOptional<number>
23}
24
25const WalletModelInit = (sequelize: Sequelize) => {
26Wallet.init(
27{
28UserId: {
29type: DataTypes.INTEGER
30},
31id: {
32type: DataTypes.INTEGER,
33primaryKey: true,
34autoIncrement: true
35},
36balance: {
37type: DataTypes.INTEGER,
38validate: {
39isInt: true
40},
41defaultValue: 0
42}
43},
44{
45tableName: 'Wallets',
46sequelize
47}
48)
49}
50
51export { Wallet as WalletModel, WalletModelInit }
52