import { Shop, User, ShopUserRole } from "@prisma/client"
import type { AuthType } from "ttm-shared"

declare global {
    namespace Express {
        interface Request {

            // ===== Nouvelle auth standardisée =====
            auth?: {
                sub: string
                type: AuthType
                mustChangePassword?: boolean
            }

            // ===== Optionnel : objets hydratés =====
            user?: User
            shop?: Shop
            posRole?: ShopUserRole

            // ===== Socket ID de l'émetteur (pour exclure du broadcast WS) =====
            senderSocketId?: string

        }
    }
}

export {}