from dataclasses import dataclass
from typing import Optional, List, Any

from ._PropertyModel import PropertyModel
from ._SchemaPropertyFormatEnum import SchemaPropertyFormatEnum
from ._SchemaPropertyTypeEnum import SchemaPropertyTypeEnum


@dataclass
class SchemaPropertyModel(PropertyModel):
    type: SchemaPropertyTypeEnum
    format: Optional[SchemaPropertyFormatEnum] = None
    enum: List[Any] = None
    default: Any = None
