import { Model, model, Schema } from "mongoose";
import { IUserBlock } from "../interfaces/models/userBlockInterface";

const UserBlockSchema = new Schema<IUserBlock>(
  {
    blockerId: {
      type: Schema.Types.ObjectId,
      ref: "User",
      required: true,
      index: true,
    },
    blockedId: {
      type: Schema.Types.ObjectId,
      ref: "User",
      required: true,
      index: true,
    },
  },
  { timestamps: true },
);

UserBlockSchema.index({ blockerId: 1, blockedId: 1 }, { unique: true });

const UserBlockModel: Model<IUserBlock> = model<IUserBlock>(
  "UserBlock",
  UserBlockSchema,
);

export default UserBlockModel;
