import { Hub } from './hub';
import { BluetoothDeviceWithGatt } from '../types';
import type { IHubConnectionErrorsFactory } from './i-hub-connection-errors-factory';
import type { ICharacteristicDataStreamFactory } from './i-characteristic-data-stream-factory';
import type { IOutboundMessengerFactory } from './i-outbound-messenger-factory';
import type { IHubPropertiesFeatureFactory } from './i-hub-properties-feature-factory';
import type { IMotorsFeatureFactory } from './i-motors-feature-factory';
import type { IPortsFeatureFactory } from './i-ports-feature-factory';
import type { IInboundMessageListenerFactory } from './i-inbound-message-listener-factory';
import { MessageType } from '../constants';
import type { IReplyParser } from './i-reply-parser';
import type { IPrefixedConsoleLoggerFactory } from './i-prefixed-console-logger-factory';
import { HubConfig } from './hub-config';
import type { IHubActionsFeatureFactory } from './i-hub-actions-feature-factory';
import type { IRgbLightFeatureFactory } from './i-rgb-light-feature-factory';
export declare class HubFactory {
    private readonly connectionErrorFactory;
    private readonly outboundMessengerFactory;
    private readonly hubPropertiesFactory;
    private readonly ioFeatureFactoryService;
    private readonly characteristicsDataStreamFactory;
    private readonly motorsFeatureFactory;
    private readonly ledFeatureFactory;
    private readonly genericErrorsReplyParser;
    private readonly messageListenerFactory;
    private readonly loggerFactory;
    private readonly hubActionsFeatureFactory;
    constructor(connectionErrorFactory: IHubConnectionErrorsFactory, outboundMessengerFactory: IOutboundMessengerFactory, hubPropertiesFactory: IHubPropertiesFeatureFactory, ioFeatureFactoryService: IPortsFeatureFactory, characteristicsDataStreamFactory: ICharacteristicDataStreamFactory, motorsFeatureFactory: IMotorsFeatureFactory, ledFeatureFactory: IRgbLightFeatureFactory, genericErrorsReplyParser: IReplyParser<MessageType.genericError>, messageListenerFactory: IInboundMessageListenerFactory, loggerFactory: IPrefixedConsoleLoggerFactory, hubActionsFeatureFactory: IHubActionsFeatureFactory);
    create(device: BluetoothDeviceWithGatt, config?: Partial<HubConfig>): Hub;
    private mergeConfigs;
}
