"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
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 typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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: typing.Text
    """address is the address to query balances for."""

    denom: typing.Text
    """denom is the coin denom to query balances for."""

    def __init__(self,
        *,
        address: typing.Text = ...,
        denom: typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["address",b"address","denom",b"denom"]) -> None: ...
global___QueryBalanceRequest = QueryBalanceRequest

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."""
        pass
    def __init__(self,
        *,
        balance: typing.Optional[cosmos.base.v1beta1.coin_pb2.Coin] = ...,
        ) -> 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

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: typing.Text
    """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."""
        pass
    def __init__(self,
        *,
        address: typing.Text = ...,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageRequest] = ...,
        ) -> 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

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."""
        pass
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response."""
        pass
    def __init__(self,
        *,
        balances: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageResponse] = ...,
        ) -> 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

class QuerySpendableBalancesRequest(google.protobuf.message.Message):
    """QuerySpendableBalancesRequest defines the gRPC request structure for querying
    an account's spendable balances.
    """
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    ADDRESS_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    address: typing.Text
    """address is the address to query spendable balances for."""

    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an optional pagination for the request."""
        pass
    def __init__(self,
        *,
        address: typing.Text = ...,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageRequest] = ...,
        ) -> 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___QuerySpendableBalancesRequest = QuerySpendableBalancesRequest

class QuerySpendableBalancesResponse(google.protobuf.message.Message):
    """QuerySpendableBalancesResponse defines the gRPC response structure for querying
    an account's spendable balances.
    """
    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 spendable balances of all the coins."""
        pass
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response."""
        pass
    def __init__(self,
        *,
        balances: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageResponse] = ...,
        ) -> 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___QuerySpendableBalancesResponse = QuerySpendableBalancesResponse

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
        """
        pass
    def __init__(self,
        *,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageRequest] = ...,
        ) -> 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

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"""
        pass
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response.

        Since: cosmos-sdk 0.43
        """
        pass
    def __init__(self,
        *,
        supply: typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageResponse] = ...,
        ) -> 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

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: typing.Text
    """denom is the coin denom to query balances for."""

    def __init__(self,
        *,
        denom: typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["denom",b"denom"]) -> None: ...
global___QuerySupplyOfRequest = QuerySupplyOfRequest

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."""
        pass
    def __init__(self,
        *,
        amount: typing.Optional[cosmos.base.v1beta1.coin_pb2.Coin] = ...,
        ) -> 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

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

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: typing.Optional[cosmos.bank.v1beta1.bank_pb2.Params] = ...,
        ) -> 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

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."""
        pass
    def __init__(self,
        *,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageRequest] = ...,
        ) -> 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

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."""
        pass
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines the pagination in the response."""
        pass
    def __init__(self,
        *,
        metadatas: typing.Optional[typing.Iterable[cosmos.bank.v1beta1.bank_pb2.Metadata]] = ...,
        pagination: typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageResponse] = ...,
        ) -> 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

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: typing.Text
    """denom is the coin denom to query the metadata for."""

    def __init__(self,
        *,
        denom: typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["denom",b"denom"]) -> None: ...
global___QueryDenomMetadataRequest = QueryDenomMetadataRequest

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."""
        pass
    def __init__(self,
        *,
        metadata: typing.Optional[cosmos.bank.v1beta1.bank_pb2.Metadata] = ...,
        ) -> 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
