import { type Curve } from "./curve.js"; import { IDaoProposal, IDaoProposalListItem, IDaoProposalUserListItem, IGaugeUserVote, IVotingGauge, TVoteType } from './interfaces'; export declare function crvSupplyStats(this: Curve): Promise<{ circulating: string; locked: string; total: string; veCrv: string; averageLockTime: string; }>; export declare function userCrv(this: Curve, address?: string): Promise; export declare function userVeCrv(this: Curve, address?: string): Promise<{ veCrv: string; veCrvPct: string; lockedCrv: string; unlockTime: number; }>; export declare function crvLockIsApproved(this: Curve, amount: number | string): Promise; export declare function crvLockApproveEstimateGas(this: Curve, amount: number | string): Promise; export declare function crvLockApprove(this: Curve, amount: number | string): Promise; export declare const calcCrvUnlockTime: (days: number | string, start?: number | string) => number; export declare function createCrvLockEstimateGas(this: Curve, amount: number | string, days: number | string): Promise; export declare function createCrvLock(this: Curve, amount: number | string, days: number | string): Promise; export declare function increaseCrvLockedAmountEstimateGas(this: Curve, amount: number | string): Promise; export declare function increaseCrvLockedAmount(this: Curve, amount: number | string): Promise; export declare function increaseCrvUnlockTimeEstimateGas(this: Curve, days: number | string): Promise; export declare function increaseCrvUnlockTime(this: Curve, days: number | string): Promise; export declare function withdrawLockedCrvEstimateGas(this: Curve): Promise; export declare function withdrawLockedCrv(this: Curve): Promise; export declare function claimableFees(this: Curve, address?: string): Promise; export declare function claimFeesEstimateGas(this: Curve, address?: string): Promise; export declare function claimFees(this: Curve, address?: string): Promise; export declare function getVotingGaugeList(this: Curve): Promise; export declare function userGaugeVotes(this: Curve, address?: string): Promise<{ gauges: IGaugeUserVote[]; powerUsed: string; veCrvUsed: string; }>; export declare function voteForGaugeNextTime(this: Curve, gauge: string): Promise; export declare function voteForGaugeEstimateGas(this: Curve, gauge: string, power: number | string): Promise; export declare function voteForGauge(this: Curve, gauge: string, power: number | string): Promise; export declare function getProposalList(this: Curve): Promise; export declare function getProposal(this: Curve, type: "PARAMETER" | "OWNERSHIP", id: number): Promise; export declare function userProposalVotes(this: Curve, address?: string): Promise; export declare function voteForProposalEstimateGas(this: Curve, type: TVoteType, id: number, support: boolean): Promise; export declare function voteForProposal(this: Curve, type: TVoteType, id: number, support: boolean): Promise; export declare function executeVoteEstimateGas(this: Curve, type: TVoteType, id: number): Promise; export declare function executeVote(this: Curve, type: TVoteType, id: number): Promise; export declare function isCanVoteExecute(this: Curve, type: TVoteType, id: number): Promise;