"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import asset_pb2
import builtins
import google.protobuf.descriptor
import google.protobuf.message
import sys

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class fill_collateralized_convert_request(google.protobuf.message.Message):
    """Related to collateralized_convert_operation.
    Generated during block processing after conversion delay passes and HIVE is finally converted to HBD.
    Note: HBD is transferred immediately during execution of above operation, this vop is generated after actual
    price of conversion becomes known.
    @see collateralized_convert_immediate_conversion
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OWNER_FIELD_NUMBER: builtins.int
    REQUESTID_FIELD_NUMBER: builtins.int
    AMOUNT_IN_FIELD_NUMBER: builtins.int
    AMOUNT_OUT_FIELD_NUMBER: builtins.int
    EXCESS_COLLATERAL_FIELD_NUMBER: builtins.int
    owner: builtins.str
    """@param {string} owner - user that requested conversion (receiver of excess_collateral)"""
    requestid: builtins.int
    """@param {number} requestid - id of the request"""
    @property
    def amount_in(self) -> asset_pb2.asset:
        """@param {asset} amount_in - (HIVE) source of conversion (part of collateral)"""
    @property
    def amount_out(self) -> asset_pb2.asset:
        """@param {asset} amount_out - (HBD) result of conversion (already transferred to owner when request was made)"""
    @property
    def excess_collateral(self) -> asset_pb2.asset:
        """@param {asset} excess_collateral - (HIVE) unused part of collateral returned to owner"""
    def __init__(
        self,
        *,
        owner: builtins.str | None = ...,
        requestid: builtins.int | None = ...,
        amount_in: asset_pb2.asset | None = ...,
        amount_out: asset_pb2.asset | None = ...,
        excess_collateral: asset_pb2.asset | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["amount_in", b"amount_in", "amount_out", b"amount_out", "excess_collateral", b"excess_collateral", "owner", b"owner", "requestid", b"requestid"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["amount_in", b"amount_in", "amount_out", b"amount_out", "excess_collateral", b"excess_collateral", "owner", b"owner", "requestid", b"requestid"]) -> None: ...

global___fill_collateralized_convert_request = fill_collateralized_convert_request
