import Decimal from "decimal.js";
import type { OrderbookL2, PriceLevelL2 } from "./zod-types/rest";
import type { OrderbookUpdate } from "./zod-types/ws";
type Size = Decimal;
export declare class Orderbook {
    bids: Map<string, Size>;
    asks: Map<string, Size>;
    marketId: number;
    lastUpdated: number;
    constructor(marketId: number, snapshot?: OrderbookUpdate);
    protected updateBid(price: string, size: Size): void;
    protected updateAsk(price: string, size: Size): void;
    applyDelta(delta: OrderbookUpdate): void;
    getSortedBids(levels?: number): PriceLevelL2[];
    getSortedAsks(levels?: number): PriceLevelL2[];
    static fromOrderbookL2(orderbook: OrderbookL2): Orderbook;
    static toOrderbookL2(orderbook: Orderbook): OrderbookL2;
    toDisplay(levels?: number): string;
    setLastUpdated(ts: number): void;
}
export {};
//# sourceMappingURL=orderbook.d.ts.map