import { Dimension } from "../../../../base/browser/dom.js"; import { CodeWindow } from "../../../../base/browser/window.js"; import { Barrier } from "../../../../base/common/async.js"; import { Event } from "../../../../base/common/event.js"; import { Disposable, DisposableStore, IDisposable } from "../../../../base/common/lifecycle.js"; import { IConfigurationService } from "../../../../platform/configuration/common/configuration.service.js"; import { IContextMenuService } from "../../../../platform/contextview/browser/contextView.service.js"; import { IDialogService } from "../../../../platform/dialogs/common/dialogs.service.js"; import { ITelemetryService } from "../../../../platform/telemetry/common/telemetry.service.js"; import { IRectangle } from "../../../../platform/window/common/window.js"; import { BaseWindow } from "../../../browser/window.js"; import { IWorkbenchEnvironmentService } from "../../environment/common/environmentService.service.js"; import { IHostService } from "../../host/browser/host.service.js"; import { IWorkbenchLayoutService } from "../../layout/browser/layoutService.service.js"; import { IAuxiliaryWindowService } from "./auxiliaryWindowService.service.js"; export interface IAuxiliaryWindowOpenEvent { readonly window: IAuxiliaryWindow; readonly disposables: DisposableStore; } export declare enum AuxiliaryWindowMode { Maximized = 0, Normal = 1, Fullscreen = 2 } export interface IAuxiliaryWindowOpenOptions { readonly bounds?: Partial; readonly compact?: boolean; readonly mode?: AuxiliaryWindowMode; readonly zoomLevel?: number; readonly alwaysOnTop?: boolean; readonly nativeTitlebar?: boolean; readonly disableFullscreen?: boolean; } export interface BeforeAuxiliaryWindowUnloadEvent { veto(reason: string | undefined): void; } export interface IAuxiliaryWindow extends IDisposable { readonly onWillLayout: Event; readonly onDidLayout: Event; readonly onBeforeUnload: Event; readonly onUnload: Event; readonly whenStylesHaveLoaded: Promise; readonly window: CodeWindow; readonly container: HTMLElement; updateOptions(options: { compact: boolean; } | undefined): void; layout(): void; createState(): IAuxiliaryWindowOpenOptions; } export declare class AuxiliaryWindow extends BaseWindow implements IAuxiliaryWindow { readonly window: CodeWindow; readonly container: HTMLElement; private readonly configurationService; private readonly _onWillLayout; readonly onWillLayout: Event; private readonly _onDidLayout; readonly onDidLayout: Event; private readonly _onBeforeUnload; readonly onBeforeUnload: Event; private readonly _onUnload; readonly onUnload: Event; private readonly _onWillDispose; readonly onWillDispose: Event; readonly whenStylesHaveLoaded: Promise; private compact; constructor(window: CodeWindow, container: HTMLElement, stylesHaveLoaded: Barrier, configurationService: IConfigurationService, hostService: IHostService, environmentService: IWorkbenchEnvironmentService, contextMenuService: IContextMenuService, layoutService: IWorkbenchLayoutService); updateOptions(options: { compact: boolean; }): void; private registerListeners; private handleBeforeUnload; protected handleVetoBeforeClose(e: BeforeUnloadEvent, reason: string): void; protected preventUnload(e: BeforeUnloadEvent): void; protected confirmBeforeClose(e: BeforeUnloadEvent): void; private handleUnload; layout(): void; createState(): IAuxiliaryWindowOpenOptions; dispose(): void; } export declare class BrowserAuxiliaryWindowService extends Disposable implements IAuxiliaryWindowService { protected readonly layoutService: IWorkbenchLayoutService; protected readonly dialogService: IDialogService; protected readonly configurationService: IConfigurationService; private readonly telemetryService; protected readonly hostService: IHostService; protected readonly environmentService: IWorkbenchEnvironmentService; protected readonly contextMenuService: IContextMenuService; readonly _serviceBrand: undefined; private static WINDOW_IDS; private readonly _onDidOpenAuxiliaryWindow; readonly onDidOpenAuxiliaryWindow: Event; private readonly windows; constructor(layoutService: IWorkbenchLayoutService, dialogService: IDialogService, configurationService: IConfigurationService, telemetryService: ITelemetryService, hostService: IHostService, environmentService: IWorkbenchEnvironmentService, contextMenuService: IContextMenuService); open(options?: IAuxiliaryWindowOpenOptions): Promise; protected createAuxiliaryWindow(targetWindow: CodeWindow, container: HTMLElement, stylesLoaded: Barrier): AuxiliaryWindow; private openWindow; protected resolveWindowId(auxiliaryWindow: Window): Promise; protected createContainer(auxiliaryWindow: CodeWindow, disposables: DisposableStore, options?: IAuxiliaryWindowOpenOptions): { stylesLoaded: Barrier; container: HTMLElement; }; private applyMeta; private applyCSS; private applyHTML; getWindow(windowId: number): IAuxiliaryWindow | undefined; }