import { WlOutputResource, WlSeatResource, XdgToplevelRequests, XdgToplevelResource, XdgToplevelState } from 'westfield-runtime-server'; import { DesktopSurface } from './Desktop'; import { RectWithInfo } from './math/Rect'; import { Size } from './math/Size'; import Session from './Session'; import Surface from './Surface'; import { DesktopSurfaceRole } from './SurfaceRole'; import View from './View'; import XdgSurface, { XdgConfigure } from './XdgSurface'; declare type ToplevelState = { maximized?: XdgToplevelState.maximized; fullscreen?: XdgToplevelState.fullscreen; resizing?: XdgToplevelState.resizing; activated?: XdgToplevelState.activated; }; export declare type ToplevelXdgConfigure = { state: ToplevelState; size: Size; } & XdgConfigure; export default class XdgToplevel implements XdgToplevelRequests, DesktopSurfaceRole { readonly resource: XdgToplevelResource; readonly xdgSurface: XdgSurface; private readonly session; readonly view: View; readonly desktopSurface: DesktopSurface; pending: { state: ToplevelState; size: Size; }; next: { state: ToplevelState; size: Size; minSize: Size; maxSize: Size; }; current: { state: ToplevelState; minSize: Size; maxSize: Size; }; private added; private constructor(); static create(xdgToplevelResource: XdgToplevelResource, xdgSurface: XdgSurface, session: Session): XdgToplevel; queryMaximized(): boolean; queryFullscreen(): boolean; configureMaximized(maximized: boolean): void; configureFullscreen(fullscreen: boolean): void; onCommit(surface: Surface): void; ackConfigure(serial: number, configure: ToplevelXdgConfigure): void; destroy(resource: XdgToplevelResource): void; setParent(resource: XdgToplevelResource, parent: XdgToplevelResource | undefined): void; setTitle(resource: XdgToplevelResource, title: string): void; setAppId(resource: XdgToplevelResource, appId: string): void; showWindowMenu(resource: XdgToplevelResource, wlSeatResource: WlSeatResource, serial: number, x: number, y: number): void; move(resource: XdgToplevelResource, wlSeatResource: WlSeatResource, serial: number): void; resize(resource: XdgToplevelResource, wlSeatResource: WlSeatResource, serial: number, edges: number): void; setMaxSize(resource: XdgToplevelResource, width: number, height: number): void; setMinSize(resource: XdgToplevelResource, width: number, height: number): void; setMaximized(resource: XdgToplevelResource): void; unsetMaximized(resource: XdgToplevelResource): void; setFullscreen(resource: XdgToplevelResource, output: WlOutputResource | undefined): void; unsetFullscreen(resource: XdgToplevelResource): void; setMinimized(resource: XdgToplevelResource): void; requestClose(): void; queryGeometry(): RectWithInfo; configureSize(size: Size): void; configureActivated(activated: boolean): void; configureResizing(resizing: boolean): void; queryMaxSize(): Size; queryMinSize(): Size; private ensureAdded; private stateCompareEquals; private sendConfigure; } export {};