free-fx
Version:
69 lines (68 loc) • 3.25 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
import { Socket } from 'net';
import { TLSSocket } from 'tls';
import WebSocket from 'ws';
import { Field } from './fields/Field';
import * as Constants from './fieldtypes';
import { ConnectionType, FIXParserBase, Options, Protocol } from './FIXParserBase';
import { IFIXParser } from './IFIXParser';
import { Message } from './message/Message';
import { MessageBuffer } from './util/MessageBuffer';
import { Parser, Version } from './util/util';
declare class FIXParser implements IFIXParser {
static version: Version;
parserName: Parser;
fixParserBase: FIXParserBase;
nextNumIn: number;
nextNumOut: number;
heartBeatIntervalId: ReturnType<typeof setInterval> | null;
socket: Socket | WebSocket | TLSSocket | null;
connected: boolean;
host: string | null;
port: number | null;
protocol: Protocol | null;
sender: string | null;
target: string | null;
heartBeatInterval: number;
fixVersion: string;
messageBufferIn: MessageBuffer;
messageBufferOut: MessageBuffer;
connectionType: ConnectionType;
private static onMessageCallback;
private static onOpenCallback;
private static onErrorCallback;
private static onCloseCallback;
private static onReadyCallback;
connect({ host, port, protocol, sender, target, heartbeatIntervalSeconds, fixVersion, tlsKey, tlsCert, tlsUseSNI, logging, proxy, onMessage, onOpen, onError, onClose, onReady, }?: Options): void;
getNextTargetMsgSeqNum(): number;
setNextTargetMsgSeqNum(nextMsgSeqNum: number): number;
getTimestamp(dateObject?: Date): string;
createMessage(...fields: Field[]): Message;
parse(data: string): Message[];
send(message: Message): void;
isConnected(): boolean;
close(): void;
stopHeartbeat(): void;
startHeartbeat(heartBeatInterval?: number): void;
}
export { AllocPositionEffectEnum as AllocPositionEffect } from './fieldtypes/AllocPositionEffectEnum';
export { EncryptMethodEnum as EncryptMethod } from './fieldtypes/EncryptMethodEnum';
export { ExecTypeEnum as ExecType } from './fieldtypes/ExecTypeEnum';
export { FieldEnum as Fields } from './fieldtypes/FieldEnum';
export { HandlInstEnum as HandlInst } from './fieldtypes/HandlInstEnum';
export { MarketDepthEnum as MarketDepth } from './fieldtypes/MarketDepthEnum';
export { MDEntryTypeEnum as MDEntryType } from './fieldtypes/MDEntryTypeEnum';
export { MDUpdateTypeEnum as MDUpdateType } from './fieldtypes/MDUpdateTypeEnum';
export { MessageEnum as Messages } from './fieldtypes/MessageEnum';
export { OrderStatusEnum as OrderStatus } from './fieldtypes/OrderStatusEnum';
export { OrderTypesEnum as OrderTypes } from './fieldtypes/OrderTypesEnum';
export { SideEnum as Side } from './fieldtypes/SideEnum';
export { SubscriptionRequestTypeEnum as SubscriptionRequestType } from './fieldtypes/SubscriptionRequestTypeEnum';
export { TimeInForceEnum as TimeInForce } from './fieldtypes/TimeInForceEnum';
export { Protocol } from './FIXParserBase';
export { Options } from './FIXParserBase';
export { Constants };
export { Field };
export { Message };
export { FIXParser };