"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import cosmos.base.v1beta1.coin_pb2
import google.protobuf.descriptor
import google.protobuf.duration_pb2
import google.protobuf.internal.containers
import google.protobuf.message
import google.protobuf.timestamp_pb2
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class MsgLockTokens(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    OWNER_FIELD_NUMBER: builtins.int
    DURATION_FIELD_NUMBER: builtins.int
    COINS_FIELD_NUMBER: builtins.int
    owner: typing.Text
    @property
    def duration(self) -> google.protobuf.duration_pb2.Duration: ...
    @property
    def coins(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]: ...
    def __init__(self,
        *,
        owner: typing.Text = ...,
        duration: typing.Optional[google.protobuf.duration_pb2.Duration] = ...,
        coins: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["duration",b"duration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["coins",b"coins","duration",b"duration","owner",b"owner"]) -> None: ...
global___MsgLockTokens = MsgLockTokens

class MsgLockTokensResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    LOCK_ID_FIELD_NUMBER: builtins.int
    lock_id: builtins.int
    def __init__(self,
        *,
        lock_id: builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["lock_id",b"lock_id"]) -> None: ...
global___MsgLockTokensResponse = MsgLockTokensResponse

class MsgInitiateUnlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    OWNER_FIELD_NUMBER: builtins.int
    LOCK_ID_FIELD_NUMBER: builtins.int
    owner: typing.Text
    lock_id: builtins.int
    def __init__(self,
        *,
        owner: typing.Text = ...,
        lock_id: builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["lock_id",b"lock_id","owner",b"owner"]) -> None: ...
global___MsgInitiateUnlock = MsgInitiateUnlock

class MsgInitiateUnlockResponse(google.protobuf.message.Message):
    """TODO(mercilex): maybe report unlock time"""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    def __init__(self,
        ) -> None: ...
global___MsgInitiateUnlockResponse = MsgInitiateUnlockResponse

class MsgUnlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    OWNER_FIELD_NUMBER: builtins.int
    LOCK_ID_FIELD_NUMBER: builtins.int
    owner: typing.Text
    lock_id: builtins.int
    def __init__(self,
        *,
        owner: typing.Text = ...,
        lock_id: builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["lock_id",b"lock_id","owner",b"owner"]) -> None: ...
global___MsgUnlock = MsgUnlock

class MsgUnlockResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    def __init__(self,
        ) -> None: ...
global___MsgUnlockResponse = MsgUnlockResponse

class EventLock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    LOCK_ID_FIELD_NUMBER: builtins.int
    OWNER_FIELD_NUMBER: builtins.int
    DURATION_FIELD_NUMBER: builtins.int
    COINS_FIELD_NUMBER: builtins.int
    lock_id: builtins.int
    owner: typing.Text
    @property
    def duration(self) -> google.protobuf.duration_pb2.Duration: ...
    @property
    def coins(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]: ...
    def __init__(self,
        *,
        lock_id: builtins.int = ...,
        owner: typing.Text = ...,
        duration: typing.Optional[google.protobuf.duration_pb2.Duration] = ...,
        coins: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["duration",b"duration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["coins",b"coins","duration",b"duration","lock_id",b"lock_id","owner",b"owner"]) -> None: ...
global___EventLock = EventLock

class EventUnlockInitiated(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    LOCK_ID_FIELD_NUMBER: builtins.int
    OWNER_FIELD_NUMBER: builtins.int
    COINS_FIELD_NUMBER: builtins.int
    UNLOCKING_AT_FIELD_NUMBER: builtins.int
    lock_id: builtins.int
    owner: typing.Text
    @property
    def coins(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]: ...
    @property
    def unlocking_at(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    def __init__(self,
        *,
        lock_id: builtins.int = ...,
        owner: typing.Text = ...,
        coins: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        unlocking_at: typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["unlocking_at",b"unlocking_at"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["coins",b"coins","lock_id",b"lock_id","owner",b"owner","unlocking_at",b"unlocking_at"]) -> None: ...
global___EventUnlockInitiated = EventUnlockInitiated

class EventUnlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    LOCK_ID_FIELD_NUMBER: builtins.int
    OWNER_FIELD_NUMBER: builtins.int
    COINS_FIELD_NUMBER: builtins.int
    lock_id: builtins.int
    owner: typing.Text
    @property
    def coins(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]: ...
    def __init__(self,
        *,
        lock_id: builtins.int = ...,
        owner: typing.Text = ...,
        coins: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["coins",b"coins","lock_id",b"lock_id","owner",b"owner"]) -> None: ...
global___EventUnlock = EventUnlock
