"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from opperai.types import BaseModel
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict


class TextProcessingConfigurationTypedDict(TypedDict):
    text_processing_chunk_size: NotRequired[int]
    r"""The chunk size to use for the document. This is the number of characters to use for the chunk. The default is 2000 characters."""
    text_processing_chunk_overlap: NotRequired[int]
    r"""The chunk overlap to use for the document. This is the number of characters to overlap between chunks. The default is 200 characters."""


class TextProcessingConfiguration(BaseModel):
    text_processing_chunk_size: Annotated[
        Optional[int], pydantic.Field(alias="text_processing.chunk_size")
    ] = 2000
    r"""The chunk size to use for the document. This is the number of characters to use for the chunk. The default is 2000 characters."""

    text_processing_chunk_overlap: Annotated[
        Optional[int], pydantic.Field(alias="text_processing.chunk_overlap")
    ] = 200
    r"""The chunk overlap to use for the document. This is the number of characters to overlap between chunks. The default is 200 characters."""
