"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import google.protobuf.descriptor
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class AsymmetricSignRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_ID_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    key_id: builtins.str
    """ID of the asymmetric KMS key to use for signature."""
    message: builtins.bytes
    """Message to sign.
    Should be encoded with base64.
    """
    def __init__(
        self,
        *,
        key_id: builtins.str = ...,
        message: builtins.bytes = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["key_id", b"key_id", "message", b"message"]) -> None: ...

global___AsymmetricSignRequest = AsymmetricSignRequest

@typing.final
class AsymmetricSignResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_ID_FIELD_NUMBER: builtins.int
    SIGNATURE_FIELD_NUMBER: builtins.int
    key_id: builtins.str
    """ID of the asymmetric KMS key that was used for signature."""
    signature: builtins.bytes
    """Value of signature.
    Signature value is produced in accordance with RFC 8017 for RSA
    and is a DER-encoded object as defined by ANSI X9.62-2005 and RFC 3279 Section 2.2.3 for ECDSA.
    """
    def __init__(
        self,
        *,
        key_id: builtins.str = ...,
        signature: builtins.bytes = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["key_id", b"key_id", "signature", b"signature"]) -> None: ...

global___AsymmetricSignResponse = AsymmetricSignResponse

@typing.final
class AsymmetricSignHashRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_ID_FIELD_NUMBER: builtins.int
    HASH_FIELD_NUMBER: builtins.int
    key_id: builtins.str
    """ID of the asymmetric KMS key to use for signature."""
    hash: builtins.bytes
    """Hash value to be signed.
    Should be encoded with base64.
    """
    def __init__(
        self,
        *,
        key_id: builtins.str = ...,
        hash: builtins.bytes = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["hash", b"hash", "key_id", b"key_id"]) -> None: ...

global___AsymmetricSignHashRequest = AsymmetricSignHashRequest

@typing.final
class AsymmetricSignHashResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_ID_FIELD_NUMBER: builtins.int
    SIGNATURE_FIELD_NUMBER: builtins.int
    key_id: builtins.str
    """ID of the asymmetric KMS key that was used for signature."""
    signature: builtins.bytes
    """Value of signature.
    Signature value is produced in accordance with RFC 8017 for RSA
    and is a DER-encoded object as defined by ANSI X9.62-2005 and RFC 3279 Section 2.2.3 for ECDSA.
    """
    def __init__(
        self,
        *,
        key_id: builtins.str = ...,
        signature: builtins.bytes = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["key_id", b"key_id", "signature", b"signature"]) -> None: ...

global___AsymmetricSignHashResponse = AsymmetricSignHashResponse

@typing.final
class AsymmetricGetPublicKeyRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_ID_FIELD_NUMBER: builtins.int
    key_id: builtins.str
    """ID of the asymmetric KMS key to be used for public key retrieval."""
    def __init__(
        self,
        *,
        key_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["key_id", b"key_id"]) -> None: ...

global___AsymmetricGetPublicKeyRequest = AsymmetricGetPublicKeyRequest

@typing.final
class AsymmetricGetPublicKeyResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_ID_FIELD_NUMBER: builtins.int
    PUBLIC_KEY_FIELD_NUMBER: builtins.int
    key_id: builtins.str
    """ID of the asymmetric KMS key to get public key of."""
    public_key: builtins.str
    """Public key value.
    The value is a PEM-encoded X.509 public key, also known as SubjectPublicKeyInfo (SPKI),
    as defined in RFC 5280.
    """
    def __init__(
        self,
        *,
        key_id: builtins.str = ...,
        public_key: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["key_id", b"key_id", "public_key", b"public_key"]) -> None: ...

global___AsymmetricGetPublicKeyResponse = AsymmetricGetPublicKeyResponse
