"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import cosmos.bank.v1beta1.bank_pb2
import cosmos.base.query.v1beta1.pagination_pb2
import cosmos.base.v1beta1.coin_pb2
import google.protobuf.descriptor
import google.protobuf.internal.containers
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 QueryBalanceRequest(google.protobuf.message.Message):
    """QueryBalanceRequest is the request type for the Query/Balance RPC method."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ADDRESS_FIELD_NUMBER: builtins.int
    DENOM_FIELD_NUMBER: builtins.int
    address: builtins.str
    """address is the address to query balances for."""
    denom: builtins.str
    """denom is the coin denom to query balances for."""
    def __init__(
        self,
        *,
        address: builtins.str = ...,
        denom: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["address", b"address", "denom", b"denom"]) -> None: ...

global___QueryBalanceRequest = QueryBalanceRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BALANCE_FIELD_NUMBER: builtins.int
    @property
    def balance(self) -> cosmos.base.v1beta1.coin_pb2.Coin:
        """balance is the balance of the coin."""
    def __init__(
        self,
        *,
        balance: cosmos.base.v1beta1.coin_pb2.Coin | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["balance", b"balance"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["balance", b"balance"]) -> None: ...

global___QueryBalanceResponse = QueryBalanceResponse

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ADDRESS_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    address: builtins.str
    """address is the address to query balances for."""
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an optional pagination for the request."""
    def __init__(
        self,
        *,
        address: builtins.str = ...,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageRequest | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["address", b"address", "pagination", b"pagination"]) -> None: ...

