import { prop } from '@typegoose/typegoose'; // dupe, but the model format is different export interface Inquiry { id?: string, name: string, reason: string, date: Date, report: Score, } export default class Score { @prop({ required: true }) public userID: string; // total will be between 800-200 - 0 signifies "No Score", too little information is available or other variable are too low // calculation: Math.floor(COMBINED_SUBSCORES * 5 * 5.13)` @prop({ required: true }) public total: number; // 10 - 55 @prop({ required: true }) public activity: number; // 0 - 54 @prop({ required: true }) public roles: number; // -50 - 2 @prop({ required: true }) public moderation: number; // -20 - 50 @prop({ required: true }) public cloudServices: number; // 0 or 20, 20 points are added if the user is a staff member @prop({ required: true }) public staff: number; @prop({ required: true }) public other: number; @prop({ required: true }) public notify: boolean; @prop({ required: true }) public locked: boolean; @prop({ required: true }) public inquiries: [Inquiry]; @prop({ required: true }) public softInquiries: [{ name: string, date: Date }]; @prop({ required: true }) public lastUpdate: Date; @prop({ required: true }) public pin: number[]; }