### Paprika API Model Descriptions

This document describes the main data models used in the Paprika API, including their fields and relationships.

#### User
The `User` model represents an authenticated user in the system.
- `id`: Unique identifier (primary key).
- `fullName`: The full name of the user (can be null).
- `email`: The user's email address (unique, used for login).
- `password`: Hashed password for authentication.
- `role`: User role for authorization (e.g., 'user', 'admin').
- `createdAt`: Timestamp when the user was created.
- `updatedAt`: Timestamp when the user was last updated.

#### Category
Categories are used to group `RestaurantMenuItem` objects.
- `id`: Unique identifier (primary key).
- `name`: The primary name of the category (typically Hungarian).
- `nameHu`: Hungarian translation of the category name.
- `nameEn`: English translation of the category name.
- `slug`: A URL-friendly version of the category name.
- `createdAt`: Timestamp when the category was created.
- `updatedAt`: Timestamp when the category was last updated.
- **Relationships**:
    - `menuItems`: Has many `RestaurantMenuItem` records.

#### RestaurantMenu
Represents a specific daily or periodic menu.
- `id`: Unique identifier (primary key).
- `name`: The primary name of the menu (e.g., "2025.09.08. Hétfő").
- `nameHu`: Hungarian translation of the menu name.
- `nameEn`: English translation of the menu name.
- `createdAt`: Timestamp when the menu was created.
- `updatedAt`: Timestamp when the menu was last updated.
- **Relationships**:
    - `items`: Many-to-many relationship with `RestaurantMenuItem` records via `menu_item_menus` table.

#### RestaurantMenuItem
Individual dishes or items within a `RestaurantMenu`.
- `id`: Unique identifier (primary key).
- `name`: The primary name of the item.
- `nameHu`: Hungarian translation of the item name.
- `nameEn`: English translation of the item name.
- `priceSmall`: Price for a small portion.
- `priceLarge`: Price for a large portion.
- `description`: General description of the item.
- `descriptionHu`: Hungarian translation of the description.
- `descriptionEn`: English translation of the description.
- `categoryId`: Foreign key connecting to `Category`.
- `createdAt`: Timestamp when the item was created.
- `updatedAt`: Timestamp when the item was last updated.
- **Relationships**:
    - `category`: Belongs to a `Category`.
    - `menus`: Many-to-many relationship with `RestaurantMenu` records via `menu_item_menus` table.
