"""
@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 nibiru.oracle.v1.oracle_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 QueryExchangeRateRequest(google.protobuf.message.Message):
    """QueryExchangeRateRequest is the request type for the Query/ExchangeRate RPC
    method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PAIR_FIELD_NUMBER: builtins.int
    pair: builtins.str
    """pair defines the pair to query for."""
    def __init__(
        self,
        *,
        pair: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["pair", b"pair"]) -> None: ...

global___QueryExchangeRateRequest = QueryExchangeRateRequest

@typing_extensions.final
class QueryExchangeRateResponse(google.protobuf.message.Message):
    """QueryExchangeRateResponse is response type for the
    Query/ExchangeRate RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXCHANGE_RATE_FIELD_NUMBER: builtins.int
    exchange_rate: builtins.str
    """exchange_rate defines the exchange rate of assets voted by validators"""
    def __init__(
        self,
        *,
        exchange_rate: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["exchange_rate", b"exchange_rate"]) -> None: ...

global___QueryExchangeRateResponse = QueryExchangeRateResponse

@typing_extensions.final
class QueryExchangeRatesRequest(google.protobuf.message.Message):
    """QueryExchangeRatesRequest is the request type for the Query/ExchangeRates RPC
    method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___QueryExchangeRatesRequest = QueryExchangeRatesRequest

@typing_extensions.final
class QueryExchangeRatesResponse(google.protobuf.message.Message):
    """QueryExchangeRatesResponse is response type for the
    Query/ExchangeRates RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXCHANGE_RATES_FIELD_NUMBER: builtins.int
    @property
    def exchange_rates(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[nibiru.oracle.v1.oracle_pb2.ExchangeRateTuple]:
        """exchange_rates defines a list of the exchange rate for all whitelisted
        pairs.
        """
    def __init__(
        self,
        *,
        exchange_rates: collections.abc.Iterable[nibiru.oracle.v1.oracle_pb2.ExchangeRateTuple] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["exchange_rates", b"exchange_rates"]) -> None: ...

global___QueryExchangeRatesResponse = QueryExchangeRatesResponse

@typing_extensions.final
class QueryActivesRequest(google.protobuf.message.Message):
    """QueryActivesRequest is the request type for the Query/Actives RPC method."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___QueryActivesRequest = QueryActivesRequest

@typing_extensions.final
class QueryActivesResponse(google.protobuf.message.Message):
    """QueryActivesResponse is response type for the
    Query/Actives RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACTIVES_FIELD_NUMBER: builtins.int
    @property
    def actives(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """actives defines a list of the pair which oracle prices agreed upon."""
    def __init__(
        self,
        *,
        actives: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["actives", b"actives"]) -> None: ...

global___QueryActivesResponse = QueryActivesResponse

@typing_extensions.final
class QueryVoteTargetsRequest(google.protobuf.message.Message):
    """QueryVoteTargetsRequest is the request type for the Query/VoteTargets RPC
    method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___QueryVoteTargetsRequest = QueryVoteTargetsRequest

@typing_extensions.final
class QueryVoteTargetsResponse(google.protobuf.message.Message):
    """QueryVoteTargetsResponse is response type for the
    Query/VoteTargets RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VOTE_TARGETS_FIELD_NUMBER: builtins.int
    @property
    def vote_targets(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """vote_targets defines a list of the pairs in which everyone
        should vote in the current vote period.
        """
    def __init__(
        self,
        *,
        vote_targets: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["vote_targets", b"vote_targets"]) -> None: ...

global___QueryVoteTargetsResponse = QueryVoteTargetsResponse

@typing_extensions.final
class QueryFeederDelegationRequest(google.protobuf.message.Message):
    """QueryFeederDelegationRequest is the request type for the
    Query/FeederDelegation RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALIDATOR_ADDR_FIELD_NUMBER: builtins.int
    validator_addr: builtins.str
    """validator defines the validator address to query for."""
    def __init__(
        self,
        *,
        validator_addr: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["validator_addr", b"validator_addr"]) -> None: ...

global___QueryFeederDelegationRequest = QueryFeederDelegationRequest

@typing_extensions.final
class QueryFeederDelegationResponse(google.protobuf.message.Message):
    """QueryFeederDelegationResponse is response type for the
    Query/FeederDelegation RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FEEDER_ADDR_FIELD_NUMBER: builtins.int
    feeder_addr: builtins.str
    """feeder_addr defines the feeder delegation of a validator"""
    def __init__(
        self,
        *,
        feeder_addr: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["feeder_addr", b"feeder_addr"]) -> None: ...

global___QueryFeederDelegationResponse = QueryFeederDelegationResponse

@typing_extensions.final
class QueryMissCounterRequest(google.protobuf.message.Message):
    """QueryMissCounterRequest is the request type for the Query/MissCounter RPC
    method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALIDATOR_ADDR_FIELD_NUMBER: builtins.int
    validator_addr: builtins.str
    """validator defines the validator address to query for."""
    def __init__(
        self,
        *,
        validator_addr: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["validator_addr", b"validator_addr"]) -> None: ...

global___QueryMissCounterRequest = QueryMissCounterRequest

@typing_extensions.final
class QueryMissCounterResponse(google.protobuf.message.Message):
    """QueryMissCounterResponse is response type for the
    Query/MissCounter RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MISS_COUNTER_FIELD_NUMBER: builtins.int
    miss_counter: builtins.int
    """miss_counter defines the oracle miss counter of a validator"""
    def __init__(
        self,
        *,
        miss_counter: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["miss_counter", b"miss_counter"]) -> None: ...

global___QueryMissCounterResponse = QueryMissCounterResponse

@typing_extensions.final
class QueryAggregatePrevoteRequest(google.protobuf.message.Message):
    """QueryAggregatePrevoteRequest is the request type for the
    Query/AggregatePrevote RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALIDATOR_ADDR_FIELD_NUMBER: builtins.int
    validator_addr: builtins.str
    """validator defines the validator address to query for."""
    def __init__(
        self,
        *,
        validator_addr: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["validator_addr", b"validator_addr"]) -> None: ...

