/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
import { IProcessEnvironment } from "../../../base/common/platform.mjs";
import { IDiagnosticsService } from "../../diagnostics/common/diagnostics.mjs";
import { IDiagnosticsMainService } from "../../diagnostics/electron-main/diagnosticsMainService.mjs";
import { IDialogMainService } from "../../dialogs/electron-main/dialogMainService.mjs";
import { IEnvironmentMainService } from "../../environment/electron-main/environmentMainService.mjs";
import { ICommonIssueService, IssueReporterData, ProcessExplorerData } from "../common/issue.mjs";
import { ILogService } from "../../log/common/log.mjs";
import { INativeHostMainService } from "../../native/electron-main/nativeHostMainService.mjs";
import { IProductService } from "../../product/common/productService.mjs";
import { IProtocolMainService } from "../../protocol/electron-main/protocol.mjs";
import { IStateMainService } from "../../state/electron-main/state.mjs";
export declare const IIssueMainService: import("../../instantiation/common/instantiation.mjs").ServiceIdentifier<IIssueMainService>;
export interface IIssueMainService extends ICommonIssueService {
    stopTracing(): Promise<void>;
}
export declare class IssueMainService implements IIssueMainService {
    private userEnv;
    private readonly environmentMainService;
    private readonly logService;
    private readonly diagnosticsService;
    private readonly diagnosticsMainService;
    private readonly dialogMainService;
    private readonly nativeHostMainService;
    private readonly protocolMainService;
    private readonly productService;
    private readonly stateMainService;
    readonly _serviceBrand: undefined;
    private static readonly DEFAULT_BACKGROUND_COLOR;
    private issueReporterWindow;
    private issueReporterParentWindow;
    private processExplorerWindow;
    private processExplorerParentWindow;
    constructor(userEnv: IProcessEnvironment, environmentMainService: IEnvironmentMainService, logService: ILogService, diagnosticsService: IDiagnosticsService, diagnosticsMainService: IDiagnosticsMainService, dialogMainService: IDialogMainService, nativeHostMainService: INativeHostMainService, protocolMainService: IProtocolMainService, productService: IProductService, stateMainService: IStateMainService);
    private registerListeners;
    private safeSend;
    openReporter(data: IssueReporterData): Promise<void>;
    openProcessExplorer(data: ProcessExplorerData): Promise<void>;
    private focusWindow;
    private createBrowserWindow;
    getSystemStatus(): Promise<string>;
    private getWindowPosition;
    private getPerformanceInfo;
    stopTracing(): Promise<void>;
}
