"""Input schemas for delivery-related API requests.""" from enum import StrEnum from pydantic import BaseModel, Field, StrictInt class DeliveryEntity(StrEnum): INDIVIDUAL = "individual" LEGAL = "legal" class ParcelType(StrEnum): DOC = "doc" PARCEL = "parcel" class DeliveryCalculationRequest(BaseModel): entity: DeliveryEntity from_city: StrictInt to_city: StrictInt weight_kg: float = Field(gt=0) length_cm: float = Field(gt=0) width_cm: float = Field(gt=0) height_cm: float = Field(gt=0) parcel_type: ParcelType | None = None class AddressSuggestRequest(BaseModel): country_code: str = Field(min_length=2, max_length=2) city: str = Field(min_length=1) query: str = Field(min_length=1) limit: int | None = Field(default=None, gt=0)