"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations from .booleancapability import BooleanCapability, BooleanCapabilityTypedDict from .enumcapability import EnumCapability, EnumCapabilityTypedDict from .rangecapability import RangeCapability, RangeCapabilityTypedDict from openrouter.utils import get_discriminator from pydantic import Discriminator, Tag from typing import Union from typing_extensions import Annotated, TypeAliasType CapabilityDescriptorTypedDict = TypeAliasType( "CapabilityDescriptorTypedDict", Union[ BooleanCapabilityTypedDict, EnumCapabilityTypedDict, RangeCapabilityTypedDict ], ) r"""A typed descriptor for one supported request parameter.""" CapabilityDescriptor = Annotated[ Union[ Annotated[EnumCapability, Tag("enum")], Annotated[RangeCapability, Tag("range")], Annotated[BooleanCapability, Tag("boolean")], ], Discriminator(lambda m: get_discriminator(m, "type", "type")), ] r"""A typed descriptor for one supported request parameter."""