# app/modules/tenancy/schemas/__init__.py
"""
Tenancy module Pydantic schemas.

Request/response schemas for platform, company, vendor, admin user, and team management.
"""

# Company schemas
from app.modules.tenancy.schemas.company import (
    CompanyBase,
    CompanyCreate,
    CompanyCreateResponse,
    CompanyDetailResponse,
    CompanyListResponse,
    CompanyResponse,
    CompanySummary,
    CompanyTransferOwnership,
    CompanyTransferOwnershipResponse,
    CompanyUpdate,
)

# Vendor schemas
from app.modules.tenancy.schemas.vendor import (
    VendorCreate,
    VendorCreateResponse,
    VendorDetailResponse,
    VendorListResponse,
    VendorResponse,
    VendorSummary,
    VendorUpdate,
)

# Admin schemas
from app.modules.tenancy.schemas.admin import (
    AdminAuditLogFilters,
    AdminAuditLogListResponse,
    AdminAuditLogResponse,
    AdminDashboardStats,
    AdminNotificationCreate,
    AdminNotificationListResponse,
    AdminNotificationResponse,
    AdminNotificationUpdate,
    AdminSessionListResponse,
    AdminSessionResponse,
    AdminSettingCreate,
    AdminSettingDefaultResponse,
    AdminSettingListResponse,
    AdminSettingResponse,
    AdminSettingUpdate,
    ApplicationLogFilters,
    ApplicationLogListResponse,
    ApplicationLogResponse,
    BulkUserAction,
    BulkUserActionResponse,
    BulkVendorAction,
    BulkVendorActionResponse,
    ComponentHealthStatus,
    FileLogResponse,
    LogCleanupResponse,
    LogDeleteResponse,
    LogFileInfo,
    LogFileListResponse,
    LogSettingsResponse,
    LogSettingsUpdate,
    LogSettingsUpdateResponse,
    LogStatistics,
    PlatformAlertCreate,
    PlatformAlertListResponse,
    PlatformAlertResolve,
    PlatformAlertResponse,
    PublicDisplaySettingsResponse,
    RowsPerPageResponse,
    RowsPerPageUpdateResponse,
    SystemHealthResponse,
)

# Team schemas
from app.modules.tenancy.schemas.team import (
    BulkRemoveRequest,
    BulkRemoveResponse,
    InvitationAccept,
    InvitationAcceptResponse,
    InvitationResponse,
    PermissionCheckRequest,
    PermissionCheckResponse,
    RoleBase,
    RoleCreate,
    RoleListResponse,
    RoleResponse,
    RoleUpdate,
    TeamErrorResponse,
    TeamMemberBase,
    TeamMemberInvite,
    TeamMemberListResponse,
    TeamMemberResponse,
    TeamMemberUpdate,
    TeamStatistics,
    UserPermissionsResponse,
)

# Vendor domain schemas
from app.modules.tenancy.schemas.vendor_domain import (
    DomainDeletionResponse,
    DomainVerificationInstructions,
    DomainVerificationResponse,
    VendorDomainCreate,
    VendorDomainListResponse,
    VendorDomainResponse,
    VendorDomainUpdate,
)

__all__ = [
    # Company
    "CompanyBase",
    "CompanyCreate",
    "CompanyCreateResponse",
    "CompanyDetailResponse",
    "CompanyListResponse",
    "CompanyResponse",
    "CompanySummary",
    "CompanyTransferOwnership",
    "CompanyTransferOwnershipResponse",
    "CompanyUpdate",
    # Vendor
    "VendorCreate",
    "VendorCreateResponse",
    "VendorDetailResponse",
    "VendorListResponse",
    "VendorResponse",
    "VendorSummary",
    "VendorUpdate",
    # Admin
    "AdminAuditLogFilters",
    "AdminAuditLogListResponse",
    "AdminAuditLogResponse",
    "AdminDashboardStats",
    "AdminNotificationCreate",
    "AdminNotificationListResponse",
    "AdminNotificationResponse",
    "AdminNotificationUpdate",
    "AdminSessionListResponse",
    "AdminSessionResponse",
    "AdminSettingCreate",
    "AdminSettingDefaultResponse",
    "AdminSettingListResponse",
    "AdminSettingResponse",
    "AdminSettingUpdate",
    "ApplicationLogFilters",
    "ApplicationLogListResponse",
    "ApplicationLogResponse",
    "BulkUserAction",
    "BulkUserActionResponse",
    "BulkVendorAction",
    "BulkVendorActionResponse",
    "ComponentHealthStatus",
    "FileLogResponse",
    "LogCleanupResponse",
    "LogDeleteResponse",
    "LogFileInfo",
    "LogFileListResponse",
    "LogSettingsResponse",
    "LogSettingsUpdate",
    "LogSettingsUpdateResponse",
    "LogStatistics",
    "PlatformAlertCreate",
    "PlatformAlertListResponse",
    "PlatformAlertResolve",
    "PlatformAlertResponse",
    "PublicDisplaySettingsResponse",
    "RowsPerPageResponse",
    "RowsPerPageUpdateResponse",
    "SystemHealthResponse",
    # Team
    "BulkRemoveRequest",
    "BulkRemoveResponse",
    "InvitationAccept",
    "InvitationAcceptResponse",
    "InvitationResponse",
    "PermissionCheckRequest",
    "PermissionCheckResponse",
    "RoleBase",
    "RoleCreate",
    "RoleListResponse",
    "RoleResponse",
    "RoleUpdate",
    "TeamErrorResponse",
    "TeamMemberBase",
    "TeamMemberInvite",
    "TeamMemberListResponse",
    "TeamMemberResponse",
    "TeamMemberUpdate",
    "TeamStatistics",
    "UserPermissionsResponse",
    # Vendor Domain
    "DomainDeletionResponse",
    "DomainVerificationInstructions",
    "DomainVerificationResponse",
    "VendorDomainCreate",
    "VendorDomainListResponse",
    "VendorDomainResponse",
    "VendorDomainUpdate",
]
