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

from __future__ import annotations

import typing

import typing_extensions

from .in_network_rendering_providers_detail import InNetworkRenderingProvidersDetail
from .indeterminate_network_status import IndeterminateNetworkStatus
from .out_of_network_status import OutOfNetworkStatus


class ComputeAllInNetworkRenderingProvidersResult_RenderingProviders(InNetworkRenderingProvidersDetail):
    type: typing_extensions.Literal["rendering_providers"]

    class Config:
        frozen = True
        smart_union = True
        allow_population_by_field_name = True


class ComputeAllInNetworkRenderingProvidersResult_Indeterminate(IndeterminateNetworkStatus):
    type: typing_extensions.Literal["indeterminate"]

    class Config:
        frozen = True
        smart_union = True
        allow_population_by_field_name = True


class ComputeAllInNetworkRenderingProvidersResult_OutOfNetwork(OutOfNetworkStatus):
    type: typing_extensions.Literal["out_of_network"]

    class Config:
        frozen = True
        smart_union = True
        allow_population_by_field_name = True


ComputeAllInNetworkRenderingProvidersResult = typing.Union[
    ComputeAllInNetworkRenderingProvidersResult_RenderingProviders,
    ComputeAllInNetworkRenderingProvidersResult_Indeterminate,
    ComputeAllInNetworkRenderingProvidersResult_OutOfNetwork,
]
