# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import copy
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities

__all__ = [
    'GetSchemaRegistryRegionResult',
    'AwaitableGetSchemaRegistryRegionResult',
    'get_schema_registry_region',
    'get_schema_registry_region_output',
]

@pulumi.output_type
class GetSchemaRegistryRegionResult:
    """
    A collection of values returned by getSchemaRegistryRegion.
    """
    def __init__(__self__, cloud=None, id=None, package=None, region=None):
        if cloud and not isinstance(cloud, str):
            raise TypeError("Expected argument 'cloud' to be a str")
        pulumi.set(__self__, "cloud", cloud)
        if id and not isinstance(id, str):
            raise TypeError("Expected argument 'id' to be a str")
        pulumi.set(__self__, "id", id)
        if package and not isinstance(package, str):
            raise TypeError("Expected argument 'package' to be a str")
        pulumi.set(__self__, "package", package)
        if region and not isinstance(region, str):
            raise TypeError("Expected argument 'region' to be a str")
        pulumi.set(__self__, "region", region)

    @property
    @pulumi.getter
    def cloud(self) -> str:
        return pulumi.get(self, "cloud")

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        (Required String) The ID of the Schema Registry region, for example, `sgreg-1`.
        """
        return pulumi.get(self, "id")

    @property
    @pulumi.getter
    def package(self) -> str:
        return pulumi.get(self, "package")

    @property
    @pulumi.getter
    def region(self) -> str:
        return pulumi.get(self, "region")


class AwaitableGetSchemaRegistryRegionResult(GetSchemaRegistryRegionResult):
    # pylint: disable=using-constant-test
    def __await__(self):
        if False:
            yield self
        return GetSchemaRegistryRegionResult(
            cloud=self.cloud,
            id=self.id,
            package=self.package,
            region=self.region)


def get_schema_registry_region(cloud: Optional[str] = None,
                               package: Optional[str] = None,
                               region: Optional[str] = None,
                               opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSchemaRegistryRegionResult:
    """
    [![Deprecated](https://img.shields.io/badge/Lifecycle%20Stage-Deprecated-yellow)](https://docs.confluent.io/cloud/current/api.html#section/Versioning/API-Lifecycle-Policy)

    `get_schema_registry_region` describes a Schema Registry cluster data source.

    !> **Warning:** The `get_schema_registry_region` data source has been deprecated and will be removed in the next major version of the provider (2.0.0).
    Refer to the Upgrade Guide for more details.
    The guide will be published once version 2.0.0 is released.

    ## Example Usage

    ```python
    import pulumi
    import pulumi_confluentcloud as confluentcloud

    example = confluentcloud.get_schema_registry_region(cloud="AWS",
        region="us-east-2",
        package="ESSENTIALS")
    pulumi.export("example", example)
    ```


    :param str cloud: The cloud service provider that hosts the region. Accepted values are: `AWS`, `AZURE`, and `GCP`.
    :param str package: The type of the billing package. Accepted values are: `ESSENTIALS` and `ADVANCED`.
           
           > **Note:** See [Schema Registry Regions](https://docs.confluent.io/cloud/current/stream-governance/packages.html#stream-governance-regions) to manually find a corresponding region ID based on desired cloud provider region and types of the billing package.
    :param str region: The cloud service provider region, for example, `us-east-2`. See [Cloud Providers and Regions](https://docs.confluent.io/cloud/current/clusters/regions.html#cloud-providers-and-regions) for a full list of options for AWS, Azure, and GCP.
    """
    __args__ = dict()
    __args__['cloud'] = cloud
    __args__['package'] = package
    __args__['region'] = region
    opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke('confluentcloud:index/getSchemaRegistryRegion:getSchemaRegistryRegion', __args__, opts=opts, typ=GetSchemaRegistryRegionResult).value

    return AwaitableGetSchemaRegistryRegionResult(
        cloud=pulumi.get(__ret__, 'cloud'),
        id=pulumi.get(__ret__, 'id'),
        package=pulumi.get(__ret__, 'package'),
        region=pulumi.get(__ret__, 'region'))


@_utilities.lift_output_func(get_schema_registry_region)
def get_schema_registry_region_output(cloud: Optional[pulumi.Input[str]] = None,
                                      package: Optional[pulumi.Input[str]] = None,
                                      region: Optional[pulumi.Input[str]] = None,
                                      opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSchemaRegistryRegionResult]:
    """
    [![Deprecated](https://img.shields.io/badge/Lifecycle%20Stage-Deprecated-yellow)](https://docs.confluent.io/cloud/current/api.html#section/Versioning/API-Lifecycle-Policy)

    `get_schema_registry_region` describes a Schema Registry cluster data source.

    !> **Warning:** The `get_schema_registry_region` data source has been deprecated and will be removed in the next major version of the provider (2.0.0).
    Refer to the Upgrade Guide for more details.
    The guide will be published once version 2.0.0 is released.

    ## Example Usage

    ```python
    import pulumi
    import pulumi_confluentcloud as confluentcloud

    example = confluentcloud.get_schema_registry_region(cloud="AWS",
        region="us-east-2",
        package="ESSENTIALS")
    pulumi.export("example", example)
    ```


    :param str cloud: The cloud service provider that hosts the region. Accepted values are: `AWS`, `AZURE`, and `GCP`.
    :param str package: The type of the billing package. Accepted values are: `ESSENTIALS` and `ADVANCED`.
           
           > **Note:** See [Schema Registry Regions](https://docs.confluent.io/cloud/current/stream-governance/packages.html#stream-governance-regions) to manually find a corresponding region ID based on desired cloud provider region and types of the billing package.
    :param str region: The cloud service provider region, for example, `us-east-2`. See [Cloud Providers and Regions](https://docs.confluent.io/cloud/current/clusters/regions.html#cloud-providers-and-regions) for a full list of options for AWS, Azure, and GCP.
    """
    ...
