from pydantic import BaseModel, ConfigDict

from .act_multi_v3_map_diff_type import ActMultiV3MapDiffType
from .act_multi_v3_map_mode_type import ActMultiV3MapModeType


class ActMultiV3MapTypeData(BaseModel):
    model_config: ConfigDict = ConfigDict(extra="forbid")  # pyright: ignore[reportIncompatibleVariableOverride]

    modeId: str
    mode: ActMultiV3MapModeType
    difficulty: ActMultiV3MapDiffType
    isDefaultSelectInQuickMatch: bool
    squadMax: int
    matchUnlockModeId: str | None
    matchUnlockParam: int
    stageIdInModeList: list[str]
    unlockHint: str | None
