"""
Module contains base schemas for lambdas
"""
from typing import final
from vlutils.structures.pydantic import BaseModel as _BaseModel
[docs]
class GeoPosition(_BaseModel):
    # latitude
    latitude: float
    # longitude
    longitude: float 
[docs]
@final
class Location(_BaseModel):
    """Source location"""
    # geo position
    geoPosition: GeoPosition | None = None
    # street (if present)
    street: str | None = None
    # house number  (if present)
    houseNumber: str | None = None
    # district (if present)
    district: str | None = None
    # area (if present)
    area: str | None = None
    # cite (if present)
    city: str | None = None 
[docs]
@final
class BoundingBox(_BaseModel):
    """Bounding box schema"""
    # x coordinate of bounding box (from -2**30 to 2**30)
    x: int
    # y coordinate of bounding box (from -2**30 to 2**30)
    y: int
    # width of bounding box (from -2**30 to 2**30)
    width: int
    # height of bounding box (from -2**30 to 2**30)
    height: int