@glue42/bbg-market-data
Version:
A high-level API that wraps existing Glue42 Bloomberg Bridge Market Data interop methods. The API is based on the jBloomberg open source wrapper.
35 lines (34 loc) • 2.36 kB
TypeScript
import { RequestStatus } from "../request-status";
import { BloombergError, EventMessageInner } from "./types";
import { EventTypes } from "./event-types";
import { MessageTypes } from "./message-types";
import { SubscriptionInner } from "./types/subscription";
import { TerminalSubscription } from "./../bridge/types";
import { RequestId } from "./types/request-id";
export declare const isNew: (status: RequestStatus) => boolean;
export declare const isPending: (status: RequestStatus) => boolean;
export declare const isDone: (status: RequestStatus) => boolean;
export declare const isActive: (status: RequestStatus) => boolean;
/**
* Checks whether a Bloomberg message is of a particular message type.
*/
export declare function isMessageOfType(eventMessage: EventMessageInner, type: MessageTypes): boolean;
/**
* Checks whether a Bloomberg message is of a particular event type.
*/
export declare function isEventOfType(eventMessage: EventMessageInner, type: EventTypes): boolean;
/**
* Extracts the actual message details.
*/
export declare function getMessageDetails<T>(eventMessage: EventMessageInner<T>, type: MessageTypes): T;
export interface MessageHandlerResult<T = any> {
match: boolean;
data?: T;
}
export declare function createResponseErrorHandler<TMsg>(messageType: MessageTypes, getError: (message: TMsg) => any, test?: (message: TMsg) => boolean): (eventMessage: EventMessageInner<TMsg>) => MessageHandlerResult<BloombergError>;
export declare function createResponseDataHandler<TMsg, TData>(messageType: MessageTypes, getData: (message: TMsg) => TData | undefined, test?: (message: TMsg) => boolean): (eventMessage: EventMessageInner<TMsg>) => MessageHandlerResult<TData>;
export declare function createErrorMessageHandler<T>(eventType: EventTypes, messageType: MessageTypes): (eventMessage: EventMessageInner<T>) => MessageHandlerResult<BloombergError>;
export declare function setSubscriptionIds(subscription: SubscriptionInner): SubscriptionInner;
export declare function setSubscriptionCreatedStatus(subscription: SubscriptionInner): SubscriptionInner;
export declare function toTerminalSubscription({ internalId, security, fields, options, }: SubscriptionInner): TerminalSubscription;
export declare function getFailureReason(id: RequestId, error: BloombergError | Error): string;