global___QueryAggregatePrevoteRequest = QueryAggregatePrevoteRequest

@typing_extensions.final
class QueryAggregatePrevoteResponse(google.protobuf.message.Message):
    """QueryAggregatePrevoteResponse is response type for the
    Query/AggregatePrevote RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AGGREGATE_PREVOTE_FIELD_NUMBER: builtins.int
    @property
    def aggregate_prevote(self) -> nibiru.oracle.v1.oracle_pb2.AggregateExchangeRatePrevote:
        """aggregate_prevote defines oracle aggregate prevote submitted by a validator
        in the current vote period
        """
    def __init__(
        self,
        *,
        aggregate_prevote: nibiru.oracle.v1.oracle_pb2.AggregateExchangeRatePrevote | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["aggregate_prevote", b"aggregate_prevote"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aggregate_prevote", b"aggregate_prevote"]) -> None: ...

global___QueryAggregatePrevoteResponse = QueryAggregatePrevoteResponse

@typing_extensions.final
class QueryAggregatePrevotesRequest(google.protobuf.message.Message):
    """QueryAggregatePrevotesRequest is the request type for the
    Query/AggregatePrevotes RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___QueryAggregatePrevotesRequest = QueryAggregatePrevotesRequest

@typing_extensions.final
class QueryAggregatePrevotesResponse(google.protobuf.message.Message):
    """QueryAggregatePrevotesResponse is response type for the
    Query/AggregatePrevotes RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AGGREGATE_PREVOTES_FIELD_NUMBER: builtins.int
    @property
    def aggregate_prevotes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[nibiru.oracle.v1.oracle_pb2.AggregateExchangeRatePrevote]:
        """aggregate_prevotes defines all oracle aggregate prevotes submitted in the
        current vote period
        """
    def __init__(
        self,
        *,
        aggregate_prevotes: collections.abc.Iterable[nibiru.oracle.v1.oracle_pb2.AggregateExchangeRatePrevote] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["aggregate_prevotes", b"aggregate_prevotes"]) -> None: ...

global___QueryAggregatePrevotesResponse = QueryAggregatePrevotesResponse

@typing_extensions.final
class QueryAggregateVoteRequest(google.protobuf.message.Message):
    """QueryAggregateVoteRequest is the request type for the Query/AggregateVote RPC
    method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALIDATOR_ADDR_FIELD_NUMBER: builtins.int
    validator_addr: builtins.str
    """validator defines the validator address to query for."""
    def __init__(
        self,
        *,
        validator_addr: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["validator_addr", b"validator_addr"]) -> None: ...

global___QueryAggregateVoteRequest = QueryAggregateVoteRequest

@typing_extensions.final
class QueryAggregateVoteResponse(google.protobuf.message.Message):
    """QueryAggregateVoteResponse is response type for the
    Query/AggregateVote RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AGGREGATE_VOTE_FIELD_NUMBER: builtins.int
    @property
    def aggregate_vote(self) -> nibiru.oracle.v1.oracle_pb2.AggregateExchangeRateVote:
        """aggregate_vote defines oracle aggregate vote submitted by a validator in
        the current vote period
        """
    def __init__(
        self,
        *,
        aggregate_vote: nibiru.oracle.v1.oracle_pb2.AggregateExchangeRateVote | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["aggregate_vote", b"aggregate_vote"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aggregate_vote", b"aggregate_vote"]) -> None: ...

global___QueryAggregateVoteResponse = QueryAggregateVoteResponse

@typing_extensions.final
class QueryAggregateVotesRequest(google.protobuf.message.Message):
    """QueryAggregateVotesRequest is the request type for the Query/AggregateVotes
    RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___QueryAggregateVotesRequest = QueryAggregateVotesRequest

@typing_extensions.final
class QueryAggregateVotesResponse(google.protobuf.message.Message):
    """QueryAggregateVotesResponse is response type for the
    Query/AggregateVotes RPC method.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AGGREGATE_VOTES_FIELD_NUMBER: builtins.int
    @property
    def aggregate_votes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[nibiru.oracle.v1.oracle_pb2.AggregateExchangeRateVote]:
        """aggregate_votes defines all oracle aggregate votes submitted in the current
        vote period
        """
    def __init__(
        self,
        *,
        aggregate_votes: collections.abc.Iterable[nibiru.oracle.v1.oracle_pb2.AggregateExchangeRateVote] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["aggregate_votes", b"aggregate_votes"]) -> None: ...

global___QueryAggregateVotesResponse = QueryAggregateVotesResponse

@typing_extensions.final
class QueryParamsRequest(google.protobuf.message.Message):
    """QueryParamsRequest is the request type for the Query/Params RPC method."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___QueryParamsRequest = QueryParamsRequest

@typing_extensions.final
class QueryParamsResponse(google.protobuf.message.Message):
    """QueryParamsResponse is the response type for the Query/Params RPC method."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PARAMS_FIELD_NUMBER: builtins.int
    @property
    def params(self) -> nibiru.oracle.v1.oracle_pb2.Params:
        """params defines the parameters of the module."""
    def __init__(
        self,
        *,
        params: nibiru.oracle.v1.oracle_pb2.Params | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["params", b"params"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["params", b"params"]) -> None: ...

global___QueryParamsResponse = QueryParamsResponse
