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

import typing

import pydantic
from ..core.pydantic_utilities import UniversalBaseModel
from .text_review_annotation_bounds import TextReviewAnnotationBounds
from .text_review_annotation_text_review_annotation_type import TextReviewAnnotationTextReviewAnnotationType


class TextReviewAnnotation(UniversalBaseModel):
    bounds: typing.List[TextReviewAnnotationBounds] = pydantic.Field()
    """
    An array of bounds representing a multiline selection origin at the lower-left corner.
    """

    selection_text: typing.Optional[str] = pydantic.Field(default=None)
    """
    Selected text from the document.
    """

    suggested_text: typing.Optional[str] = pydantic.Field(default=None)
    """
    Suggested replacement or insertion text.
    """

    text_review_annotation_type: TextReviewAnnotationTextReviewAnnotationType = pydantic.Field()
    """
    The type of text review annotation. 
    """

    model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
