rxpoweredup
Version:
A Typescript RxJS-based library for controlling LEGO Powered UP hubs & peripherals.
18 lines (17 loc) • 1.44 kB
TypeScript
import { Observable } from 'rxjs';
import type { GenericErrorInboundMessage, ILogger, RawMessage } from '../../types';
import { MessageType } from '../../constants';
import type { IInboundMessageListenerFactory, IOutboundMessenger, IOutboundMessengerFactory, IReplyParser, OutboundMessengerConfig } from '../../hub';
import { TaskVisitorFactory } from './task-visitor';
import { TaskQueueFactoryFactory } from './queue';
import type { IChannelFactory } from './i-channel-factory';
export declare class OutboundMessengerFactory implements IOutboundMessengerFactory {
private readonly messageListenerFactory;
private readonly feedbackIReplyParser;
private readonly channelFactory;
private readonly linuxChromeChannelFactory;
private readonly taskQueueFactoryFactory;
private readonly feedbackHandlerFactory;
constructor(messageListenerFactory: IInboundMessageListenerFactory, feedbackIReplyParser: IReplyParser<MessageType.portOutputCommandFeedback>, channelFactory: IChannelFactory, linuxChromeChannelFactory: IChannelFactory, taskQueueFactoryFactory: TaskQueueFactoryFactory, feedbackHandlerFactory: TaskVisitorFactory);
create(characteristicDataStream: Observable<RawMessage<MessageType>>, genericErrorsStream: Observable<GenericErrorInboundMessage>, characteristic: BluetoothRemoteGATTCharacteristic, onDisconnected$: Observable<void>, logger: ILogger, config: OutboundMessengerConfig): IOutboundMessenger;
}