import { Schema, model, models } from 'mongoose'; import { IPerson } from '../utils/interface/personInterface'; const PersonSchema = new Schema({ name: { type: String, required: [true, 'Please provide a name.'], maxlength: [60, 'Name cannot be more than 60 characters'], trim: true, }, age: { type: Number, required: [true, 'Please provide an age.'], validate(value: number) { if (value < 0) { throw new Error('Age must be a postive number'); } }, }, gender: { type: String, required: [true, 'Please provide a gender.'], trim: true, }, customID: { type: String, required: true, unique: true, }, }); const Person = models.Person || model('Person', PersonSchema); module.exports = Person;