/// <reference types="@solana/web3.js" />
import type { RewardManagerStateData } from '@audius/spl/dist/types/reward-manager/types';
import { BaseSolanaProgram } from '../BaseSolanaProgram';
import { CreateEvaluateAttestationsInstructionRequest, type CreateSubmitAttestationRequest, type RewardManagerClientConfig, CreateSenderInstructionRequest, CreateSubmitAttestationSecpInstructionRequest, GetSubmittedAttestationsRequest } from './types';
/**
 * Connected client to the Solana RewardManager program.
 *
 * The RewardManager program is in charge of disbursing the community awards
 * based on attestations from N uniquely owned discovery nodes and an anti abuse
 * oracle node.
 */
export declare class RewardManagerClient extends BaseSolanaProgram {
    private readonly programId;
    private readonly rewardManagerStateAccount;
    private readonly authority;
    private rewardManagerState;
    constructor(config: RewardManagerClientConfig);
    createSenderInstruction(params: CreateSenderInstructionRequest): Promise<import("@solana/web3.js").TransactionInstruction>;
    createSubmitAttestationInstruction(params: CreateSubmitAttestationRequest): Promise<import("@solana/web3.js").TransactionInstruction>;
    createSubmitAttestationSecpInstruction(params: CreateSubmitAttestationSecpInstructionRequest): Promise<import("@solana/web3.js").TransactionInstruction>;
    createEvaluateAttestationsInstruction(params: CreateEvaluateAttestationsInstructionRequest): Promise<import("@solana/web3.js").TransactionInstruction>;
    getSubmittedAttestations(params: GetSubmittedAttestationsRequest): Promise<import("@audius/spl/dist/types/reward-manager/types").AttestationsAccountData | null>;
    private makeDisbursementId;
    getRewardManagerState(): Promise<RewardManagerStateData>;
}
