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

import typing_extensions
from ...core.serialization import FieldMetadata
from ...requests.extract_override_config_json import ExtractOverrideConfigJsonParams
from ...types.processor_version_string import ProcessorVersionString


class ExtractRunsCreateRequestExtractorParams(typing_extensions.TypedDict):
    """
    Reference to an existing extractor. One of `extractor` or `config` must be provided.
    """

    id: str
    """
    The ID of the extractor to use.
    """

    version: typing_extensions.NotRequired[ProcessorVersionString]
    override_config: typing_extensions.NotRequired[
        typing_extensions.Annotated[ExtractOverrideConfigJsonParams, FieldMetadata(alias="overrideConfig")]
    ]
    """
    Optional partial configuration override. Only the fields you provide will override the extractor's saved configuration. For example, you can pass only `advancedOptions` or `extractionRules` without providing a `schema`.
    """
