import { BaseAPI } from './base_api';
import * as loopring_defs from '../defs';
import { KeyPairParams } from './sign/sign_tools';
import { RequiredPart } from '../utils';
import { AxiosResponse } from 'axios';
export declare class UserAPI extends BaseAPI {
    updateUserApiKey<R>(request: loopring_defs.UpdateUserApiKeyRequest, apiKey: string, eddsaKey: string): Promise<{
        raw_data: R;
    }>;
    getNextStorageId<R>(request: loopring_defs.GetNextStorageIdRequest, apiKey: string): Promise<{
        raw_data: R;
        orderId: number;
        offchainId: number;
    }>;
    getOrderDetails<R>(request: loopring_defs.GetOrderDetailsRequest, apiKey: string): Promise<{
        raw_data: R;
        orderDetail: loopring_defs.OrderDetail;
    }>;
    getOrders<R>(request: loopring_defs.GetOrdersRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        orders: loopring_defs.OrderDetail[];
    }>;
    submitOrder({ extraOrderType, ...orderRequest }: loopring_defs.SubmitOrderRequestV3, privateKey: string, apiKey: string): Promise<loopring_defs.RESULT_INFO | (Omit<any, "resultInfo"> & {
        raw_data: Omit<any, "resultInfo">;
    })>;
    submitStopOrder({ extraOrderType, stopSide, // = STOP_SIDE.NO_CONDITION,
    ...orderRequest }: RequiredPart<loopring_defs.SubmitOrderRequestV3, 'extraOrderType' | 'stopSide' | 'stopPrice'>, privateKey: string, apiKey: string): Promise<loopring_defs.RESULT_INFO | (Omit<any, "resultInfo"> & {
        raw_data: Omit<any, "resultInfo">;
    })>;
    cancelOrder<R>(request: loopring_defs.CancelOrderRequest, PrivateKey: string, apiKey: string): Promise<{
        raw_data: R;
    }>;
    cancelMultiOrdersByHash<R>(request: loopring_defs.CancelMultiOrdersByHashRequest, PrivateKey: string, apiKey: string): Promise<{
        raw_data: R;
    }>;
    cancelMultiOrdersByCreditOrderId<R>(request: loopring_defs.CancelMultiOrdersByClientOrderIdRequest, PrivateKey: string, apiKey: string): Promise<{
        raw_data: R;
    }>;
    getUserRegTxs<R>(request: loopring_defs.GetUserRegTxsRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userRegTxs: loopring_defs.UserRegTx[];
    }>;
    getUserPwdResetTxs<R>(request: loopring_defs.GetUserPwdResetTxsRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userPwdResetTxs: loopring_defs.UserPwdResetTx[];
    }>;
    getUserBalances<R>(request: loopring_defs.GetUserBalancesRequest, apiKey: string): Promise<{
        raw_data: R;
        userBalances: loopring_defs.LoopringMap<loopring_defs.UserBalanceInfo>;
    }>;
    getAssetLookRecords<R>(request: loopring_defs.GetUserBalancesRequest, apiKey: string): Promise<{
        raw_data: R;
        userBalances: loopring_defs.LoopringMap<loopring_defs.UserBalanceInfo>;
    }>;
    getUserDepositHistory<R>(request: loopring_defs.GetUserDepositHistoryRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userDepositHistory: loopring_defs.UserDepositHistoryTx[];
    }>;
    getUserOnchainWithdrawalHistory<R>(request: loopring_defs.GetUserOnchainWithdrawalHistoryRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userOnchainWithdrawalHistory: loopring_defs.UserOnchainWithdrawalHistoryTx[];
    }>;
    getUserTransferList<R>(request: loopring_defs.GetUserTransferListRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userTransfers: loopring_defs.UserTransferRecord[];
    }>;
    getUserTxs<R>(request: loopring_defs.GetUserTxsRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userTxs: loopring_defs.UserTx[];
    }>;
    getUserTrades<R>(request: loopring_defs.GetUserTradesRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userTrades: loopring_defs.UserTrade[];
    }>;
    getUserFeeRate<R>(request: loopring_defs.GetUserFeeRateRequest, apiKey: string): Promise<{
        raw_data: R;
        userFreeRateMap: loopring_defs.LoopringMap<loopring_defs.UserFeeRateInfo>;
    }>;
    getUserOrderFeeRate<R>(request: loopring_defs.GetUserOrderFeeRateRequest, apiKey: string): Promise<{
        raw_data: R;
        feeRate: loopring_defs.FeeRateInfo;
        gasPrice: number;
    }>;
    getMinimumTokenAmt<R>(request: loopring_defs.GetMinimumTokenAmtRequest, apiKey: string): Promise<{
        raw_data: R;
        amounts: [loopring_defs.TokenAmount, loopring_defs.TokenAmount];
        amountMap: loopring_defs.LoopringMap<loopring_defs.TokenAmount>;
        gasPrice: number;
        cacheOverdueAt: any;
    }>;
    getOffchainFeeAmt<R>(request: loopring_defs.GetOffchainFeeAmtRequest, apiKey: string): Promise<{
        raw_data: R;
        fees: loopring_defs.LoopringMap<loopring_defs.OffchainFeeInfo>;
        gasPrice: number;
    }>;
    getNFTOffchainFeeAmt<R>(request: loopring_defs.GetNFTOffchainFeeAmtRequest, apiKey: string): Promise<{
        raw_data: R;
        fees: loopring_defs.LoopringMap<loopring_defs.OffchainFeeInfo>;
    }>;
    submitNFTValidateOrder<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginNFTValidateOrderRequestV3WithPatch): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitNFTTrade<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginNFTTradeRequestV3WithPatch): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    getUserOwenCollection<R>(request: loopring_defs.GetUserOwnerCollectionRequest, apiKey: string): Promise<any>;
    getUserLegacyCollection<R>(request: loopring_defs.GetUserLegacyCollectionRequest, apiKey: string): Promise<any>;
    getUserNFTCollection(request: loopring_defs.GetUserNFTCollectionRequest, apiKey: string): Promise<any>;
    getUserNFTLegacyTokenAddress(request: {
        accountId: number;
    }, apiKey: string): Promise<any>;
    getUserNFTDepositHistory<R>(request: loopring_defs.GetUserNFTDepositHistoryRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTDepositHistory: loopring_defs.UserNFTDepositHistoryTx[];
    }>;
    getUserNFTWithdrawalHistory<R>(request: loopring_defs.GetUserNFTWithdrawalHistoryRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTWithdrawalHistory: loopring_defs.UserNFTWithdrawalHistoryTx[];
    }>;
    getUserNFTTransferHistory<R>(request: loopring_defs.GetUserNFTTransferHistoryRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTTransfers: loopring_defs.UserNFTTransferHistoryTx[];
    }>;
    /**
     * Get user NFTAction Mint list.
     * @param request
     * @param apiKey
     */
    getUserNFTMintHistory<R>(request: loopring_defs.GetUserNFTMintHistoryRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTMints: loopring_defs.UserNFTMintHistoryTx[];
    }>;
    getUserNFTTransactionHistory<R>(request: loopring_defs.GetUserNFTTxsRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTTxs: loopring_defs.UserNFTTxsHistory[];
    }>;
    getUserNFTTradeHistory<R>(request: loopring_defs.GetUserNFTTradeRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        trades: loopring_defs.UserNFTTradeHistory[];
    } | loopring_defs.RESULT_INFO>;
    SetReferrer<R>(request: loopring_defs.SetReferrerRequest, eddsaKey: string): Promise<{
        raw_data: R;
        result: any;
    }>;
    getUserNFTBalances<R>(request: loopring_defs.GetUserNFTBalancesRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTBalances: loopring_defs.UserNFTBalanceInfo[];
    }>;
    getUserNFTBalancesByCollection<R>(request: loopring_defs.GetUserNFTBalancesByCollectionRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTBalances: loopring_defs.UserNFTBalanceInfo[];
    }>;
    getUserNFTLegacyBalance<R>(request: loopring_defs.GetUserNFTLegacyBalanceRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userNFTBalances: loopring_defs.UserNFTBalanceInfo[];
    }>;
    getUserVIPAssets<R>(request: loopring_defs.getUserVIPAssetsRequest): Promise<{
        raw_data: {
            data: R;
        };
        vipAsset: R;
    }>;
    getUserVIPInfo<R>(request: loopring_defs.GetUserVIPInfoRequest, apiKey: string): Promise<{
        raw_data: R;
        vipInfo: {
            createdAt: number;
            validTo: string;
            org: any;
            vipTag: any;
        };
    }>;
    unLockAccount<R>({ keyPair, request, }: {
        keyPair: KeyPairParams;
        request: loopring_defs.GetUserApiKeyRequest;
    }, publicKey?: {
        x: string;
        y: string;
    } | undefined): Promise<AxiosResponse | loopring_defs.RESULT_INFO | {
        raw_data: R;
        eddsaKey: {
            keyPair: object;
            formatedPx: string;
            formatedPy: string;
            sk: string;
            counterFactualInfo: loopring_defs.CounterFactualInfo;
        };
        apiKey: string;
    }>;
    submitOffchainWithdraw<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OffChainWithdrawalRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitInternalTransfer<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginTransferRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitForceWithdrawals<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginForcesWithdrawalsRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitDeployNFT<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginDeployNFTRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitNFTInTransfer<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginNFTTransferRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitNFTWithdraw<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginNFTWithdrawRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitNFTMint<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginNFTMINTRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
        _noEcdsa?: boolean;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    submitNFTCollection<R>(req: loopring_defs.CollectionBasicMeta, chainId: loopring_defs.ChainId, apiKey: string, eddsaKey: string): Promise<loopring_defs.RESULT_INFO | {
        raw_data: R;
        contractAddress: string;
    }>;
    deleteNFTCollection<R>(req: loopring_defs.CollectionDelete, chainId: loopring_defs.ChainId, apiKey: string, eddsaKey: string): Promise<{
        raw_data: R;
    }>;
    submitNFTLegacyCollection<R>(req: loopring_defs.CollectionLegacyMeta, chainId: loopring_defs.ChainId, apiKey: string, eddsaKey: string): Promise<loopring_defs.RESULT_INFO | {
        raw_data: R;
        result: boolean;
    }>;
    submitEditNFTCollection<R>(req: Omit<loopring_defs.CollectionBasicMeta, 'nftFactory' | 'owner'> & {
        collectionId: string;
        accountId: number;
    }, chainId: loopring_defs.ChainId, apiKey: string, eddsaKey: string): Promise<loopring_defs.RESULT_INFO | {
        raw_data: R;
        contractAddress: string;
    }>;
    submitUpdateNFTLegacyCollection<R>(req: loopring_defs.UpdateNFTLegacyCollectionRequest, chainId: loopring_defs.ChainId, apiKey: string, eddsaKey: string): Promise<loopring_defs.RESULT_INFO | {
        raw_data: R;
        result: boolean;
    }>;
    submitUpdateNFTGroup<R>(req: loopring_defs.UpdateNFTGroupRequest, chainId: loopring_defs.ChainId, apiKey: string, eddsaKey: string): Promise<loopring_defs.RESULT_INFO | {
        raw_data: R;
        result: boolean;
    }>;
    submitDeployCollection<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.OriginDeployCollectionRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    updateAccount<T extends loopring_defs.TX_HASH_API>(req: loopring_defs.UpdateAccountRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<(Omit<any, 'resultInfo'> & {
        raw_data: Omit<any, 'resultInfo'>;
    }) | loopring_defs.RESULT_INFO>;
    getUserApiKey<R>(request: loopring_defs.GetUserApiKeyRequest, eddsaKey: string): Promise<{
        raw_data: R;
        apiKey: string;
    }>;
    getUserBills<R>(request: loopring_defs.GetUserBillsRequest, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        userTxs: loopring_defs.UserTx[];
    }>;
    getReferDownsides<R>(request: loopring_defs.GetReferDownsides, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        records: loopring_defs.ReferDownsides[];
    }>;
    getReferSelf<R>(request: loopring_defs.GetReferSelf, apiKey: string): Promise<{
        raw_data: R;
        totalNum: number;
        records: loopring_defs.ReferSelf[];
    }>;
    geReferStatistic<R = loopring_defs.ReferStatistic>(request: loopring_defs.GetReferStatistic, apiKey: string): Promise<{
        raw_data: R;
    } & R>;
    getUserRewards<R>(request: loopring_defs.GetUserRewardRequest, apiKey: string): Promise<{
        raw_data: R;
    }>;
    getUserLockSummary<R = loopring_defs.UserLockSummary>(request: loopring_defs.getUserLockSummaryRequest, apiKey: string): Promise<R & {
        raw_data: R;
    }>;
    sendTotalClaim(req: loopring_defs.OriginClaimRequestV3WithPatch, options?: {
        accountId?: number;
        counterFactualInfo?: any;
    }): Promise<any>;
    getUserTotalClaim<R>(request: loopring_defs.GetTotalClaimRequest, apiKey?: string): Promise<{
        raw_data: R;
        accountId: number;
        items: loopring_defs.ClaimItem[];
    }>;
    getNotificationAll<R = loopring_defs.UserNotification>(request: {
        accountId?: number;
        offset?: number;
        limit?: number;
        network?: loopring_defs.NetworkWallet;
        notRead: boolean | undefined;
    }, apiKey?: string): Promise<{
        raw_data: any;
        totalNum: number;
        notifications: R[];
        notRead: number;
    }>;
    submitNotificationClear<R>(request: {
        accountId: number;
        network?: loopring_defs.NetworkWallet;
    }, privateKey: string, apiKey?: string): Promise<{
        raw_data: R;
    }>;
    submitNotificationReadAll<R>(request: {
        accountId: number;
        network?: loopring_defs.NetworkWallet;
    }, privateKey: string, apiKey?: string): Promise<{
        raw_data: R;
    }>;
    submitNotificationReadOne<R>(request: {
        accountId: number;
        id: number;
    }, privateKey: string, apiKey?: string): Promise<{
        raw_data: R;
    }>;
}
//# sourceMappingURL=user_api.d.ts.map