# Path: google/cloud/servicedirectory_v1beta1/types/endpoint.py
# class Endpoint(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/endpoint.py
# class Endpoint(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/namespace.py
# class Namespace(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/namespace.py
# class Namespace(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/registration_service.py
# class CreateNamespaceRequest(proto.Message):
# class ListNamespacesRequest(proto.Message):
# class ListNamespacesResponse(proto.Message):
# class GetNamespaceRequest(proto.Message):
# class UpdateNamespaceRequest(proto.Message):
# class DeleteNamespaceRequest(proto.Message):
# class CreateServiceRequest(proto.Message):
# class ListServicesRequest(proto.Message):
# class ListServicesResponse(proto.Message):
# class GetServiceRequest(proto.Message):
# class UpdateServiceRequest(proto.Message):
# class DeleteServiceRequest(proto.Message):
# class CreateEndpointRequest(proto.Message):
# class ListEndpointsRequest(proto.Message):
# class ListEndpointsResponse(proto.Message):
# class GetEndpointRequest(proto.Message):
# class UpdateEndpointRequest(proto.Message):
# class DeleteEndpointRequest(proto.Message):
#     def raw_page(self):
#     def raw_page(self):
#     def raw_page(self):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/service.py
# class Service(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/service.py
# class Service(proto.Message):


import abc
import pkg_resources
import google.auth  # type: ignore
import google.api_core
from typing import Awaitable, Callable, Dict, Optional, Sequence, Union
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
from google.api_core import retry as retries
from google.auth import credentials as ga_credentials  # type: ignore
from google.oauth2 import service_account  # type: ignore
from google.cloud.servicedirectory_v1beta1.types import endpoint
from google.cloud.servicedirectory_v1beta1.types import endpoint as gcs_endpoint
from google.cloud.servicedirectory_v1beta1.types import namespace
from google.cloud.servicedirectory_v1beta1.types import namespace as gcs_namespace
from google.cloud.servicedirectory_v1beta1.types import registration_service
from google.cloud.servicedirectory_v1beta1.types import service
from google.cloud.servicedirectory_v1beta1.types import service as gcs_service
from google.iam.v1 import iam_policy_pb2  # type: ignore
from google.iam.v1 import policy_pb2  # type: ignore
from google.protobuf import empty_pb2  # type: ignore
        Union[empty_pb2.Empty, Awaitable[empty_pb2.Empty]],
    ]:
        raise NotImplementedError()

    @property
    def create_endpoint(
        self,
    ) -> Callable[
        [registration_service.CreateEndpointRequest],
        Union[gcs_endpoint.Endpoint, Awaitable[gcs_endpoint.Endpoint]],
    ]:
        raise NotImplementedError()

    @property
    def list_endpoints(
        self,
    ) -> Callable[
        [registration_service.ListEndpointsRequest],
        Union[
            registration_service.ListEndpointsResponse,
            Awaitable[registration_service.ListEndpointsResponse],
        ],
    ]:
        raise NotImplementedError()

    @property
    def get_endpoint(
        self,
    ) -> Callable[
        [registration_service.GetEndpointRequest],

# Path: google/cloud/servicedirectory_v1beta1/types/endpoint.py
# class Endpoint(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/endpoint.py
# class Endpoint(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/namespace.py
# class Namespace(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/namespace.py
# class Namespace(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/registration_service.py
# class CreateNamespaceRequest(proto.Message):
# class ListNamespacesRequest(proto.Message):
# class ListNamespacesResponse(proto.Message):
# class GetNamespaceRequest(proto.Message):
# class UpdateNamespaceRequest(proto.Message):
# class DeleteNamespaceRequest(proto.Message):
# class CreateServiceRequest(proto.Message):
# class ListServicesRequest(proto.Message):
# class ListServicesResponse(proto.Message):
# class GetServiceRequest(proto.Message):
# class UpdateServiceRequest(proto.Message):
# class DeleteServiceRequest(proto.Message):
# class CreateEndpointRequest(proto.Message):
# class ListEndpointsRequest(proto.Message):
# class ListEndpointsResponse(proto.Message):
# class GetEndpointRequest(proto.Message):
# class UpdateEndpointRequest(proto.Message):
# class DeleteEndpointRequest(proto.Message):
#     def raw_page(self):
#     def raw_page(self):
#     def raw_page(self):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/service.py
# class Service(proto.Message):
# 
# Path: google/cloud/servicedirectory_v1beta1/types/service.py
# class Service(proto.Message):


# Path: google/cloud/servicedirectory_v1beta1/services/registration_service/transports/base.py
import abc
import pkg_resources
import google.auth  # type: ignore
import google.api_core
from typing import Awaitable, Callable, Dict, Optional, Sequence, Union
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
from google.api_core import retry as retries
from google.auth import credentials as ga_credentials  # type: ignore
from google.oauth2 import service_account  # type: ignore
from google.cloud.servicedirectory_v1beta1.types import endpoint
from google.cloud.servicedirectory_v1beta1.types import endpoint as gcs_endpoint
from google.cloud.servicedirectory_v1beta1.types import namespace
from google.cloud.servicedirectory_v1beta1.types import namespace as gcs_namespace
from google.cloud.servicedirectory_v1beta1.types import registration_service
from google.cloud.servicedirectory_v1beta1.types import service
from google.cloud.servicedirectory_v1beta1.types import service as gcs_service
from google.iam.v1 import iam_policy_pb2  # type: ignore
from google.iam.v1 import policy_pb2  # type: ignore
from google.protobuf import empty_pb2  # type: ignore

        Union[empty_pb2.Empty, Awaitable[empty_pb2.Empty]],
    ]:
        raise NotImplementedError()

    @property
    def create_endpoint(
        self,
    ) -> Callable[
        [registration_service.CreateEndpointRequest],
        Union[gcs_endpoint.Endpoint, Awaitable[gcs_endpoint.Endpoint]],
    ]:
        raise NotImplementedError()

    @property
    def list_endpoints(
        self,
    ) -> Callable[
        [registration_service.ListEndpointsRequest],
        Union[
            registration_service.ListEndpointsResponse,
            Awaitable[registration_service.ListEndpointsResponse],
        ],
    ]:
        raise NotImplementedError()

    @property
    def get_endpoint(
        self,
    ) -> Callable[
        [registration_service.GetEndpointRequest],

        Union[endpoint.Endpoint, Awaitable[endpoint.Endpoint]],