import { type SuiTransactionBlockResponse, TransactionBlock, type DryRunTransactionBlockResponse } from "@firefly-exchange/library-sui";
export declare const LOCKED_ERROR_MESSAGE = "Failed to sign transaction by a quorum of validators because of locked objects";
export type ResponseSchema = {
    ok: boolean;
    data: any;
    message: string;
    code?: number | string;
    stack?: string;
};
interface ProviderRpcError {
    code: number | string;
    message: string;
    data?: unknown;
    stack?: string;
}
export declare const handleResponse: (response: ProviderRpcError, ok: boolean, customMessage?: string) => ResponseSchema;
export declare const TransformToResponseSchema: (contactCall: () => Promise<SuiTransactionBlockResponse | DryRunTransactionBlockResponse | TransactionBlock>, successMessage: string, isSponsored?: boolean) => Promise<ResponseSchema>;
export declare enum SuccessMessages {
    adjustLeverage = "Leverage Adjusted to {leverage}x.",
    adjustMarginAdd = "{amount} USDC margin Added to position.",
    adjustMarginRemove = "{amount} USDC margin Removed from position.",
    withdrawMargin = "{amount} USDC withdrawn.",
    claimFundsFromVault = "{amount} claimed from vault.",
    claimRewardsFromRewardPool = "Rewards claimed from reward pool.",
    withdrawFundsFromVault = "{amount} {symbol} withdraw request sent to pool.",
    approveUSDC = "{amount} USDC approved.",
    depositToBank = "{amount} USDC deposited to Margin Bank.",
    depositToVault = "{amount} {symbol} deposited to pool.",
    setSubAccounts = "This {address} is successfully {status} as a subaccount",
    transferCoins = "{balance} {coin} transferred to {walletAddress}",
    swapAndDepositToPro = "Successfully swapped and deposited {amount} USDC to Pro.",
    withdrawAllSwapAndDepositToPro = "Successfully withdrew funds, swapped, and deposited {amount} USDC to Pro.",
    closedDelistedPositionsSwapAndDepositToPro = "Successfully closed remaining positions, swapped and deposited {amount} USDC to Pro.",
    closedDelistedPositionsAndWithdrawMargin = "Successfully closed remaining positions and withdrew {amount} margin.",
    closeDelistedPosition = "Successfully closed {symbol} position."
}
export declare enum VerificationStatus {
    Success = "success",
    Restricted = "restricted",
    Blocked = "blocked"
}
export declare enum APIErrorMessages {
    restrictedUser = "This wallet address has been identified as high-risk. You will not be able to open any new positions or deposit funds on the exchange. You may, however, close out any open positions and withdraw free collateral"
}
export declare enum VaultTVLInterval {
    DAY = "TWENTY_MINUTES",
    WEEK = "THREE_HOURS",
    MONTH = "TWELVE_HOURS",
    ALL = "FOUR_DAYS"
}
export {};
