cr-database/models/Member.ts

33 lines
697 B
TypeScript
Raw Normal View History

2021-12-25 13:58:49 -05:00
import { prop } from '@typegoose/typegoose';
2021-12-25 13:37:42 -05:00
2021-12-25 13:58:49 -05:00
export type Tier = 1 | 2 | 3;
export default class Member {
@prop({ required: true })
public userID: string;
@prop()
public additional: {
2021-12-25 13:37:42 -05:00
langs: ['js', 'py', 'rb', 'ts', 'rs', 'go', 'cfam', 'csharp', 'swift', 'java', 'kt', 'asm'],
operatingSystems: ['arch', 'deb', 'cent', 'fedora', 'manjaro', 'mdarwin', 'redhat', 'ubuntu', 'win'],
github: string,
gitlab: string,
bio: string,
2021-12-25 13:58:49 -05:00
};
@prop()
public misc: {
2021-12-25 13:37:42 -05:00
t3TemporaryExpiration?: {
date: Date,
processed: boolean
2021-12-25 13:58:49 -05:00
previousTier: Tier
2021-12-25 13:37:42 -05:00
}
2021-12-25 13:58:49 -05:00
};
2021-12-25 13:37:42 -05:00
2021-12-25 13:58:49 -05:00
@prop()
public x509: string;
2021-12-25 13:37:42 -05:00
2021-12-25 13:58:49 -05:00
@prop()
public pgp: string;
}