"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import cosmos.base.query.v1beta1.pagination_pb2
import cosmos.feegrant.v1beta1.feegrant_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 QueryAllowanceRequest(google.protobuf.message.Message):
    """QueryAllowanceRequest is the request type for the Query/Allowance RPC method."""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    GRANTER_FIELD_NUMBER: builtins.int
    GRANTEE_FIELD_NUMBER: builtins.int
    granter: typing.Text
    """granter is the address of the user granting an allowance of their funds."""

    grantee: typing.Text
    """grantee is the address of the user being granted an allowance of another user's funds."""

    def __init__(self,
        *,
        granter: typing.Text = ...,
        grantee: typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["grantee",b"grantee","granter",b"granter"]) -> None: ...
global___QueryAllowanceRequest = QueryAllowanceRequest

class QueryAllowanceResponse(google.protobuf.message.Message):
    """QueryAllowanceResponse is the response type for the Query/Allowance RPC method."""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    ALLOWANCE_FIELD_NUMBER: builtins.int
    @property
    def allowance(self) -> cosmos.feegrant.v1beta1.feegrant_pb2.Grant:
        """allowance is a allowance granted for grantee by granter."""
        pass
    def __init__(self,
        *,
        allowance: typing.Optional[cosmos.feegrant.v1beta1.feegrant_pb2.Grant] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["allowance",b"allowance"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowance",b"allowance"]) -> None: ...
global___QueryAllowanceResponse = QueryAllowanceResponse

class QueryAllowancesRequest(google.protobuf.message.Message):
    """QueryAllowancesRequest is the request type for the Query/Allowances RPC method."""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    GRANTEE_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    grantee: typing.Text
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an pagination for the request."""
        pass
    def __init__(self,
        *,
        grantee: 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["grantee",b"grantee","pagination",b"pagination"]) -> None: ...
global___QueryAllowancesRequest = QueryAllowancesRequest

class QueryAllowancesResponse(google.protobuf.message.Message):
    """QueryAllowancesResponse is the response type for the Query/Allowances RPC method."""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    ALLOWANCES_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def allowances(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.feegrant.v1beta1.feegrant_pb2.Grant]:
        """allowances are allowance's granted for grantee by granter."""
        pass
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines an pagination for the response."""
        pass
    def __init__(self,
        *,
        allowances: typing.Optional[typing.Iterable[cosmos.feegrant.v1beta1.feegrant_pb2.Grant]] = ...,
        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["allowances",b"allowances","pagination",b"pagination"]) -> None: ...
global___QueryAllowancesResponse = QueryAllowancesResponse

class QueryAllowancesByGranterRequest(google.protobuf.message.Message):
    """QueryAllowancesByGranterRequest is the request type for the Query/AllowancesByGranter RPC method."""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    GRANTER_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    granter: typing.Text
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest:
        """pagination defines an pagination for the request."""
        pass
    def __init__(self,
        *,
        granter: 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["granter",b"granter","pagination",b"pagination"]) -> None: ...
global___QueryAllowancesByGranterRequest = QueryAllowancesByGranterRequest

class QueryAllowancesByGranterResponse(google.protobuf.message.Message):
    """QueryAllowancesByGranterResponse is the response type for the Query/AllowancesByGranter RPC method."""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    ALLOWANCES_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    @property
    def allowances(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.feegrant.v1beta1.feegrant_pb2.Grant]:
        """allowances that have been issued by the granter."""
        pass
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse:
        """pagination defines an pagination for the response."""
        pass
    def __init__(self,
        *,
        allowances: typing.Optional[typing.Iterable[cosmos.feegrant.v1beta1.feegrant_pb2.Grant]] = ...,
        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["allowances",b"allowances","pagination",b"pagination"]) -> None: ...
global___QueryAllowancesByGranterResponse = QueryAllowancesByGranterResponse
