from v4_proto.cosmos.group.v1 import types_pb2 as _types_pb2
from google.protobuf.internal import containers as _containers
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from collections.abc import Iterable as _Iterable, Mapping as _Mapping
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union

DESCRIPTOR: _descriptor.FileDescriptor

class GenesisState(_message.Message):
    __slots__ = ("group_seq", "groups", "group_members", "group_policy_seq", "group_policies", "proposal_seq", "proposals", "votes")
    GROUP_SEQ_FIELD_NUMBER: _ClassVar[int]
    GROUPS_FIELD_NUMBER: _ClassVar[int]
    GROUP_MEMBERS_FIELD_NUMBER: _ClassVar[int]
    GROUP_POLICY_SEQ_FIELD_NUMBER: _ClassVar[int]
    GROUP_POLICIES_FIELD_NUMBER: _ClassVar[int]
    PROPOSAL_SEQ_FIELD_NUMBER: _ClassVar[int]
    PROPOSALS_FIELD_NUMBER: _ClassVar[int]
    VOTES_FIELD_NUMBER: _ClassVar[int]
    group_seq: int
    groups: _containers.RepeatedCompositeFieldContainer[_types_pb2.GroupInfo]
    group_members: _containers.RepeatedCompositeFieldContainer[_types_pb2.GroupMember]
    group_policy_seq: int
    group_policies: _containers.RepeatedCompositeFieldContainer[_types_pb2.GroupPolicyInfo]
    proposal_seq: int
    proposals: _containers.RepeatedCompositeFieldContainer[_types_pb2.Proposal]
    votes: _containers.RepeatedCompositeFieldContainer[_types_pb2.Vote]
    def __init__(self, group_seq: _Optional[int] = ..., groups: _Optional[_Iterable[_Union[_types_pb2.GroupInfo, _Mapping]]] = ..., group_members: _Optional[_Iterable[_Union[_types_pb2.GroupMember, _Mapping]]] = ..., group_policy_seq: _Optional[int] = ..., group_policies: _Optional[_Iterable[_Union[_types_pb2.GroupPolicyInfo, _Mapping]]] = ..., proposal_seq: _Optional[int] = ..., proposals: _Optional[_Iterable[_Union[_types_pb2.Proposal, _Mapping]]] = ..., votes: _Optional[_Iterable[_Union[_types_pb2.Vote, _Mapping]]] = ...) -> None: ...
