import * as Model from '../../Model';
import { Observable } from 'rxjs/Observable';
import { TransportManager } from '../../Helpers/TransportManager';
import { PlaceOrderTypeValue } from '../../Enum/PlaceOrderTypeValue';
import { ITrade } from '../../Interfaces/ITrade';
export declare class TradeAPI implements ITrade {
    private transportManager;
    private apiVersion;
    private baseUrl;
    private baseEndPoint;
    constructor(transportManager: TransportManager, config: any);
    getOrder(orderId: string): Observable<Model.Order>;
    getOrderTrades(orderId: string): Observable<Model.OrderTrade[]>;
    getAllOrder(market?: string, limit?: number): Observable<Model.AllOrder[]>;
    placeBuyOrder(market: string, type: PlaceOrderTypeValue, price: number, size: number): Observable<Model.PlaceOrder>;
    placeSellOrder(market: string, type: PlaceOrderTypeValue, price: number, size: number): Observable<Model.PlaceOrder>;
    modifyOrder(orderId: string, price: number, size: number): Observable<boolean>;
    cancelOrder(orderId: string): Observable<boolean>;
    getOrderHistory(market?: string, limit?: number): Observable<Model.OrderHistory[]>;
    getTrade(tradeId: string): Observable<Model.Trade>;
    getTradeHistory(market: string, limit?: number): Observable<Model.Trade[]>;
    private placeOrder(market, side, type, price, size);
    private catchErrorHandler(res);
}
