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

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


class PaginatedExtractionExperimentalConfig(UniversalBaseModel):
    scroll_within: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="scrollWithin")] = (
        pydantic.Field(default=None)
    )
    """
    A natural language description of the scrollable area on the web page. This identifies the container or region that should be scrolled to access pagination controls. If missing, the entire page will be scrolled. You can also describe a visible reference point inside the container.
    """

    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
