import { Schema, Document } from "mongoose"; import MainModel from "../connection/connection"; import { IProject } from "./projectmodel"; interface Ifolders extends Document { folderName: string; createdAt: number; } const folderSchema: Schema = new Schema( { folderName: { type: String, required: true }, createdAt: { type: Date, default: Date.now }, }, { _id: false } ); export interface IMVCPrject extends Document { projectId: IProject["_id"]; controllers: boolean; routes: boolean; models: boolean; services: boolean; middleware: boolean; utils: boolean; config: boolean; folders: Ifolders[]; } const mvcSchema: Schema = new Schema({ projectId: { type: Schema.Types.ObjectId, ref: "Project" }, controllers: { type: Boolean }, routes: { type: Boolean }, models: { type: Boolean }, services: { type: Boolean }, middleware: { type: Boolean }, utils: { type: Boolean }, config: { type: Boolean }, folders: [folderSchema], }); const MVCarcModel = (db: any) => { return MainModel(db, "MVCArc", mvcSchema, "MVCArc"); }; export default MVCarcModel;