UNPKG

@drift-labs/sdk

Version:
43 lines 2.23 kB
/// <reference types="node" /> /// <reference types="node" /> /// <reference types="node" /> import { WebSocketProgramAccountSubscriber } from '../accounts/webSocketProgramAccountSubscriber'; import { SignedMsgOrderId, SignedMsgUserOrdersAccount } from '../types'; import { Commitment, PublicKey } from '@solana/web3.js'; import { ResubOpts } from '../accounts/types'; import { DriftClient } from '../driftClient'; import StrictEventEmitter from 'strict-event-emitter-types'; import { EventEmitter } from 'events'; export interface SignedMsgUserOrdersAccountSubscriberEvents { onAccountUpdate: (activeSignedMsgOrderIds: SignedMsgOrderId[], authorityPubkey: PublicKey, slot: number) => void; newSignedMsgOrderIds: (newSignedMsgOrderIds: SignedMsgOrderId[], authorityPubkey: PublicKey, slot: number) => void; } export declare class SignedMsgUserOrdersAccountSubscriber { protected driftClient: DriftClient; protected commitment: Commitment; protected resubOpts?: ResubOpts; protected resyncTimeoutId?: ReturnType<typeof setTimeout>; protected resyncIntervalMs?: number; protected decodeFn: (name: string, data: Buffer) => SignedMsgUserOrdersAccount; signedMsgUserOrderAccounts: Map<string, { slot: number; signedMsgUserOrdersAccount: SignedMsgUserOrdersAccount; }>; mostRecentSlot: number; fetchPromise?: Promise<void>; fetchPromiseResolver: () => void; protected subscriber: WebSocketProgramAccountSubscriber<SignedMsgUserOrdersAccount>; eventEmitter: StrictEventEmitter<EventEmitter, SignedMsgUserOrdersAccountSubscriberEvents>; constructor({ driftClient, commitment, resubOpts, decodeFn, resyncIntervalMs, }: { driftClient: DriftClient; commitment?: Commitment; resubOpts?: ResubOpts; decodeFn?: (name: string, data: Buffer) => SignedMsgUserOrdersAccount; resyncIntervalMs?: number; }); subscribe(): Promise<void>; fetch(): Promise<void>; tryUpdateSignedMsgUserOrdersAccount(data: Buffer | SignedMsgUserOrdersAccount, dataType: 'buffer' | 'decoded', slot: number, skipEventEmitting?: boolean): void; unsubscribe(): Promise<void>; } //# sourceMappingURL=signedMsgUserAccountSubscriber.d.ts.map