UNPKG

free-fx

Version:

74 lines (73 loc) 3.51 kB
/// <reference types="node" /> import { Server, Socket } from 'net'; import Websocket from 'ws'; import { Field } from './fields/Field'; import * as Constants from './fieldtypes'; import { FIXParser } from './FIXParser'; import { ConnectionType, Options as FIXParserOptions, Protocol } from './FIXParserBase'; import { IFIXParser } from './IFIXParser'; import { Message } from './message/Message'; import { MessageBuffer } from './util/MessageBuffer'; import { Parser, Version } from './util/util'; type Options = Pick<FIXParserOptions, 'host' | 'port' | 'protocol' | 'sender' | 'target' | 'heartbeatIntervalSeconds' | 'fixVersion' | 'logging' | 'onMessage' | 'onOpen' | 'onError' | 'onClose' | 'onReady'>; declare class FIXServer implements IFIXParser { static version: Version; parserName: Parser; fixParser: FIXParser; host: string; port: number; protocol: Protocol; server: Server | Websocket.Server | null; connected: boolean; sender: string; target: string; heartBeatInterval: number; fixVersion: string; nextNumIn: number; messageCounter: number; heartBeatIntervalId: ReturnType<typeof setInterval> | null; messageBufferIn: MessageBuffer; messageBufferOut: MessageBuffer; socket: WebSocket | Socket | null; isLoggedIn: boolean; connectionType: ConnectionType; private static onMessageCallback; private static onOpenCallback; private static onErrorCallback; private static onCloseCallback; private static onReadyCallback; createServer({ host, port, protocol, sender, target, heartbeatIntervalSeconds, fixVersion, logging, onMessage, onOpen, onError, onClose, onReady, }?: Options): void; private initialize; getNextTargetMsgSeqNum(): number; setNextTargetMsgSeqNum(nextMsgSeqNum: number): number; getTimestamp(dateObject?: Date): string; createMessage(...fields: Field[]): Message; parse(data: string): Message[]; send(message: Message): void; isConnected(): boolean; private resetSession; close(): void; destroy(): 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 { FIXServer };