import { EventsInputs, SuiNetwork, ObjectId } from "../../types";
import { Caller } from "../../general/utils/caller";
import { ApiFarmsCreateStakingPoolBody, ApiFarmsOwnedStakedPositionsBody, ApiFarmsOwnedStakingPoolOneTimeAdminCapsBody, ApiFarmsOwnedStakingPoolOwnerCapsBody, FarmsDepositedPrincipalEvent, FarmsHarvestedRewardsEvent, FarmsLockedEvent, FarmsStakedEvent, FarmsStakedRelaxedEvent, FarmsUnlockedEvent, FarmsWithdrewPrincipalEvent, StakingPoolOneTimeAdminCapObject, StakingPoolOwnerCapObject } from "./farmsTypes";
import { FarmsStakingPool } from "./farmsStakingPool";
import { FarmsStakedPosition } from "./farmsStakedPosition";
import { AftermathApi } from "../../general/providers";
export declare class Farms extends Caller {
    readonly network?: SuiNetwork | undefined;
    private readonly Provider?;
    static readonly constants: {
        minimalRewardsToClaim: bigint;
    };
    constructor(network?: SuiNetwork | undefined, Provider?: AftermathApi | undefined);
    getStakingPool(inputs: {
        objectId: ObjectId;
    }): Promise<FarmsStakingPool>;
    getStakingPools(inputs: {
        objectIds: ObjectId[];
    }): Promise<FarmsStakingPool[]>;
    getAllStakingPools(): Promise<FarmsStakingPool[]>;
    getOwnedStakedPositions(inputs: ApiFarmsOwnedStakedPositionsBody): Promise<FarmsStakedPosition[]>;
    getOwnedStakingPoolOwnerCaps(inputs: ApiFarmsOwnedStakingPoolOwnerCapsBody): Promise<StakingPoolOwnerCapObject[]>;
    getOwnedStakingPoolOneTimeAdminCaps(inputs: ApiFarmsOwnedStakingPoolOneTimeAdminCapsBody): Promise<StakingPoolOneTimeAdminCapObject[]>;
    getCreateStakingPoolTransaction(inputs: ApiFarmsCreateStakingPoolBody): Promise<import("@mysten/sui/transactions").Transaction>;
    getStakedEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsStakedEvent>>;
    getStakedRelaxedEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsStakedRelaxedEvent>>;
    getLockedEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsLockedEvent>>;
    getUnlockedEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsUnlockedEvent>>;
    getDepositedPrincipalEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsDepositedPrincipalEvent>>;
    getWithdrewPrincipalEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsWithdrewPrincipalEvent>>;
    getHarvestedRewardsEvents(inputs: EventsInputs): Promise<import("../../types").EventsWithCursor<FarmsHarvestedRewardsEvent>>;
    private useProvider;
}
//# sourceMappingURL=farms.d.ts.map