import * as DataType from 'sequelize' export default { tableName: 'folders', modelName: 'Folder', options: { timestamps: true, paranoid: true, createdAt: 'createdAt', updatedAt: 'updatedAt', deletedAt: 'deletedAt', }, rawAttributes: { id: { allowNull: true, primaryKey: true, type: DataType.UUIDV4, }, name: { allowNull: false, type: DataType.STRING, }, parentId: { allowNull: true, type: DataType.UUIDV4, }, createdAt: { allowNull: false, type: DataType.DATE, }, updatedAt: { allowNull: false, type: DataType.DATE, }, deletedAt: { allowNull: true, type: DataType.DATE, }, } } // import 'reflect-metadata' // import { // AllowNull, // BelongsTo, // Column, // CreatedAt, // DeletedAt, // ForeignKey, // HasMany, // Model, // PrimaryKey, // Table, // UpdatedAt, // DataType, // } from 'sequelize-typescript' // import Model from './Model' // // @Table({ // timestamps: true, // paranoid: true, // }) // // export default class Folder extends Model { // @AllowNull // @PrimaryKey // @Column(DataType.UUIDV4) // id?: string // // @Column // name: string // // @AllowNull // @ForeignKey(() => Folder) // @Column(DataType.UUIDV4) // parentId?: string // // @BelongsTo(() => Folder, 'parentId') // parent?: Folder // // @HasMany(() => Folder, 'parentId') // children: Folder[] // // @Column(DataType.DATE) // @CreatedAt // createdAt: Date // // @Column(DataType.DATE) // @UpdatedAt // updatedAt: Date // // @AllowNull // @Column(DataType.DATE) // @DeletedAt // deletedAt?: Date // // @HasMany(() => Model, 'folderId') // notes: Model[] // } //