global___QueryAllBalancesRequest = QueryAllBalancesRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BALANCES_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def balances(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]:
        """balances is the balances of all the coins."""
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response."""
    def __init__(
        self,
        *,
        balances: collections.abc.Iterable[cosmos.base.v1beta1.coin_pb2.Coin] | None = ...,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageResponse | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["balances", b"balances", "pagination", b"pagination"]) -> None: ...

global___QueryAllBalancesResponse = QueryAllBalancesResponse

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an optional pagination for the request.

        Since: cosmos-sdk 0.43
        """
    def __init__(
        self,
        *,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageRequest | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> None: ...

global___QueryTotalSupplyRequest = QueryTotalSupplyRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUPPLY_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def supply(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]:
        """supply is the supply of the coins"""
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response.

        Since: cosmos-sdk 0.43
        """
    def __init__(
        self,
        *,
        supply: collections.abc.Iterable[cosmos.base.v1beta1.coin_pb2.Coin] | None = ...,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageResponse | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["pagination", b"pagination", "supply", b"supply"]) -> None: ...

global___QueryTotalSupplyResponse = QueryTotalSupplyResponse

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DENOM_FIELD_NUMBER: builtins.int
    denom: builtins.str
    """denom is the coin denom to query balances for."""
    def __init__(
        self,
        *,
        denom: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["denom", b"denom"]) -> None: ...

global___QuerySupplyOfRequest = QuerySupplyOfRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AMOUNT_FIELD_NUMBER: builtins.int
    @property
    def amount(self) -> cosmos.base.v1beta1.coin_pb2.Coin:
        """amount is the supply of the coin."""
    def __init__(
        self,
        *,
        amount: cosmos.base.v1beta1.coin_pb2.Coin | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["amount", b"amount"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["amount", b"amount"]) -> None: ...

global___QuerySupplyOfResponse = QuerySupplyOfResponse

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an optional pagination for the request.

        Since: cosmos-sdk 0.43
        """
    def __init__(
        self,
        *,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageRequest | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> None: ...

global___QueryTotalSupplyWithoutOffsetRequest = QueryTotalSupplyWithoutOffsetRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUPPLY_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def supply(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]:
        """supply is the supply of the coins"""
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response.

        Since: cosmos-sdk 0.43
        """
    def __init__(
        self,
        *,
        supply: collections.abc.Iterable[cosmos.base.v1beta1.coin_pb2.Coin] | None = ...,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageResponse | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["pagination", b"pagination", "supply", b"supply"]) -> None: ...

global___QueryTotalSupplyWithoutOffsetResponse = QueryTotalSupplyWithoutOffsetResponse

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DENOM_FIELD_NUMBER: builtins.int
    denom: builtins.str
    """denom is the coin denom to query balances for."""
    def __init__(
        self,
        *,
        denom: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["denom", b"denom"]) -> None: ...

global___QuerySupplyOfWithoutOffsetRequest = QuerySupplyOfWithoutOffsetRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AMOUNT_FIELD_NUMBER: builtins.int
    @property
    def amount(self) -> cosmos.base.v1beta1.coin_pb2.Coin:
        """amount is the supply of the coin."""
    def __init__(
        self,
        *,
        amount: cosmos.base.v1beta1.coin_pb2.Coin | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["amount", b"amount"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["amount", b"amount"]) -> None: ...

global___QuerySupplyOfWithoutOffsetResponse = QuerySupplyOfWithoutOffsetResponse

@typing_extensions.final
class QueryParamsRequest(google.protobuf.message.Message):
    """QueryParamsRequest defines the request type for querying x/bank parameters."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___QueryParamsRequest = QueryParamsRequest

@typing_extensions.final
class QueryParamsResponse(google.protobuf.message.Message):
    """QueryParamsResponse defines the response type for querying x/bank parameters."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PARAMS_FIELD_NUMBER: builtins.int
    @property
    def params(self) -> cosmos.bank.v1beta1.bank_pb2.Params: ...
    def __init__(
        self,
        *,
        params: cosmos.bank.v1beta1.bank_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

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an optional pagination for the request."""
    def __init__(
        self,
        *,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageRequest | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> None: ...

global___QueryDenomsMetadataRequest = QueryDenomsMetadataRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METADATAS_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def metadatas(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.bank.v1beta1.bank_pb2.Metadata]:
        """metadata provides the client information for all the registered tokens."""
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response."""
    def __init__(
        self,
        *,
        metadatas: collections.abc.Iterable[cosmos.bank.v1beta1.bank_pb2.Metadata] | None = ...,
        pagination: cosmos.base.query.v1beta1.pagination_pb2.PageResponse | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pagination", b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["metadatas", b"metadatas", "pagination", b"pagination"]) -> None: ...

global___QueryDenomsMetadataResponse = QueryDenomsMetadataResponse

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DENOM_FIELD_NUMBER: builtins.int
    denom: builtins.str
    """denom is the coin denom to query the metadata for."""
    def __init__(
        self,
        *,
        denom: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["denom", b"denom"]) -> None: ...

global___QueryDenomMetadataRequest = QueryDenomMetadataRequest

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METADATA_FIELD_NUMBER: builtins.int
    @property
    def metadata(self) -> cosmos.bank.v1beta1.bank_pb2.Metadata:
        """metadata describes and provides all the client information for the requested token."""
    def __init__(
        self,
        *,
        metadata: cosmos.bank.v1beta1.bank_pb2.Metadata | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["metadata", b"metadata"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["metadata", b"metadata"]) -> None: ...

global___QueryDenomMetadataResponse = QueryDenomMetadataResponse

@typing_extensions.final
class QueryBaseDenomRequest(google.protobuf.message.Message):
    """QueryBaseDenomRequest defines the request type for the BaseDenom gRPC method."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DENOM_FIELD_NUMBER: builtins.int
    denom: builtins.str
    def __init__(
        self,
        *,
        denom: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["denom", b"denom"]) -> None: ...

global___QueryBaseDenomRequest = QueryBaseDenomRequest

@typing_extensions.final
class QueryBaseDenomResponse(google.protobuf.message.Message):
    """QueryBaseDenomResponse defines the response type for the BaseDenom gRPC method."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BASE_DENOM_FIELD_NUMBER: builtins.int
    base_denom: builtins.str
    def __init__(
        self,
        *,
        base_denom: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["base_denom", b"base_denom"]) -> None: ...

global___QueryBaseDenomResponse = QueryBaseDenomResponse
