import mongoose from "mongoose"; const messageSchema = new mongoose.Schema({ sender: { type: mongoose.Schema.Types.ObjectId, ref: "Users", required: true, }, recipient: { type: mongoose.Schema.Types.ObjectId, ref: "Users", required: false, }, messageType: { type: String, enum: ["text", "audio", "file"], required: true, }, content: { type: String, required: function () { return this.messageType === "text"; }, }, audioUrl: { type: String, required: function () { return this.messageType === "audio"; }, }, fileUrl: { type: String, required: function () { return this.messageType === "file"; }, }, timestamp: { type: Date, default: Date.now, }, }); const Message = mongoose.model("Messages", messageSchema); export default Message;