"""
Shared DTOs (Data Transfer Objects)

Cross-platform data structures used for communication between
backend, frontend, and external services.
"""

from .base import BaseDTO, PaginatedDTO, ResponseDTO, ErrorDTO
from .auth import (
    LoginRequestDTO,
    LoginResponseDTO,
    RegisterRequestDTO,
    TokenDTO,
    UserDTO,
)
from .pagination import PaginationParamsDTO, PaginatedResponseDTO
from .common import (
    IdDTO,
    SlugDTO,
    TimestampDTO,
    AuditDTO,
)

__all__ = [
    # Base
    "BaseDTO",
    "PaginatedDTO",
    "ResponseDTO",
    "ErrorDTO",
    # Auth
    "LoginRequestDTO",
    "LoginResponseDTO",
    "RegisterRequestDTO",
    "TokenDTO",
    "UserDTO",
    # Pagination
    "PaginationParamsDTO",
    "PaginatedResponseDTO",
    # Common
    "IdDTO",
    "SlugDTO",
    "TimestampDTO",
    "AuditDTO",
]
