import { Coin } from '../../../types';
import BaseConsumer from '../../BaseGrpcConsumer';
import { ValidatorRewards } from '../types/custom/distribution';
/**
 * @group gRPC API
 */
export declare class ChainGrpcDistributionApi extends BaseConsumer {
    fetchModuleParams(): Promise<import("../types/custom/distribution").DistributionModuleParams>;
    /**
     * Get delegatore rewards for staking in a particular validators pool.
     *
     * @param delegatorAddress account address.
     * @param validatorAddress coin denomination.
     * @returns delegator rewards.
     */
    fetchDelegatorRewardsForValidator({ delegatorAddress, validatorAddress, }: {
        delegatorAddress: string;
        validatorAddress: string;
    }): Promise<Coin[]>;
    /**
     * Get delegatore rewards for staking in a particular validators pool.
     *
     * @param delegatorAddress account address.
     * @param validatorAddress coin denomination.
     * @returns delegator rewards.
     */
    fetchDelegatorRewardsForValidatorNoThrow({ delegatorAddress, validatorAddress, }: {
        delegatorAddress: string;
        validatorAddress: string;
    }): Promise<Coin[]>;
    /**
     * Get total staking rewards for an account address.
     *
     * @param routerAddress account address.
     * @returns accounts rewards.
     */
    fetchDelegatorRewards(routerAddress: string): Promise<ValidatorRewards[]>;
    /**
     * Get total staking rewards for an account address.
     *
     * @param routerAddress account address.
     * @returns accounts rewards.
     */
    fetchDelegatorRewardsNoThrow(routerAddress: string): Promise<ValidatorRewards[]>;
}
