# This file was auto-generated by Fern from our API Definition.

import typing

import pydantic
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
from .vehicle_stats_aux_input_time import VehicleStatsAuxInputTime
from .vehicle_stats_decorations import VehicleStatsDecorations
from .vehicle_stats_synthetic_engine_seconds_value import VehicleStatsSyntheticEngineSecondsValue


class VehicleStatsSyntheticEngineSeconds(UniversalBaseModel):
    """
    The cumulative number of seconds the engine has run estimated based on when the engine is running. Please note that this method <a href="https://kb.samsara.com/hc/en-us/articles/360043552511-Synthetic-Engine-Hours" target="_blank">requires the addition of a baseline</a> to trigger accumulation.
    """

    decorations: typing.Optional[VehicleStatsDecorations] = None
    time: VehicleStatsAuxInputTime
    value: VehicleStatsSyntheticEngineSecondsValue

    if IS_PYDANTIC_V2:
        model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)  # type: ignore # Pydantic v2
    else:

        class Config:
            frozen = True
            smart_union = True
            extra = pydantic.Extra.allow
