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

from ...core.pydantic_utilities import UniversalBaseModel
import typing
from .project_entity_attribute import ProjectEntityAttribute
from ...core.pydantic_utilities import IS_PYDANTIC_V2
import pydantic


class ProjectEntityAttributesResponse(UniversalBaseModel):
    """
    Examples
    --------
    from sayari.project_entity_attributes import (
        ProjectEntityAttribute,
        ProjectEntityAttributesResponse,
        ProjectEntityAttributeValue,
    )

    ProjectEntityAttributesResponse(
        data=[
            ProjectEntityAttribute(
                field="name",
                match_resolution=True,
                values=[
                    ProjectEntityAttributeValue(
                        id=1,
                        value="Example Company",
                    ),
                    ProjectEntityAttributeValue(
                        id=2,
                        value="Updated Company Name",
                    ),
                ],
            ),
            ProjectEntityAttribute(
                field="custom_address",
                match_resolution=False,
                values=[
                    ProjectEntityAttributeValue(
                        id=3,
                        value="123 Main Street",
                    ),
                    ProjectEntityAttributeValue(
                        id=4,
                        value="456 Oak Avenue",
                    ),
                ],
            ),
        ],
    )
    """

    data: typing.List[ProjectEntityAttribute]

    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
