import { IDict } from '../../interfaces.js'; import { type Curve } from "../../curve.js"; export interface IGaugePool { address: string; poolName: string; gaugeManager(): Promise; gaugeDistributors(): Promise>; gaugeVersion(): Promise; addReward(rewardToken: string, distributor: string): Promise; isDepositRewardAvailable(): Promise; depositRewardIsApproved(rewardToken: string, amount: number | string): Promise; depositReward(rewardToken: string, amount: string | number, epoch: string | number): Promise; depositRewardApprove(rewardToken: string, amount: number | string): Promise; estimateGas: { addReward(rewardToken: string, distributor: string): Promise; depositReward(rewardToken: string, amount: string | number, epoch: string | number): Promise; depositRewardApprove(rewardToken: string, amount: number | string): Promise; }; } export declare class GaugePool implements IGaugePool { readonly address: string; readonly poolName: string; readonly curve: Curve; estimateGas: { addReward: (rewardToken: string, distributor: string) => Promise; depositRewardApprove: (rewardToken: string, amount: number | string) => Promise; depositReward: (rewardToken: string, amount: string | number, epoch: string | number) => Promise; }; constructor(address: string, poolName: string, curve: Curve); gaugeManager(): Promise; gaugeDistributors(): Promise>; gaugeVersion(): Promise; private _addReward; private addRewardEstimateGas; addReward(rewardToken: string, distributor: string): Promise; isDepositRewardAvailable(): Promise; depositRewardIsApproved(rewardToken: string, amount: number | string): Promise; private depositRewardApproveEstimateGas; depositRewardApprove(rewardToken: string, amount: number | string): Promise; private _depositReward; depositRewardEstimateGas(rewardToken: string, amount: string | number, epoch: string | number): Promise; depositReward(rewardToken: string, amount: string | number, epoch: string | number): Promise; }