from app.schemas.auth import (
    UserRegister,
    UserLogin,
    ForgotPasswordRequest,
    ResetPasswordRequest,
    VerifyEmailRequest,
    ChangePasswordRequest,
    UpdateProfileRequest,
    UserResponse,
    TokenResponse,
)
from app.schemas.brand import (
    BrandBase,
    BrandCreate,
    BrandUpdate,
    BrandResponse,
    BrandListResponse,
    BrandBriefResponse,
)
from app.schemas.competitor import (
    CompetitorBase,
    CompetitorCreate,
    CompetitorUpdate,
    CompetitorResponse,
    CompetitorListResponse,
    CompetitorBriefResponse,
)
from app.schemas.citation import (
    CitationResponse,
    CitationListResponse,
    CitationStatsResponse,
    RunNowResponse,
)
from app.schemas.query import QueryCreate, QueryResponse
from app.schemas.subscription import SubscriptionResponse
from app.schemas.scoring import CitationResult, ScoringResult
from app.schemas.alert import (
    AlertResponse,
    AlertListResponse,
    AlertUnreadCountResponse,
    AlertReadResponse,
    AlertReadAllResponse,
    AlertSettingResponse,
    AlertSettingUpdate,
    AlertSettingCreate,
    AlertSettingListResponse,
    AlertSettingBulkUpdate,
)

__all__ = [
    # Auth
    "UserRegister",
    "UserLogin",
    "ForgotPasswordRequest",
    "ResetPasswordRequest",
    "VerifyEmailRequest",
    "ChangePasswordRequest",
    "UpdateProfileRequest",
    "UserResponse",
    "TokenResponse",
    # Brand
    "BrandBase",
    "BrandCreate",
    "BrandUpdate",
    "BrandResponse",
    "BrandListResponse",
    "BrandBriefResponse",
    # Competitor
    "CompetitorBase",
    "CompetitorCreate",
    "CompetitorUpdate",
    "CompetitorResponse",
    "CompetitorListResponse",
    "CompetitorBriefResponse",
    # Citation
    "CitationResponse",
    "CitationListResponse",
    "CitationStatsResponse",
    "RunNowResponse",
    # Query
    "QueryCreate",
    "QueryResponse",
    # Subscription
    "SubscriptionResponse",
    # Scoring
    "CitationResult",
    "ScoringResult",
    # Alert
    "AlertResponse",
    "AlertListResponse",
    "AlertUnreadCountResponse",
    "AlertReadResponse",
    "AlertReadAllResponse",
    "AlertSettingResponse",
    "AlertSettingUpdate",
    "AlertSettingCreate",
    "AlertSettingListResponse",
    "AlertSettingBulkUpdate",
]
