UNPKG

@drift-labs/sdk-browser

Version:
33 lines (32 loc) 1.23 kB
/// <reference types="bn.js" /> import { Connection, PublicKey } from '@solana/web3.js'; import { BulkAccountLoader } from '../accounts/bulkAccountLoader'; import { Market, Orderbook } from '@project-serum/serum'; import { SerumMarketSubscriberConfig } from './types'; import { BN } from '@coral-xyz/anchor'; import { L2Level, L2OrderBookGenerator } from '../dlob/orderBookLevels'; export declare class SerumSubscriber implements L2OrderBookGenerator { connection: Connection; programId: PublicKey; marketAddress: PublicKey; subscriptionType: 'polling' | 'websocket'; accountLoader: BulkAccountLoader | undefined; market: Market; subscribed: boolean; asksAddress: PublicKey; asks: Orderbook; asksCallbackId: string | number; lastAsksSlot: number; bidsAddress: PublicKey; bids: Orderbook; bidsCallbackId: string | number; lastBidsSlot: number; constructor(config: SerumMarketSubscriberConfig); subscribe(): Promise<void>; getBestBid(): BN | undefined; getBestAsk(): BN | undefined; getL2Bids(): Generator<L2Level>; getL2Asks(): Generator<L2Level>; getL2Levels(side: 'bids' | 'asks'): Generator<L2Level>; unsubscribe(): Promise<void>; }