import type { RewardManagerStateData } from '@audius/spl/dist/types/reward-manager/types'; import { SendTransactionOptions } from '@solana/wallet-adapter-base'; import { Transaction, VersionedTransaction, type PublicKey } from '@solana/web3.js'; import { CreateEvaluateAttestationsInstructionRequest, type CreateSubmitAttestationRequest, type RewardManagerClientConfig, CreateSenderInstructionRequest, CreateSubmitAttestationSecpInstructionRequest, GetSubmittedAttestationsRequest } from './types'; export declare class RewardManagerError extends Error { name: string; code: number; instructionName: string; customErrorName?: string; constructor({ code, instructionName, cause }: { code: number; instructionName: string; cause?: Error; }); } /** * 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 { readonly lookupTable: PublicKey; private readonly client; private readonly programId; private readonly rewardManagerStateAccount; private readonly authority; private rewardManagerState; private readonly logger; constructor(config: RewardManagerClientConfig); createSenderInstruction(params: CreateSenderInstructionRequest): Promise; createSubmitAttestationInstruction(params: CreateSubmitAttestationRequest): Promise; createSubmitAttestationSecpInstruction(params: CreateSubmitAttestationSecpInstructionRequest): Promise; createEvaluateAttestationsInstruction(params: CreateEvaluateAttestationsInstructionRequest): Promise; getSubmittedAttestations(params: GetSubmittedAttestationsRequest): Promise; private makeDisbursementId; getRewardManagerState(): Promise; /** * Override the sendTransaction method to provide some more friendly errors * back to the consumer for RewardManager instructions */ sendTransaction(transaction: Transaction | VersionedTransaction, sendOptions?: SendTransactionOptions | undefined): Promise; }