import { APIResponseWithTime, SymbolLimitParam, SymbolPeriodLimitParam, APIResponseV3, USDCKlineRequest, USDCLast500TradesRequest, USDCOpenInterestRequest, USDCOrderFilter, USDCPerpActiveOrdersRequest, USDCPerpCancelOrderRequest, USDCPerpHistoricOrdersRequest, USDCPerpModifyOrderRequest, USDCPerpOrderRequest, USDCPositionsRequest, USDCSymbolDirectionLimit, USDCSymbolDirectionLimitCursor, USDCTransactionLogRequest } from './types'; import BaseRestClient from './util/BaseRestClient'; /** * REST API client for USDC Perpetual APIs */ export declare class USDCPerpetualClient extends BaseRestClient { getClientType(): "v3"; fetchServerTime(): Promise; /** * * Market Data Endpoints * */ getOrderBook(symbol: string): Promise>; /** Fetch trading rules (such as min/max qty). Query for all if blank. */ getContractInfo(params?: USDCSymbolDirectionLimit): Promise>; /** Get a symbol price/statistics ticker */ getSymbolTicker(symbol: string): Promise>; getCandles(params: USDCKlineRequest): Promise>; getMarkPrice(params: USDCKlineRequest): Promise>; getIndexPrice(params: USDCKlineRequest): Promise>; getIndexPremium(params: USDCKlineRequest): Promise>; getOpenInterest(params: USDCOpenInterestRequest): Promise>; getLargeOrders(params: SymbolLimitParam): Promise>; getLongShortRatio(params: SymbolPeriodLimitParam): Promise>; getLast500Trades(params: USDCLast500TradesRequest): Promise>; /** * * Account Data Endpoints * */ /** -> Order API */ /** * Place an order using the USDC Derivatives Account. * The request status can be queried in real-time. * The response parameters must be queried through a query or a WebSocket response. */ submitOrder(params: USDCPerpOrderRequest): Promise>; /** Active order parameters (such as quantity, price) and stop order parameters cannot be modified in one request at the same time. Please request modification separately. */ modifyOrder(params: USDCPerpModifyOrderRequest): Promise>; /** Cancel order */ cancelOrder(params: USDCPerpCancelOrderRequest): Promise>; /** Cancel all active orders. The real-time response indicates whether the request is successful, depending on retCode. */ cancelActiveOrders(symbol: string, orderFilter: USDCOrderFilter): Promise>; /** Query Unfilled/Partially Filled Orders */ getActiveOrders(params: USDCPerpActiveOrdersRequest): Promise>; /** Query order history. The endpoint only supports up to 30 days of queried records */ getHistoricOrders(params: USDCPerpHistoricOrdersRequest): Promise>; /** Query trade history. The endpoint only supports up to 30 days of queried records. An error will be returned if startTime is more than 30 days. */ getOrderExecutionHistory(params: USDCPerpActiveOrdersRequest): Promise>; /** -> Account API */ /** The endpoint only supports up to 30 days of queried records. An error will be returned if startTime is more than 30 days. */ getTransactionLog(params: USDCTransactionLogRequest): Promise>; /** Wallet info for USDC account. */ getBalances(): Promise>; /** Asset Info */ getAssetInfo(baseCoin?: string): Promise>; /** * If USDC derivatives account balance is greater than X, you can open PORTFOLIO_MARGIN, and if it is less than Y, it will automatically close PORTFOLIO_MARGIN and change back to REGULAR_MARGIN. X and Y will be adjusted according to operational requirements. * Rest API returns the result of checking prerequisites. You could get the real status of margin mode change by subscribing margin mode. */ setMarginMode(newMarginMode: 'REGULAR_MARGIN' | 'PORTFOLIO_MARGIN'): Promise>; /** Query margin mode for USDC account. */ getMarginMode(): Promise>; /** -> Positions API */ /** Query my positions */ getPositions(params: USDCPositionsRequest): Promise>; /** Only for REGULAR_MARGIN */ setLeverage(symbol: string, leverage: string): Promise>; /** Query Settlement History */ getSettlementHistory(params?: USDCSymbolDirectionLimitCursor): Promise>; /** -> Risk Limit API */ /** Query risk limit */ getRiskLimit(symbol: string): Promise>; /** Set risk limit */ setRiskLimit(symbol: string, riskId: number): Promise>; /** -> Funding API */ /** Funding settlement occurs every 8 hours at 00:00 UTC, 08:00 UTC and 16:00 UTC. The current interval's fund fee settlement is based on the previous interval's fund rate. For example, at 16:00, the settlement is based on the fund rate generated at 8:00. The fund rate generated at 16:00 will be used at 0:00 the next day. */ getLastFundingRate(symbol: string): Promise>; /** Get predicted funding rate and my predicted funding fee */ getPredictedFundingRate(symbol: string): Promise>; /** * * API Data Endpoints * */ getServerTime(): Promise; }