// package: provenance.reward.v1
// file: provenance/reward/v1/query.proto

/* tslint:disable */
/* eslint-disable */

import * as grpc from "grpc";
import * as provenance_reward_v1_query_pb from "../../../provenance/reward/v1/query_pb";
import * as gogoproto_gogo_pb from "../../../gogoproto/gogo_pb";
import * as cosmos_base_v1beta1_coin_pb from "../../../cosmos/base/v1beta1/coin_pb";
import * as cosmos_base_query_v1beta1_pagination_pb from "../../../cosmos/base/query/v1beta1/pagination_pb";
import * as provenance_reward_v1_reward_pb from "../../../provenance/reward/v1/reward_pb";

interface IQueryService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
    rewardProgramByID: IQueryService_IRewardProgramByID;
    rewardPrograms: IQueryService_IRewardPrograms;
    claimPeriodRewardDistributions: IQueryService_IClaimPeriodRewardDistributions;
    claimPeriodRewardDistributionsByID: IQueryService_IClaimPeriodRewardDistributionsByID;
    rewardDistributionsByAddress: IQueryService_IRewardDistributionsByAddress;
}

interface IQueryService_IRewardProgramByID extends grpc.MethodDefinition<provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse> {
    path: "/provenance.reward.v1.Query/RewardProgramByID";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest>;
    requestDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest>;
    responseSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse>;
    responseDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse>;
}
interface IQueryService_IRewardPrograms extends grpc.MethodDefinition<provenance_reward_v1_query_pb.QueryRewardProgramsRequest, provenance_reward_v1_query_pb.QueryRewardProgramsResponse> {
    path: "/provenance.reward.v1.Query/RewardPrograms";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryRewardProgramsRequest>;
    requestDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryRewardProgramsRequest>;
    responseSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryRewardProgramsResponse>;
    responseDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryRewardProgramsResponse>;
}
interface IQueryService_IClaimPeriodRewardDistributions extends grpc.MethodDefinition<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse> {
    path: "/provenance.reward.v1.Query/ClaimPeriodRewardDistributions";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest>;
    requestDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest>;
    responseSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse>;
    responseDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse>;
}
interface IQueryService_IClaimPeriodRewardDistributionsByID extends grpc.MethodDefinition<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse> {
    path: "/provenance.reward.v1.Query/ClaimPeriodRewardDistributionsByID";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest>;
    requestDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest>;
    responseSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse>;
    responseDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse>;
}
interface IQueryService_IRewardDistributionsByAddress extends grpc.MethodDefinition<provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse> {
    path: "/provenance.reward.v1.Query/RewardDistributionsByAddress";
    requestStream: false;
    responseStream: false;
    requestSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest>;
    requestDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest>;
    responseSerialize: grpc.serialize<provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse>;
    responseDeserialize: grpc.deserialize<provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse>;
}

export const QueryService: IQueryService;

export interface IQueryServer {
    rewardProgramByID: grpc.handleUnaryCall<provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse>;
    rewardPrograms: grpc.handleUnaryCall<provenance_reward_v1_query_pb.QueryRewardProgramsRequest, provenance_reward_v1_query_pb.QueryRewardProgramsResponse>;
    claimPeriodRewardDistributions: grpc.handleUnaryCall<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse>;
    claimPeriodRewardDistributionsByID: grpc.handleUnaryCall<provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse>;
    rewardDistributionsByAddress: grpc.handleUnaryCall<provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse>;
}

export interface IQueryClient {
    rewardProgramByID(request: provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse) => void): grpc.ClientUnaryCall;
    rewardProgramByID(request: provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse) => void): grpc.ClientUnaryCall;
    rewardProgramByID(request: provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse) => void): grpc.ClientUnaryCall;
    rewardPrograms(request: provenance_reward_v1_query_pb.QueryRewardProgramsRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramsResponse) => void): grpc.ClientUnaryCall;
    rewardPrograms(request: provenance_reward_v1_query_pb.QueryRewardProgramsRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramsResponse) => void): grpc.ClientUnaryCall;
    rewardPrograms(request: provenance_reward_v1_query_pb.QueryRewardProgramsRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramsResponse) => void): grpc.ClientUnaryCall;
    claimPeriodRewardDistributions(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse) => void): grpc.ClientUnaryCall;
    claimPeriodRewardDistributions(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse) => void): grpc.ClientUnaryCall;
    claimPeriodRewardDistributions(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse) => void): grpc.ClientUnaryCall;
    claimPeriodRewardDistributionsByID(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse) => void): grpc.ClientUnaryCall;
    claimPeriodRewardDistributionsByID(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse) => void): grpc.ClientUnaryCall;
    claimPeriodRewardDistributionsByID(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse) => void): grpc.ClientUnaryCall;
    rewardDistributionsByAddress(request: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse) => void): grpc.ClientUnaryCall;
    rewardDistributionsByAddress(request: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse) => void): grpc.ClientUnaryCall;
    rewardDistributionsByAddress(request: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse) => void): grpc.ClientUnaryCall;
}

export class QueryClient extends grpc.Client implements IQueryClient {
    constructor(address: string, credentials: grpc.ChannelCredentials, options?: object);
    public rewardProgramByID(request: provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse) => void): grpc.ClientUnaryCall;
    public rewardProgramByID(request: provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse) => void): grpc.ClientUnaryCall;
    public rewardProgramByID(request: provenance_reward_v1_query_pb.QueryRewardProgramByIDRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramByIDResponse) => void): grpc.ClientUnaryCall;
    public rewardPrograms(request: provenance_reward_v1_query_pb.QueryRewardProgramsRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramsResponse) => void): grpc.ClientUnaryCall;
    public rewardPrograms(request: provenance_reward_v1_query_pb.QueryRewardProgramsRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramsResponse) => void): grpc.ClientUnaryCall;
    public rewardPrograms(request: provenance_reward_v1_query_pb.QueryRewardProgramsRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardProgramsResponse) => void): grpc.ClientUnaryCall;
    public claimPeriodRewardDistributions(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse) => void): grpc.ClientUnaryCall;
    public claimPeriodRewardDistributions(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse) => void): grpc.ClientUnaryCall;
    public claimPeriodRewardDistributions(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsResponse) => void): grpc.ClientUnaryCall;
    public claimPeriodRewardDistributionsByID(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse) => void): grpc.ClientUnaryCall;
    public claimPeriodRewardDistributionsByID(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse) => void): grpc.ClientUnaryCall;
    public claimPeriodRewardDistributionsByID(request: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryClaimPeriodRewardDistributionsByIDResponse) => void): grpc.ClientUnaryCall;
    public rewardDistributionsByAddress(request: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse) => void): grpc.ClientUnaryCall;
    public rewardDistributionsByAddress(request: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse) => void): grpc.ClientUnaryCall;
    public rewardDistributionsByAddress(request: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: provenance_reward_v1_query_pb.QueryRewardDistributionsByAddressResponse) => void): grpc.ClientUnaryCall;
}
