/* eslint-disable no-param-reassign */
import { Schema, model } from 'mongoose';
import { IPermissionInfo } from '../utils/types';

const permissionSchema = new Schema<IPermissionInfo>(
  {
    slug: {
      type: String,
      required: true,
      unique: true,
    },
    permissionType: {
      type: String,
      required: true,
    },
  },
  {
    timestamps: true,
    toJSON: {
      transform(_doc, ret) {
        delete ret.__v;
      },
    },
  },
);

const Permission = model<IPermissionInfo>('Permission', permissionSchema);

export = Permission;
