@reactivemarkets/switchboard-sdk
Version:
SDK for the Reactive Markets Switchboard
31 lines (30 loc) • 1.49 kB
TypeScript
import { Heartbeat, MarketDataSnapshot, Reject, TestRequest, MarketDataRequestReject } from "@reactivemarkets/switchboard-api";
import { TypedEmitter } from "tiny-typed-emitter";
import { IMarketDataClient } from "./iMarketDataClient";
import { IMarketDataClientOptions } from "./iMarketDataClientOptions";
import { IMarketDataSubscription } from "./iMarketDataSubscription";
import { IMessageHeader } from "./iMessageHeader";
interface IMarketDataClientEvents {
close: (code: number, reason: string) => void;
error: (err: Error) => void;
heartbeat: (heartbeat: Heartbeat, header: IMessageHeader) => void;
"md-request-reject": (requestReject: MarketDataRequestReject, header: IMessageHeader) => void;
"md-snapshot": (snapshot: MarketDataSnapshot, header: IMessageHeader) => void;
open: () => void;
reject: (reject: Reject, header: IMessageHeader) => void;
"test-request": (testRequest: TestRequest, header: IMessageHeader) => void;
}
export declare class MarketDataClient extends TypedEmitter<IMarketDataClientEvents> implements IMarketDataClient {
private readonly websocket;
constructor(options: IMarketDataClientOptions);
get isOpen(): boolean;
heartbeat(requestId?: string): void;
subscribe(options: IMarketDataSubscription): void;
testRequest(requestId?: string): void;
unsubscribe(options: IMarketDataSubscription): void;
private onClose;
private onError;
private onOpen;
private onMessage;
}
export {};