/// <reference types="node" />
import { ConfigAddresses } from "../types/configTypes";
import { PoolsApi } from "../../packages/pools/api/poolsApi";
import { FaucetApi } from "../../packages/faucet/api/faucetApi";
import { CoinApi } from "../../packages/coin/api/coinApi";
import { DynamicFieldsApiHelpers } from "../apiHelpers/dynamicFieldsApiHelpers";
import { EventsApiHelpers } from "../apiHelpers/eventsApiHelpers";
import { InspectionsApiHelpers } from "../apiHelpers/inspectionsApiHelpers";
import { ObjectsApiHelpers } from "../apiHelpers/objectsApiHelpers";
import { TransactionsApiHelpers } from "../apiHelpers/transactionsApiHelpers";
import { SuiApi } from "../../packages/sui/api/suiApi";
import { WalletApi } from "../wallet/walletApi";
import { RouterApi } from "../../packages/router/api/routerApi";
import { SuiFrensApi } from "../../packages/suiFrens/api/suiFrensApi";
import { StakingApi } from "../../packages/staking/api/stakingApi";
import { NftAmmApi } from "../../packages/nftAmm/api/nftAmmApi";
import { ReferralVaultApi } from "../../packages/referralVault/api/referralVaultApi";
import { ModuleName, MoveErrorCode, ObjectId } from "../../types";
import { PerpetualsApi } from "../../packages/perpetuals/api/perpetualsApi";
import { OracleApi } from "../../packages/oracle/api/oracleApi";
import { FarmsApi } from "../../packages/farms/api/farmsApi";
import { SuiClient } from "@mysten/sui/client";
import { SuiClient as SuiClientV0 } from "@mysten/sui.js/client";
import { DcaApi } from "../../packages/dca/api/dcaApi";
import { LeveragedStakingApi } from "../../packages/leveragedStaking/api/leveragedStakingApi";
import { NftsApi } from "../nfts/nftsApi";
import { MoveErrorsInterface } from "../types/moveErrorsInterface";
/**
 * This class represents the Aftermath API and provides helper methods for various functionalities.
 * @class
 */
export declare class AftermathApi {
    readonly provider: SuiClient;
    readonly addresses: ConfigAddresses;
    readonly providerV0?: SuiClientV0 | undefined;
    static helpers: {
        dynamicFields: typeof DynamicFieldsApiHelpers;
        events: typeof EventsApiHelpers;
        inspections: typeof InspectionsApiHelpers;
        objects: typeof ObjectsApiHelpers;
        transactions: typeof TransactionsApiHelpers;
        wallet: typeof WalletApi;
        coin: typeof CoinApi;
        sui: typeof SuiApi;
    };
    /**
     * Creates an instance of AftermathApi.
     * @param provider - The SuiClient instance to use for interacting with the blockchain.
     * @param addresses - The configuration addresses for the Aftermath protocol.
     * @param providerV0 - The SuiClient instance to use for interacting with the blockchain.
     */
    constructor(provider: SuiClient, addresses: ConfigAddresses, providerV0?: SuiClientV0 | undefined);
    DynamicFields: () => DynamicFieldsApiHelpers;
    Events: () => EventsApiHelpers;
    Inspections: () => InspectionsApiHelpers;
    Objects: () => ObjectsApiHelpers;
    Transactions: () => TransactionsApiHelpers;
    Wallet: () => WalletApi;
    Nfts: () => NftsApi;
    Coin: () => CoinApi;
    Sui: () => SuiApi;
    Pools: () => PoolsApi;
    Faucet: () => FaucetApi;
    SuiFrens: () => SuiFrensApi;
    Staking: () => StakingApi;
    NftAmm: () => NftAmmApi;
    ReferralVault: () => ReferralVaultApi;
    Perpetuals: () => PerpetualsApi;
    Oracle: () => OracleApi;
    Farms: () => FarmsApi;
    Dca: () => DcaApi;
    /**
     * Creates a new instance of the RouterApi class.
     * @returns A new instance of the RouterApi class.
     */
    Router: () => RouterApi;
    LeveragedStaking: (ScallopProviders?: any) => LeveragedStakingApi;
    translateMoveErrorMessage: <T extends MoveErrorsInterface>(inputs: {
        errorMessage: string;
    }) => {
        errorCode: MoveErrorCode;
        packageId: ObjectId;
        module: ModuleName;
        error: string;
    } | undefined;
}
//# sourceMappingURL=aftermathApi.d.ts.map