"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
# @generated-id: 7d0ec3402dc0

from __future__ import annotations
from .tempotraceattributeboolvalue import (
    TempoTraceAttributeBoolValue,
    TempoTraceAttributeBoolValueTypedDict,
)
from .tempotraceattributeintvalue import (
    TempoTraceAttributeIntValue,
    TempoTraceAttributeIntValueTypedDict,
)
from .tempotraceattributestringvalue import (
    TempoTraceAttributeStringValue,
    TempoTraceAttributeStringValueTypedDict,
)
from mistralai.client.types import BaseModel
from typing import Union
from typing_extensions import TypeAliasType, TypedDict


TempoTraceAttributeValueTypedDict = TypeAliasType(
    "TempoTraceAttributeValueTypedDict",
    Union[
        TempoTraceAttributeStringValueTypedDict,
        TempoTraceAttributeIntValueTypedDict,
        TempoTraceAttributeBoolValueTypedDict,
    ],
)
r"""The value of the attribute"""


TempoTraceAttributeValue = TypeAliasType(
    "TempoTraceAttributeValue",
    Union[
        TempoTraceAttributeStringValue,
        TempoTraceAttributeIntValue,
        TempoTraceAttributeBoolValue,
    ],
)
r"""The value of the attribute"""


class TempoTraceAttributeTypedDict(TypedDict):
    key: str
    r"""The key of the attribute"""
    value: TempoTraceAttributeValueTypedDict
    r"""The value of the attribute"""


class TempoTraceAttribute(BaseModel):
    key: str
    r"""The key of the attribute"""

    value: TempoTraceAttributeValue
    r"""The value of the attribute"""
