///
///
import { PopupDirection } from './config/Definitions';
import { UIStage, UIStageOptions, StageOrientation } from './display/UIStage';
import { GComponent } from './GComponent';
import { GObject } from './GObject';
import { Window } from './Window';
export declare class GRootMouseStatus {
touchDown: boolean;
mouseX: number;
mouseY: number;
}
export declare class GRoot extends GComponent {
private static uniqueID;
static findFor(obj: GObject): GRoot;
private $uiStage;
private $modalLayer;
private $popupStack;
private $justClosedPopups;
private $modalWaitPane;
private $focusedObject;
private $tooltipWin;
private $defaultTooltipWin;
private $checkingPopups;
private $uid;
private $volumeScale;
private static $gmStatus;
/**
* the singleton instance of the GRoot object
*/
static get inst(): GRoot;
/**
* the current mouse/pointer data
*/
static get globalMouseStatus(): GRootMouseStatus;
/**
* the main entry to lauch the UI root, e.g.: GRoot.inst.attachTo(app, options)
* @param app your createjs.Stage instance to be used in this GRoot instance
* @param stageOptions stage rotation / resize options
*/
attachTo(stage: createjs.Stage, stageOptions?: UIStageOptions): void;
constructor();
get uniqueID(): number;
get stageWidth(): number;
get stageHeight(): number;
get contentScaleFactor(): number;
get applicationContext(): createjs.Stage;
get nativeStage(): createjs.Container;
get orientation(): StageOrientation;
get stageWrapper(): UIStage;
protected dispatchMouseWheel(evt: any): void;
/**
* get the objects which are placed underneath the given stage coordinate
* @param globalX the stage X
* @param globalY the stage Y
*/
getObjectUnderPoint(globalX: number, globalY: number): GObject;
showWindow(win: Window): void;
hideWindow(win: Window): void;
hideWindowImmediately(win: Window): void;
bringToFront(win: Window): void;
showModalWait(msg?: string): void;
closeModalWait(): void;
closeAllExceptModals(): void;
closeAllWindows(): void;
getTopWindow(): Window;
get hasModalWindow(): boolean;
get modalWaiting(): boolean;
showPopup(popup: GObject, target?: GObject, dir?: PopupDirection): void;
togglePopup(popup: GObject, target?: GObject, dir?: PopupDirection): void;
hidePopup(popup?: GObject): void;
get hasAnyPopup(): boolean;
private closePopup;
showTooltips(msg: string): void;
showTooltipsWin(tooltipWin: GObject, position?: createjs.Point): void;
hideTooltips(): void;
get focus(): GObject;
set focus(value: GObject);
private setFocus;
get volumeScale(): number;
set volumeScale(value: number);
playOneShotSound(sound: createjs.AbstractSoundInstance, volumeScale?: number): void;
private adjustModalLayer;
private $stageDown;
checkPopups(target: createjs.DisplayObject): void;
private $stageMove;
private $stageUp;
private $click;
private $winResize;
}