import { Model, Schema, model, Document } from 'mongoose'; export interface RegistrationD extends Document, RegistrationI {} export interface RegistrationModelI extends Model {} const RegistrationSchema: Schema = new Schema({ firstName: { type: String, required: true }, lastName: { type: String, required: true }, email: { type: String, required: true }, phone: { type: String, required: true }, profession: { type: String, required: true , enum: ["Student", "Other"]}, university: { type: String, default: 'N/A'}, yearOfStudy: { type: String, enum: ['L1', 'L2', 'L3', 'M1', 'M2', 'N/A'], default: 'N/A' }, nationalId: { type: String, default: 'N/A'}, fieldOfStudy: { type: String, default: 'N/A'}, skills:{ type: [String], required: true, validate: { validator: (v: string[]) => v.length > 0, message: 'Skills are required' } }, discordUsername: { type: String, default: 'N/A'}, github: { type: String, default: 'N/A'}, linkedin: { type: String , default: 'N/A'}, portfolio: { type: String, default: 'N/A'}, teamname: { type: String, default: 'N/A'}, participatedQuest: { type: String, required: true }, availableQuest: { type: String, required: true }, fullDurationQuest: { type: String , default: 'N/A' }, motivationQuest: { type: String, required: true }, otherprofession : { type: String, default: 'N/A'}, }); export const RegistrationModel = model( 'Registration', RegistrationSchema ); export default RegistrationModel;