import { Observable, Subject } from 'rxjs'; import { StompMessage, StompConfig } from './stomp.model'; import { Logger } from '../log'; import { EventBus, EventBusEnabled } from '../bus'; export interface StompTransaction { id: string; receiptId: string; receiptObservable: Subject; commit: Function; abort: Function; } export declare enum ConnectionState { Connecting = 0, Connected = 1, Disconnected = 2 } export declare class StompClient implements EventBusEnabled { private log; private bus?; getName(): string; static STOMP_CONFIGURED: string; static STOMP_CONNECT: string; static STOMP_CONNECTED: string; static STOMP_CONNECTED_DUPLICATE: string; static STOMP_MESSAGE: string; static STOMP_RECEIPT: string; static STOMP_DISCONNECT: string; static STOMP_DISCONNECTING: string; static STOMP_DISCONNECTED: string; static STOMP_SUBSCRIBE: string; static STOMP_SUBSCRIBED: string; static STOMP_UNSUBSCRIBE: string; static STOMP_UNSUBSCRIBED: string; static STOMP_INVALIDMONITOR: string; static STOMP_SEND: string; static STOMP_ACK: string; static STOMP_BEGIN: string; static STOMP_ABORT: string; static STOMP_ERROR: string; static STOMP_COMMIT: string; private _socket; private _socketOpenObserver; private _stompConnectedObserver; private _socketMessageObserver; private _socketErrorObserver; private _socketCloseObserver; private _subscriptionObserver; private _ackObserver; private _config; private _socketConnected; private _stompConnected; private _useMockSocket; private _subscriptions; private _transactionReceipts; private _heartbeater; private currentConnectionState; constructor(log: Logger, bus?: EventBus); getSubscription(id: string): Subject; get connectionState(): ConnectionState; get clientSocket(): any; get socketOpenObserver(): Observable; get socketMessageObserver(): Observable; get socketCloseObserver(): Observable; get socketErrorObserver(): Observable; get socketConnectedObserver(): Subject; get socketACKObserver(): Subject; get socketSubscriptionObserver(): Subject; useMockSocket(): void; connect(config: StompConfig, messageHeaders?: any): Subject; disconnect(messageHeaders?: any): void; send(destination: string, messageHeaders?: any, body?: any): boolean; subscribeToDestination(destination: string, id: string, headers?: any): Subject; unsubscribeFromDestination(id: string, headers?: any): void; beginTransaction(transactionId: string, header?: any): StompTransaction; private deleteSubscription; private onStompError; private onError; private onClose; sendHeartbeat(): void; private onOpen; private transmit; private ack; private commit; abort(txId: string): void; private onMessage; private sendSocketMessage; private sendStompErrorToSubscribers; private create; }