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

from ...core.pydantic_utilities import UniversalBaseModel
import typing_extensions
import typing
from .entity_id_without_agent import EntityIdWithoutAgent
from ...core.serialization import FieldMetadata
import pydantic
from ...core.pydantic_utilities import IS_PYDANTIC_V2


class ConversationSummary(UniversalBaseModel):
    action_ids: typing_extensions.Annotated[typing.List[EntityIdWithoutAgent], FieldMetadata(alias="actionIds")] = (
        pydantic.Field()
    )
    """
    The IDs of the actions that were taken by Maven in the conversation
    """

    incomplete_action_ids: typing_extensions.Annotated[
        typing.List[EntityIdWithoutAgent], FieldMetadata(alias="incompleteActionIds")
    ] = pydantic.Field()
    """
    The IDs of the actions that were taken by Maven but not completed in the conversation. Occurs when the user is shown an action form but does not submit it.
    """

    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
