import mongoose, { Schema, models, Document, Model } from "mongoose"; import { Base } from "./base"; interface IPerson extends Base, Document { firstName: string; surname: string; middleName: string; sexCode: string; personRef: string; personTag: string; fatherName: string; motherName: string; countryCode: string; nationalIdentityId: string; birthPlace: string; birthDate: Date; taxNo: string; birthname: string; } const PersonSchema = new Schema({ firstName: { type: String, required: true }, surname: { type: String, required: true }, middleName: { type: String, required: true }, sexCode: { type: String, required: true }, personRef: { type: String, required: true }, personTag: { type: String, required: true }, fatherName: { type: String, required: true }, motherName: { type: String, required: true }, countryCode: { type: String, required: true }, nationalIdentityId: { type: String, required: true }, birthPlace: { type: String, required: true }, birthDate: { type: Date, required: true }, taxNo: { type: String, required: true }, birthname: { type: String, required: true }, }); const Person: Model = models.Person || mongoose.model("Person", PersonSchema); export { Person }; export type { IPerson }