from enum import Enum
from typing import Optional
from pydantic import BaseModel


class ConditionFileType(Enum):
    LBWF = "LBWF"
    Peabody = "Peabody"
    # TODO: make these asset management systems rather than client names


class ConditionTriggerRequest(BaseModel):
    file_type: ConditionFileType
    trigger_file_bucket: str  # TODO: get this from settings
    trigger_file_key: str

    uprn_lookup_file_bucket: Optional[str] = None  # TODO: get this from settings
    uprn_lookup_file_key: Optional[str] = None


# {
#     "file_type": "Peabody",
#     "trigger_file_bucket": "condition-data-dev",
#     "trigger_file_key": "input/peabody/2026_01_06 - Peabody - Stock Condition Data - Survey Records - D  Lower.xlsx",
#     "uprn_lookup_file_bucket": "condition-data-dev",
#     "uprn_lookup_file_key": "input/peabody/uprn-lookup/PeabodyPropertymatched_Dec25_propref_UPRN.csv"
# }

# {
#     "file_type": "LBWF",
#     "trigger_file_bucket": "condition-data-dev",
#     "trigger_file_key": "input/lbwf/LBWF - Example Asset Data September 2025.xlsx"
# }
