"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import google.protobuf.timestamp_pb2
import osmosis.downtime_detector.v1beta1.downtime_duration_pb2
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 GenesisDowntimeEntry(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DURATION_FIELD_NUMBER: builtins.int
    LAST_DOWNTIME_FIELD_NUMBER: builtins.int
    duration: osmosis.downtime_detector.v1beta1.downtime_duration_pb2.Downtime.ValueType
    @property
    def last_downtime(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    def __init__(
        self,
        *,
        duration: osmosis.downtime_detector.v1beta1.downtime_duration_pb2.Downtime.ValueType = ...,
        last_downtime: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["last_downtime", b"last_downtime"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["duration", b"duration", "last_downtime", b"last_downtime"]) -> None: ...

global___GenesisDowntimeEntry = GenesisDowntimeEntry

@typing_extensions.final
class GenesisState(google.protobuf.message.Message):
    """GenesisState defines the twap module's genesis state."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DOWNTIMES_FIELD_NUMBER: builtins.int
    LAST_BLOCK_TIME_FIELD_NUMBER: builtins.int
    @property
    def downtimes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GenesisDowntimeEntry]: ...
    @property
    def last_block_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    def __init__(
        self,
        *,
        downtimes: collections.abc.Iterable[global___GenesisDowntimeEntry] | None = ...,
        last_block_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["last_block_time", b"last_block_time"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["downtimes", b"downtimes", "last_block_time", b"last_block_time"]) -> None: ...

global___GenesisState = GenesisState
