"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.duration_pb2
import google.protobuf.message
import google.protobuf.timestamp_pb2
import qwak.ecosystem.v0.credentials_pb2
import qwak.ecosystem.v0.ecosystem_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class AuthenticateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USERNAME_PASSWORD_METHOD_FIELD_NUMBER: builtins.int
    QWAK_API_KEY_METHOD_FIELD_NUMBER: builtins.int
    @property
    def username_password_method(self) -> qwak.ecosystem.v0.ecosystem_pb2.UsernamePasswordMethod: ...
    @property
    def qwak_api_key_method(self) -> qwak.ecosystem.v0.ecosystem_pb2.QwakApiKeyMethod: ...
    def __init__(
        self,
        *,
        username_password_method: qwak.ecosystem.v0.ecosystem_pb2.UsernamePasswordMethod | None = ...,
        qwak_api_key_method: qwak.ecosystem.v0.ecosystem_pb2.QwakApiKeyMethod | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["authentication_method", b"authentication_method", "qwak_api_key_method", b"qwak_api_key_method", "username_password_method", b"username_password_method"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["authentication_method", b"authentication_method", "qwak_api_key_method", b"qwak_api_key_method", "username_password_method", b"username_password_method"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["authentication_method", b"authentication_method"]) -> typing_extensions.Literal["username_password_method", "qwak_api_key_method"] | None: ...

global___AuthenticateRequest = AuthenticateRequest

class AuthenticateResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_TOKEN_FIELD_NUMBER: builtins.int
    EXPIRED_AT_FIELD_NUMBER: builtins.int
    access_token: builtins.str
    """The generated token"""
    @property
    def expired_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The expiration time of the token"""
    def __init__(
        self,
        *,
        access_token: builtins.str = ...,
        expired_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["expired_at", b"expired_at"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_token", b"access_token", "expired_at", b"expired_at"]) -> None: ...

global___AuthenticateResponse = AuthenticateResponse

class GetAuthenticatedUserContextRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___GetAuthenticatedUserContextRequest = GetAuthenticatedUserContextRequest

class GetAuthenticatedUserContextResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AUTHENTICATED_USER_CONTEXT_FIELD_NUMBER: builtins.int
    @property
    def authenticated_user_context(self) -> qwak.ecosystem.v0.ecosystem_pb2.AuthenticatedUserContext:
        """Accounts details"""
    def __init__(
        self,
        *,
        authenticated_user_context: qwak.ecosystem.v0.ecosystem_pb2.AuthenticatedUserContext | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["authenticated_user_context", b"authenticated_user_context"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["authenticated_user_context", b"authenticated_user_context"]) -> None: ...

global___GetAuthenticatedUserContextResponse = GetAuthenticatedUserContextResponse

class GetUnifiedUserContextRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_ID_FIELD_NUMBER: builtins.int
    ACCOUNT_ID_FIELD_NUMBER: builtins.int
    user_id: builtins.str
    """The user id to get context for"""
    account_id: builtins.str
    """The account id to get context for"""
    def __init__(
        self,
        *,
        user_id: builtins.str = ...,
        account_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["account_id", b"account_id", "user_id", b"user_id"]) -> None: ...

global___GetUnifiedUserContextRequest = GetUnifiedUserContextRequest

class GetUnifiedUserContextResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_CONTEXT_FIELD_NUMBER: builtins.int
    @property
    def user_context(self) -> qwak.ecosystem.v0.ecosystem_pb2.AuthenticatedUserContext: ...
    def __init__(
        self,
        *,
        user_context: qwak.ecosystem.v0.ecosystem_pb2.AuthenticatedUserContext | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["user_context", b"user_context"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["user_context", b"user_context"]) -> None: ...

global___GetUnifiedUserContextResponse = GetUnifiedUserContextResponse

class GetAccountRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCOUNT_ID_FIELD_NUMBER: builtins.int
    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    account_id: builtins.str
    """The requested account id"""
    environment_id: builtins.str
    """The requested account id"""
    def __init__(
        self,
        *,
        account_id: builtins.str = ...,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["account_id", b"account_id", "environment_id", b"environment_id", "get_by", b"get_by"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["account_id", b"account_id", "environment_id", b"environment_id", "get_by", b"get_by"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["get_by", b"get_by"]) -> typing_extensions.Literal["account_id", "environment_id"] | None: ...

global___GetAccountRequest = GetAccountRequest

class GetAccountResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCOUNT_DETAILS_FIELD_NUMBER: builtins.int
    @property
    def account_details(self) -> qwak.ecosystem.v0.ecosystem_pb2.AccountDetails:
        """The account details"""
    def __init__(
        self,
        *,
        account_details: qwak.ecosystem.v0.ecosystem_pb2.AccountDetails | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["account_details", b"account_details"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["account_details", b"account_details"]) -> None: ...

global___GetAccountResponse = GetAccountResponse

class ListUserAccountsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___ListUserAccountsRequest = ListUserAccountsRequest

class ListUserAccountsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_ACCOUNT_LIST_FIELD_NUMBER: builtins.int
    @property
    def user_account_list(self) -> qwak.ecosystem.v0.ecosystem_pb2.UserAccountList:
        """List of account for the authenticated user"""
    def __init__(
        self,
        *,
        user_account_list: qwak.ecosystem.v0.ecosystem_pb2.UserAccountList | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["user_account_list", b"user_account_list"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["user_account_list", b"user_account_list"]) -> None: ...

global___ListUserAccountsResponse = ListUserAccountsResponse

class GetCloudCredentialsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PARAMETERS_FIELD_NUMBER: builtins.int
    @property
    def parameters(self) -> global___GetCloudCredentialsParameters: ...
    def __init__(
        self,
        *,
        parameters: global___GetCloudCredentialsParameters | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["parameters", b"parameters"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["parameters", b"parameters"]) -> None: ...

global___GetCloudCredentialsRequest = GetCloudCredentialsRequest

class GetCloudCredentialsParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DURATION_FIELD_NUMBER: builtins.int
    PERMISSION_SET_FIELD_NUMBER: builtins.int
    @property
    def duration(self) -> google.protobuf.duration_pb2.Duration:
        """Requested duration for the credentials"""
    @property
    def permission_set(self) -> global___PermissionSet:
        """Permission set to include in the credentials"""
    def __init__(
        self,
        *,
        duration: google.protobuf.duration_pb2.Duration | None = ...,
        permission_set: global___PermissionSet | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["duration", b"duration", "permission_set", b"permission_set"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["duration", b"duration", "permission_set", b"permission_set"]) -> None: ...

global___GetCloudCredentialsParameters = GetCloudCredentialsParameters

class PermissionSet(google.protobuf.message.Message):
    """The requested predefined set of permissions the credentials will include"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EDGE_ENVIRONMENT_WORKLOAD_FIELD_NUMBER: builtins.int
    CORE_SERVICES_FIELD_NUMBER: builtins.int
    OFFLINE_FEATURE_STORE_CLIENT_FIELD_NUMBER: builtins.int
    REMOTE_BUILD_EXECUTOR_FIELD_NUMBER: builtins.int
    PULL_MODELS_CONTAINER_REGISTRY_FIELD_NUMBER: builtins.int
    BATCH_JOB_EXECUTOR_FIELD_NUMBER: builtins.int
    FEATURE_SET_PROCESSOR_FIELD_NUMBER: builtins.int
    ANALYTICS_SERVICE_FIELD_NUMBER: builtins.int
    @property
    def edge_environment_workload(self) -> global___EdgeEnvironmentWorkload:
        """Permission set for edge environments workload"""
    @property
    def core_services(self) -> global___CoreServices:
        """Permission set for core services needs credentials for environment"""
    @property
    def offline_feature_store_client(self) -> global___OfflineFeatureStoreClient:
        """Offline feature store client"""
    @property
    def remote_build_executor(self) -> global___RemoteBuildExecutor:
        """Remote build executor"""
    @property
    def pull_models_container_registry(self) -> global___PullModelsContainerRegistry:
        """Credentials for pull models from container registry"""
    @property
    def batch_job_executor(self) -> global___BatchJobExecutor:
        """Batch job executor"""
    @property
    def feature_set_processor(self) -> global___FeatureSetProcessor:
        """Batch job executor"""
    @property
    def analytics_service(self) -> global___AnalyticsService: ...
    def __init__(
        self,
        *,
        edge_environment_workload: global___EdgeEnvironmentWorkload | None = ...,
        core_services: global___CoreServices | None = ...,
        offline_feature_store_client: global___OfflineFeatureStoreClient | None = ...,
        remote_build_executor: global___RemoteBuildExecutor | None = ...,
        pull_models_container_registry: global___PullModelsContainerRegistry | None = ...,
        batch_job_executor: global___BatchJobExecutor | None = ...,
        feature_set_processor: global___FeatureSetProcessor | None = ...,
        analytics_service: global___AnalyticsService | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["analytics_service", b"analytics_service", "batch_job_executor", b"batch_job_executor", "core_services", b"core_services", "edge_environment_workload", b"edge_environment_workload", "feature_set_processor", b"feature_set_processor", "offline_feature_store_client", b"offline_feature_store_client", "pull_models_container_registry", b"pull_models_container_registry", "remote_build_executor", b"remote_build_executor", "subject", b"subject"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["analytics_service", b"analytics_service", "batch_job_executor", b"batch_job_executor", "core_services", b"core_services", "edge_environment_workload", b"edge_environment_workload", "feature_set_processor", b"feature_set_processor", "offline_feature_store_client", b"offline_feature_store_client", "pull_models_container_registry", b"pull_models_container_registry", "remote_build_executor", b"remote_build_executor", "subject", b"subject"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["subject", b"subject"]) -> typing_extensions.Literal["edge_environment_workload", "core_services", "offline_feature_store_client", "remote_build_executor", "pull_models_container_registry", "batch_job_executor", "feature_set_processor", "analytics_service"] | None: ...

global___PermissionSet = PermissionSet

class EdgeEnvironmentWorkload(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___EdgeEnvironmentWorkload = EdgeEnvironmentWorkload

class CoreServices(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___CoreServices = CoreServices

class OfflineFeatureStoreClient(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for (optional if environment chosen on headers)"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___OfflineFeatureStoreClient = OfflineFeatureStoreClient

class RemoteBuildExecutor(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___RemoteBuildExecutor = RemoteBuildExecutor

class PullModelsContainerRegistry(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___PullModelsContainerRegistry = PullModelsContainerRegistry

class BatchJobExecutor(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___BatchJobExecutor = BatchJobExecutor

class FeatureSetProcessor(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___FeatureSetProcessor = FeatureSetProcessor

class AnalyticsService(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    environment_id: builtins.str
    """The environment id the permission are for"""
    def __init__(
        self,
        *,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...

global___AnalyticsService = AnalyticsService

class GetCloudCredentialsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLOUD_CREDENTIALS_FIELD_NUMBER: builtins.int
    @property
    def cloud_credentials(self) -> qwak.ecosystem.v0.credentials_pb2.CloudCredentials:
        """The credentials of the environment in the cloud provider"""
    def __init__(
        self,
        *,
        cloud_credentials: qwak.ecosystem.v0.credentials_pb2.CloudCredentials | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cloud_credentials", b"cloud_credentials"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["cloud_credentials", b"cloud_credentials"]) -> None: ...

global___GetCloudCredentialsResponse = GetCloudCredentialsResponse
