UNPKG

@drift-labs/sdk-browser

Version:
28 lines (27 loc) 1.2 kB
/// <reference types="node" /> import { DataAndSlot, OracleEvents, OracleAccountSubscriber } from './types'; import { Program } from '@coral-xyz/anchor'; import StrictEventEmitter from 'strict-event-emitter-types'; import { EventEmitter } from 'events'; import { PublicKey } from '@solana/web3.js'; import { BulkAccountLoader } from './bulkAccountLoader'; import { OracleClient, OraclePriceData } from '../oracles/types'; export declare class PollingOracleAccountSubscriber implements OracleAccountSubscriber { isSubscribed: boolean; program: Program; eventEmitter: StrictEventEmitter<EventEmitter, OracleEvents>; publicKey: PublicKey; accountLoader: BulkAccountLoader; oracleClient: OracleClient; callbackId?: string; errorCallbackId?: string; oraclePriceData?: DataAndSlot<OraclePriceData>; constructor(publicKey: PublicKey, oracleClient: OracleClient, accountLoader: BulkAccountLoader); subscribe(): Promise<boolean>; addToAccountLoader(): Promise<void>; fetch(): Promise<void>; unsubscribe(): Promise<void>; assertIsSubscribed(): void; getOraclePriceData(): DataAndSlot<OraclePriceData>; didSubscriptionSucceed(): boolean; }