"""
@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_order(google.protobuf.message.Message):
    """Related to limit_order_create_operation and limit_order_create2_operation.
    Generated during one of above operations when order on internal market is partially or fully matched
    (each match generates separate vop).
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CURRENT_OWNER_FIELD_NUMBER: builtins.int
    CURRENT_ORDERID_FIELD_NUMBER: builtins.int
    CURRENT_PAYS_FIELD_NUMBER: builtins.int
    OPEN_OWNER_FIELD_NUMBER: builtins.int
    OPEN_ORDERID_FIELD_NUMBER: builtins.int
    OPEN_PAYS_FIELD_NUMBER: builtins.int
    current_owner: builtins.str
    """@param {string} current_owner - user that recently created order (taker - receiver of open_pays)"""
    current_orderid: builtins.int
    """@param {number} current_orderid - id of fresh order"""
    @property
    def current_pays(self) -> asset_pb2.asset:
        """@param {asset} current_pays - (HIVE or HBD) amount paid to open_owner"""
    open_owner: builtins.str
    """@param {string} open_owner - user that had his order on the market (maker - receiver of current_pays)"""
    open_orderid: builtins.int
    """@param {number} open_orderid - id of waiting order"""
    @property
    def open_pays(self) -> asset_pb2.asset:
        """@param {asset} open_pays - (HBD or HIVE) amount paid to current_owner"""
    def __init__(
        self,
        *,
        current_owner: builtins.str | None = ...,
        current_orderid: builtins.int | None = ...,
        current_pays: asset_pb2.asset | None = ...,
        open_owner: builtins.str | None = ...,
        open_orderid: builtins.int | None = ...,
        open_pays: asset_pb2.asset | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["current_orderid", b"current_orderid", "current_owner", b"current_owner", "current_pays", b"current_pays", "open_orderid", b"open_orderid", "open_owner", b"open_owner", "open_pays", b"open_pays"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["current_orderid", b"current_orderid", "current_owner", b"current_owner", "current_pays", b"current_pays", "open_orderid", b"open_orderid", "open_owner", b"open_owner", "open_pays", b"open_pays"]) -> None: ...

global___fill_order = fill_order
