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

from ...base_types.types.paginated_response import PaginatedResponse
import typing
from .source import Source
from ...core.pydantic_utilities import IS_PYDANTIC_V2
import pydantic


class ListSourcesResponse(PaginatedResponse):
    """
    OK

    Examples
    --------
    from sayari.base_types import QualifiedCount
    from sayari.source import ListSourcesResponse, Source

    ListSourcesResponse(
        offset=0,
        limit=2,
        size=QualifiedCount(
            count=547,
            qualifier="eq",
        ),
        next=True,
        data=[
            Source(
                id="e85d865943ee6d8369307569d2ad9de0",
                label="Acuris Risk Intelligence Adverse Media Data",
                description="Contains PDFs and URLs to adverse media reporting for PEPs, SOEs, sanctioned entities, and entities linked to financial regulatory and law enforcement actions. Available for millions of entities from 'Acuris Risk Intelligence KYC6 (3rd Party Data)' in 'Records' section.",
                country="XXX",
                region="international_(multi-region_coverage)",
                date_added="2022-04-11",
                source_type="adverse_media_/_negative_news_data",
                record_type="adverse_media_record",
                structure="unstructured",
                source_url="https://www.acurisriskintelligence.com/",
                pep=False,
                watchlist=False,
            ),
            Source(
                id="a8c6ee1cd4dfc952105ee8c0e4836f08",
                label="Acuris Risk Intelligence KYC6 (3rd Party Data)",
                description="Contains profiles of PEPs, sanctioned entities, SOEs, and entities linked to financial regulatory and law enforcement actions from hundreds of international watchlists. Provides identifying information on individuals and companies as available.",
                country="XXX",
                region="international_(multi-region_coverage)",
                date_added="2022-02-09",
                source_type="risk_intelligence_data",
                record_type="risk_intelligence_record",
                structure="unstructured",
                source_url="https://www.acurisriskintelligence.com/",
                pep=False,
                watchlist=False,
            ),
        ],
    )
    """

    offset: int
    next: bool
    data: typing.List[Source]

    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
