import { Model, Schema, model, models } from "mongoose"; export interface PlayerDocument { firstName: string; lastName: string; jerseyNumber: number; batsThrows: string; primaryPosition: string; secondaryPosition?: string | null; tertiaryPosition?: string | null; isActive: boolean; notes?: string; createdAt?: Date; updatedAt?: Date; } const playerSchema = new Schema( { firstName: { type: String, required: true, trim: true }, lastName: { type: String, required: true, trim: true }, jerseyNumber: { type: Number, required: true }, batsThrows: { type: String, required: true }, primaryPosition: { type: String, required: true }, secondaryPosition: { type: String, default: null }, tertiaryPosition: { type: String, default: null }, isActive: { type: Boolean, default: true }, notes: { type: String, default: "" } }, { timestamps: true } ); export const PlayerModel = (models.Player as Model) || model("Player", playerSchema);