import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
import { Document, Types } from 'mongoose';

@Schema({
    timestamps: { createdAt: 'created_at', updatedAt: 'updated_at' },
})
export class Insurer extends Document {
    @Prop({ type: String, required: true, trim: true })
    name: string;

    @Prop({ type: String, default: null, trim: true })
    claims_helpline: string;

    @Prop({ type: [{ type: Types.ObjectId, ref: 'categories' }], default: [] })
    category_ids: Types.ObjectId[];

    @Prop({ type: Boolean, default: true })
    is_active: boolean;
}

export const InsurerSchema = SchemaFactory.createForClass(Insurer);
InsurerSchema.index({ name: 1 }, { unique: true, collation: { locale: 'en', strength: 2 } });
