"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import google.protobuf.descriptor
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class StaticChunkingStrategy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MAX_CHUNK_SIZE_TOKENS_FIELD_NUMBER: builtins.int
    CHUNK_OVERLAP_TOKENS_FIELD_NUMBER: builtins.int
    max_chunk_size_tokens: builtins.int
    chunk_overlap_tokens: builtins.int
    def __init__(
        self,
        *,
        max_chunk_size_tokens: builtins.int = ...,
        chunk_overlap_tokens: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["chunk_overlap_tokens", b"chunk_overlap_tokens", "max_chunk_size_tokens", b"max_chunk_size_tokens"]) -> None: ...

global___StaticChunkingStrategy = StaticChunkingStrategy

@typing.final
class ChunkingStrategy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STATIC_STRATEGY_FIELD_NUMBER: builtins.int
    @property
    def static_strategy(self) -> global___StaticChunkingStrategy: ...
    def __init__(
        self,
        *,
        static_strategy: global___StaticChunkingStrategy | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["Strategy", b"Strategy", "static_strategy", b"static_strategy"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["Strategy", b"Strategy", "static_strategy", b"static_strategy"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["Strategy", b"Strategy"]) -> typing.Literal["static_strategy"] | None: ...

global___ChunkingStrategy = ChunkingStrategy
