from pydantic import Field
from ensysmod.schemas.base_ref_component_region import RefCRBase, RefCRBaseBase, RefCRBaseCreate, RefCRBaseUpdate
class CapacityMaxBase(RefCRBaseBase):
"""
Shared attributes for a CapacityMax. Used as a base class for all schemas.
"""
capacity_max: float = Field(
default=...,
description="Maximum capacity for a component in a specific region.",
examples=[1.0],
ge=0,
)
[docs]
class CapacityMaxCreate(CapacityMaxBase, RefCRBaseCreate):
"""
Attributes to receive via API on creation of a CapacityMax.
"""
class CapacityMaxUpdate(CapacityMaxBase, RefCRBaseUpdate):
"""
Attributes to receive via API on update of a CapacityMax.
"""
class CapacityMaxSchema(CapacityMaxBase, RefCRBase):
"""
Attributes to return via API for a CapacityMax.
"""