domain.ts 746 B

12345678910111213141516171819202122232425
  1. import { Document, model, Schema, Types } from 'mongoose';
  2. export interface IDomain extends Document {
  3. banned?: boolean;
  4. bannedBy?: Types.ObjectId;
  5. createdAt: Date;
  6. name: string;
  7. homepage?: string;
  8. updatedAt?: Date;
  9. user?: Types.ObjectId;
  10. }
  11. const DomainSchema: Schema = new Schema({
  12. banned: { type: Boolean, default: false },
  13. bannedBy: { type: Schema.Types.ObjectId, ref: 'user' },
  14. createdAt: { type: Date, default: Date.now },
  15. name: { type: String, unique: true, trim: true, required: true },
  16. homepage: { type: String, trim: true },
  17. updatedAt: { type: Date, default: Date.now },
  18. user: { type: Schema.Types.ObjectId, ref: 'user' },
  19. });
  20. const Domain = model<IDomain>('domain', DomainSchema);
  21. export default Domain;