import BigNumber from "bignumber.js";
import type { LimitOrder } from "./order";
export declare class OrderQueue {
    private readonly _price;
    private _volume;
    private readonly _orders;
    private _ordersMap;
    constructor(price: BigNumber);
    len: () => number;
    toArray: () => LimitOrder[];
    price: () => BigNumber;
    volume: () => BigNumber;
    head: () => LimitOrder | undefined;
    tail: () => LimitOrder | undefined;
    append: (order: LimitOrder) => LimitOrder;
    update: (oldOrder: LimitOrder, newOrder: LimitOrder) => void;
    remove: (order: LimitOrder) => void;
    updateOrderSize: (order: LimitOrder, size: BigNumber) => void;
}
