38 lines
750 B
TypeScript
38 lines
750 B
TypeScript
import { Document, Schema, model } from 'mongoose';
|
|
|
|
export interface ModerationInterface extends Document {
|
|
userID: string,
|
|
logID: string,
|
|
moderatorID: string,
|
|
reason: string,
|
|
/**
|
|
* @field 0 - Warn
|
|
* @field 1 - Unmute
|
|
* @field 2 - Mute
|
|
* @field 3 - Kick
|
|
* @field 4 - Unban
|
|
* @field 5 - Ban
|
|
*/
|
|
type: 0 | 1 | 2 | 3 | 4 | 5
|
|
date: Date,
|
|
expiration?: {
|
|
date: Date,
|
|
processed: boolean
|
|
}
|
|
}
|
|
|
|
const Moderation: Schema = new Schema({
|
|
userID: String,
|
|
logID: String,
|
|
moderatorID: String,
|
|
reason: String,
|
|
type: Number,
|
|
date: Date,
|
|
expiration: {
|
|
date: Date,
|
|
processed: Boolean,
|
|
},
|
|
});
|
|
|
|
export default model<ModerationInterface>('Moderation', Moderation);
|