40 lines
974 B
TypeScript
40 lines
974 B
TypeScript
import { getModelForClass, index, modelOptions, prop } from '@typegoose/typegoose'
|
|
import { dbconn } from 'decorators/dbconn'
|
|
import { BaseModule } from './Base'
|
|
import { GeneralEvent } from './GeneralEvent'
|
|
|
|
@dbconn()
|
|
@index({ chain: 1, address: 1, user: 1 }, { unique: true })
|
|
@modelOptions({
|
|
schemaOptions: { collection: 'ft_holder', timestamps: true },
|
|
})
|
|
export class FtHolderClass extends BaseModule {
|
|
@prop({ required: true })
|
|
public address!: string
|
|
|
|
@prop({ required: true })
|
|
public chain: string
|
|
|
|
@prop({ required: true })
|
|
public amount: string
|
|
|
|
@prop()
|
|
public blockNumber: number
|
|
|
|
@prop()
|
|
public user: string
|
|
|
|
//TODO::
|
|
public static async parseEvent(event: typeof GeneralEvent) {
|
|
const address = event.address;
|
|
const chain = event.chain;
|
|
const amount = event.amount;
|
|
const blockNumer = event.blockNumber;
|
|
|
|
}
|
|
}
|
|
|
|
export const FtHolder = getModelForClass(FtHolderClass, {
|
|
existingConnection: FtHolderClass['db'],
|
|
})
|