"""
@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_vesting_withdraw(google.protobuf.message.Message):
    """Related to withdraw_vesting_operation and set_withdraw_vesting_route_operation.
    Generated during block processing in batches for each active withdraw route (including implied
    from_account(VESTS)->from_account(HIVE)) each time vesting withdrawal period passes.
    Note: not generated for implied route when all funds were already distributed along explicit routes
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FROM_ACCOUNT_FIELD_NUMBER: builtins.int
    TO_ACCOUNT_FIELD_NUMBER: builtins.int
    WITHDRAWN_FIELD_NUMBER: builtins.int
    DEPOSITED_FIELD_NUMBER: builtins.int
    from_account: builtins.str
    """@param {string} from_account - user that activated power down"""
    to_account: builtins.str
    """@param {string} to_account - target of vesting route (potentially the same as from_account - receiver of deposited)"""
    @property
    def withdrawn(self) -> asset_pb2.asset:
        """@param {asset} withdraw - (VESTS) source amount"""
    @property
    def deposited(self) -> asset_pb2.asset:
        """ @param {asset} deposited - (HIVE or VESTS) [converted] target amount"""
    def __init__(
        self,
        *,
        from_account: builtins.str | None = ...,
        to_account: builtins.str | None = ...,
        withdrawn: asset_pb2.asset | None = ...,
        deposited: asset_pb2.asset | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["deposited", b"deposited", "from_account", b"from_account", "to_account", b"to_account", "withdrawn", b"withdrawn"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["deposited", b"deposited", "from_account", b"from_account", "to_account", b"to_account", "withdrawn", b"withdrawn"]) -> None: ...

global___fill_vesting_withdraw = fill_vesting_withdraw
