package models

import (
	"time"

	"github.com/google/uuid"
)

// User представляет структуру пользователя в таблице 'users'
type User struct {
	ID           int       `json:"-"`
	UUID         uuid.UUID `json:"uuid"`
	Username     string    `json:"username"`
	Email        string    `json:"email"`
	PasswordHash string    `json:"-"`
	Role         string    `json:"role"`
	CreatedAt    time.Time `json:"created_at"`
	UpdatedAt    time.Time `json:"updated_at"`
}

// RegisterRequest определяет структуру JSON-запроса на регистрацию
type RegisterRequest struct {
	Username string `json:"username" validate:"required,min=3,max=16,alphanum"`
	Email    string `json:"email" validate:"required,email"`
	Password string `json:"password" validate:"required,min=8"`
}
type Profile struct {
	ID        int       `json:"-"`
	UserID    int       `json:"-"`
	SkinHash  string    `json:"skin_hash,omitempty"`
	CapeHash  string    `json:"cape_hash,omitempty"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}
