diff options
Diffstat (limited to 'src/lib/models/Ban.ts')
-rw-r--r-- | src/lib/models/Ban.ts | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/lib/models/Ban.ts b/src/lib/models/Ban.ts new file mode 100644 index 0000000..032a48b --- /dev/null +++ b/src/lib/models/Ban.ts @@ -0,0 +1,47 @@ +import { BaseModel } from './BaseModel'; + +export interface BanModel { + id: string; + user: string; + guild: string; + reason: string; + expires: Date; + modlog: string; +} +export interface BanModelCreationAttributes { + id?: string; + user: string; + guild: string; + reason?: string; + expires?: Date; + modlog: string; +} + +export class Ban + extends BaseModel<BanModel, BanModelCreationAttributes> + implements BanModel { + /** + * The ID of this ban (no real use just for a primary key) + */ + id: string; + /** + * The user who is banned + */ + user: string; + /** + * The guild they are banned from + */ + guild: string; + /** + * The reason they are banned (optional) + */ + reason: string | null; + /** + * The date at which this ban expires and should be unbanned (optional) + */ + expires: Date | null; + /** + * The ref to the modlog entry + */ + modlog: string; +} |