import { type Address } from "viem"; import { type BuildQueryFn } from "../../../../utils/buildQuery.js"; import type { FuulClaimCheck, FuulTotals, IRewardsAdapter, TurtleMerkleProof, UserReward } from "../../rewardsServiceTypes.js"; import { VaultRewardInfo } from "../../vaultRewardInfo.js"; import type { RewardsV3AdapterConfig, V3ListEnvelope, V3RewardsApyRow, V3RewardsBreakdownEnvelope } from "./rewardsV3AdapterTypes.js"; type RewardsClaimAdapter = Pick & { fetchBrevisUserRewardClaims?: (chainId: number, address: Address) => Promise; fetchTurtleProofs?: (address: Address, streamIds: string[]) => Promise; }; export declare class RewardsV3Adapter implements IRewardsAdapter { private config; private claimAdapter?; constructor(config: RewardsV3AdapterConfig, buildQuery?: BuildQueryFn, claimAdapter?: RewardsClaimAdapter | undefined); setConfig(config: RewardsV3AdapterConfig): void; setClaimAdapter(adapter?: RewardsClaimAdapter): void; private getHeaders; private buildUrl; queryV3RewardsBreakdown: (chainId: number, account: Address, vault?: Address) => Promise; setQueryV3RewardsBreakdown(fn: typeof this.queryV3RewardsBreakdown): void; queryV3RewardsApyPage: (chainId: number, offset: number, limit: number, vault?: Address) => Promise>; setQueryV3RewardsApyPage(fn: typeof this.queryV3RewardsApyPage): void; fetchVaultRewards(chainId: number, vaultAddress: Address): Promise; fetchChainRewards(chainId: number): Promise>; fetchUserRewards(chainId: number, address: Address): Promise; fetchFuulTotals(address: Address, chainId?: number): Promise; fetchFuulClaimChecks(address: Address, chainId?: number): Promise; fetchBrevisUserRewardClaims(chainId: number, address: Address): Promise; fetchTurtleProofs(address: Address, streamIds: string[]): Promise; private fetchRewardsApyMap; private fetchCampaignMetadataMap; private mergeRewardsApyRow; private convertRow; } export {}; //# sourceMappingURL=rewardsV3Adapter.d.ts.map