import { Store } from '@ngrx/store';
import { DevtoolsServiceInterface } from '@o3r/core';
import { LoggerService } from '@o3r/logger';
import { ConfigurationStore } from '../stores';
import { ConfigurationDevtoolsServiceOptions } from './configuration-devtools.interface';
import { OtterConfigurationDevtools } from './configuration-devtools.service';
import * as i0 from "@angular/core";
export declare class ConfigurationDevtoolsMessageService implements DevtoolsServiceInterface {
    private readonly store;
    private readonly logger;
    private readonly configurationDevtools;
    private readonly options;
    private readonly sendMessage;
    private readonly destroyRef;
    constructor(store: Store<ConfigurationStore>, logger: LoggerService, configurationDevtools: OtterConfigurationDevtools, options: ConfigurationDevtoolsServiceOptions);
    private sendCurrentConfigurationState;
    /**
     * Function to trigger a re-send a requested messages to the Otter Chrome DevTools extension
     * @param only restricted list of messages to re-send
     */
    private handleReEmitRequest;
    /**
     * Function to handle the incoming messages from Otter Chrome DevTools extension
     * @param message message coming from the Otter Chrome DevTools extension
     */
    private handleEvents;
    /**
     * Function to connect the plugin to the Otter DevTools extension
     */
    private connectPlugin;
    /** @inheritDoc */
    activate(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurationDevtoolsMessageService, [null, null, null, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ConfigurationDevtoolsMessageService>;
}
//# sourceMappingURL=configuration-devtools.message.service.d.ts.map