import { Severity, getModelForClass, index, modelOptions, mongoose, prop } from '@typegoose/typegoose' import { dbconn } from 'decorators/dbconn' import { BaseModule } from './Base' @dbconn() @index({ user: 1, chain: 1, address: 1 }, { unique: false }) @index({ user: 1, chain: 1, address: 1, tokenId: 1 }, { unique: true }) @modelOptions({ schemaOptions: { collection: 'nft_burn_record', timestamps: true }, options: { allowMixed: Severity.ALLOW }, }) class NftBurnRecordClass extends BaseModule { @prop({ required: true }) public user: string @prop() public chain: number @prop({ required: true }) public address: string @prop() public tokenId: string @prop() public activity: string @prop() public task: string } export const NftBurnRecord = getModelForClass(NftBurnRecordClass, { existingConnection: NftBurnRecordClass['db'] })