UNPKG

openfl

Version:

A fast, productive library for 2D cross-platform development.

659 lines (602 loc) 32.9 kB
import Vector from "./../Vector"; // import Application from "./Application"; import DisplayObjectContainer from "./DisplayObjectContainer"; import InteractiveObject from "./InteractiveObject"; import Stage3D from "./Stage3D"; import StageAlign from "./StageAlign"; import StageDisplayState from "./StageDisplayState"; import StageQuality from "./StageQuality"; import StageScaleMode from "./StageScaleMode"; type Window = any; declare namespace openfl.display { /** * The Stage class represents the main drawing area. * * For SWF content running in the browser(in Flash<sup>®</sup> Player), * the Stage represents the entire area where Flash content is shown. For * content running in AIR on desktop operating systems, each NativeWindow * object has a corresponding Stage object. * * The Stage object is not globally accessible. You need to access it * through the `stage` property of a DisplayObject instance. * * The Stage class has several ancestor classes - DisplayObjectContainer, * InteractiveObject, DisplayObject, and EventDispatcher - from which it * inherits properties and methods. Many of these properties and methods are * either inapplicable to Stage objects, or require security checks when * called on a Stage object. The properties and methods that require security * checks are documented as part of the Stage class. * * In addition, the following inherited properties are inapplicable to * Stage objects. If you try to set them, an IllegalOperationError is thrown. * These properties may always be read, but since they cannot be set, they * will always contain default values. * * * * `accessibilityProperties` * * `alpha` * * `blendMode` * * `cacheAsBitmap` * * `contextMenu` * * `filters` * * `focusRect` * * `loaderInfo` * * `mask` * * `mouseEnabled` * * `name` * * `opaqueBackground` * * `rotation` * * `scale9Grid` * * `scaleX` * * `scaleY` * * `scrollRect` * * `tabEnabled` * * `tabIndex` * * `transform` * * `visible` * * `x` * * `y` * * * Some events that you might expect to be a part of the Stage class, such * as `enterFrame`, `exitFrame`, * `frameConstructed`, and `render`, cannot be Stage * events because a reference to the Stage object cannot be guaranteed to * exist in every situation where these events are used. Because these events * cannot be dispatched by the Stage object, they are instead dispatched by * every DisplayObject instance, which means that you can add an event * listener to any DisplayObject instance to listen for these events. These * events, which are part of the DisplayObject class, are called broadcast * events to differentiate them from events that target a specific * DisplayObject instance. Two other broadcast events, `activate` * and `deactivate`, belong to DisplayObject's superclass, * EventDispatcher. The `activate` and `deactivate` * events behave similarly to the DisplayObject broadcast events, except that * these two events are dispatched not only by all DisplayObject instances, * but also by all EventDispatcher instances and instances of other * EventDispatcher subclasses. For more information on broadcast events, see * the DisplayObject class. * * @:event fullScreen Dispatched when the Stage object enters, or * leaves, full-screen mode. A change in * full-screen mode can be initiated through * ActionScript, or the user invoking a keyboard * shortcut, or if the current focus leaves the * full-screen window. * @:event mouseLeave Dispatched by the Stage object when the * pointer moves out of the stage area. If the * mouse button is pressed, the event is not * dispatched. * @:event orientationChange Dispatched by the Stage object when the stage * orientation changes. * * Orientation changes can occur when the * user rotates the device, opens a slide-out * keyboard, or when the * `setAspectRatio()` is called. * * **Note:** If the * `autoOrients` property is * `false`, then the stage * orientation does not change when a device is * rotated. Thus, StageOrientationEvents are * only dispatched for device rotation when * `autoOrients` is * `true`. * @:event orientationChanging Dispatched by the Stage object when the stage * orientation begins changing. * * **Important:** orientationChanging * events are not dispatched on Android * devices. * * **Note:** If the * `autoOrients` property is * `false`, then the stage * orientation does not change when a device is * rotated. Thus, StageOrientationEvents are * only dispatched for device rotation when * `autoOrients` is * `true`. * @:event resize Dispatched when the `scaleMode` * property of the Stage object is set to * `StageScaleMode.NO_SCALE` and the * SWF file is resized. * @:event stageVideoAvailability Dispatched by the Stage object when the state * of the stageVideos property changes. */ export class Stage extends DisplayObjectContainer /*implements IModule*/ { /** * A value from the StageAlign class that specifies the alignment of the * stage in Flash Player or the browser. The following are valid values: * * The `align` property is only available to an object that is * in the same security sandbox as the Stage owner(the main SWF file). To * avoid this, the Stage owner can grant permission to the domain of the * calling object by calling the `Security.allowDomain()` method * or the `Security.alowInsecureDomain()` method. For more * information, see the "Security" chapter in the _ActionScript 3.0 * Developer's Guide_. */ public align:StageAlign; /** * Specifies whether this stage allows the use of the full screen mode */ public readonly allowsFullScreen:boolean; /** * Specifies whether this stage allows the use of the full screen with text input mode */ public readonly allowsFullScreenInteractive:boolean; //public readonly application:Application; // #if flash // @:noCompletion @:dox(hide) @:require(flash15) public browserZoomFactor (default, null):Float; // #end /** * The window background color. */ public color:number; protected get_color ():number; protected set_color (value:number):number; // #if flash // @:noCompletion @:dox(hide) @:require(flash10) public colorCorrection:flash.display.ColorCorrection; // #end // #if flash // @:noCompletion @:dox(hide) @:require(flash10) public colorCorrectionSupport (default, null):flash.display.ColorCorrectionSupport; // #end public readonly contentsScaleFactor:number; protected get_contentsScaleFactor ():number; // #if flash // @:noCompletion @:dox(hide) @:require(flash11) public displayContextInfo (default, null):string; // #end /** * A value from the StageDisplayState class that specifies which display * state to use. The following are valid values: * * * `StageDisplayState.FULL_SCREEN` Sets AIR application or * Flash runtime to expand the stage over the user's entire screen, with * keyboard input disabled. * * `StageDisplayState.FULL_SCREEN_INTERACTIVE` Sets the AIR * application to expand the stage over the user's entire screen, with * keyboard input allowed.(Not available for content running in Flash * Player.) * * `StageDisplayState.NORMAL` Sets the Flash runtime back to * the standard stage display mode. * * * The scaling behavior of the movie in full-screen mode is determined by * the `scaleMode` setting(set using the * `Stage.scaleMode` property or the SWF file's `embed` * tag settings in the HTML file). If the `scaleMode` property is * set to `noScale` while the application transitions to * full-screen mode, the Stage `width` and `height` * properties are updated, and the Stage dispatches a `resize` * event. If any other scale mode is set, the stage and its contents are * scaled to fill the new screen dimensions. The Stage object retains its * original `width` and `height` values and does not * dispatch a `resize` event. * * The following restrictions apply to SWF files that play within an HTML * page(not those using the stand-alone Flash Player or not running in the * AIR runtime): * * * * To enable full-screen mode, add the `allowFullScreen` * parameter to the `object` and `embed` tags in the * HTML page that includes the SWF file, with `allowFullScreen` * set to `"true"`, as shown in the following example: * * Full-screen mode is initiated in response to a mouse click or key * press by the user; the movie cannot change `Stage.displayState` * without user input. Flash runtimes restrict keyboard input in full-screen * mode. Acceptable keys include keyboard shortcuts that terminate * full-screen mode and non-printing keys such as arrows, space, Shift, and * Tab keys. Keyboard shortcuts that terminate full-screen mode are: Escape * (Windows, Linux, and Mac), Control+W(Windows), Command+W(Mac), and * Alt+F4. * * A Flash runtime dialog box appears over the movie when users enter * full-screen mode to inform the users they are in full-screen mode and that * they can press the Escape key to end full-screen mode. * * * Starting with Flash Player 9.0.115.0, full-screen works the same in * windowless mode as it does in window mode. If you set the Window Mode * (`wmode` in the HTML) to Opaque Windowless * (`opaque`) or Transparent Windowless * (`transparent`), full-screen can be initiated, but the * full-screen window will always be opaque. * * * These restrictions are _not_ present for SWF content running in * the stand-alone Flash Player or in AIR. AIR supports an interactive * full-screen mode which allows keyboard input. * * For AIR content running in full-screen mode, the system screen saver * and power saving options are disabled while video content is playing and * until either the video stops or full-screen mode is exited. * * On Linux, setting `displayState` to * `StageDisplayState.FULL_SCREEN` or * `StageDisplayState.FULL_SCREEN_INTERACTIVE` is an asynchronous * operation. * * @throws SecurityError Calling the `displayState` property of a * Stage object throws an exception for any caller that * is not in the same security sandbox as the Stage * owner(the main SWF file). To avoid this, the Stage * owner can grant permission to the domain of the * caller by calling the * `Security.allowDomain()` method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. * Trying to set the `displayState` property * while the settings dialog is displayed, without a * user response, or if the `param` or * `embed` HTML tag's * `allowFullScreen` attribute is not set to * `true` throws a security error. */ public displayState:StageDisplayState; protected get_displayState ():StageDisplayState; protected set_displayState (value:StageDisplayState):StageDisplayState; public readonly element:HTMLElement; /** * The interactive object with keyboard focus; or `null` if focus * is not set or if the focused object belongs to a security sandbox to which * the calling object does not have access. * * @throws Error Throws an error if focus cannot be set to the target. */ public focus:InteractiveObject; protected get_focus ():InteractiveObject; protected set_focus (value:InteractiveObject):InteractiveObject; /** * Gets and sets the frame rate of the stage. The frame rate is defined as * frames per second. By default the rate is set to the frame rate of the * first SWF file loaded. Valid range for the frame rate is from 0.01 to 1000 * frames per second. * * **Note:** An application might not be able to follow high frame rate * settings, either because the target platform is not fast enough or the * player is synchronized to the vertical blank timing of the display device * (usually 60 Hz on LCD devices). In some cases, a target platform might * also choose to lower the maximum frame rate if it anticipates high CPU * usage. * * For content running in Adobe AIR, setting the `frameRate` * property of one Stage object changes the frame rate for all Stage objects * (used by different NativeWindow objects). * * @throws SecurityError Calling the `frameRate` property of a * Stage object throws an exception for any caller that * is not in the same security sandbox as the Stage * owner(the main SWF file). To avoid this, the Stage * owner can grant permission to the domain of the * caller by calling the * `Security.allowDomain()` method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. */ public frameRate:number; protected get_frameRate ():number; protected set_frameRate (value:number):number; public readonly fullScreenHeight:number; protected get_fullScreenHeight ():number; // #if flash // @:noCompletion @:dox(hide) public fullScreenSourceRect:Rectangle; // #end public readonly fullScreenWidth:number; protected get_fullScreenWidth ():number; // #if flash // @:noCompletion @:dox(hide) @:require(flash11_2) public mouseLock:boolean; // #end /** * A value from the StageQuality class that specifies which rendering quality * is used. The following are valid values: * * * `StageQuality.LOW` - Low rendering quality. Graphics are * not anti-aliased, and bitmaps are not smoothed, but runtimes still use * mip-mapping. * * `StageQuality.MEDIUM` - Medium rendering quality. * Graphics are anti-aliased using a 2 x 2 pixel grid, bitmap smoothing is * dependent on the `Bitmap.smoothing` setting. Runtimes use * mip-mapping. This setting is suitable for movies that do not contain * text. * * `StageQuality.HIGH` - High rendering quality. Graphics * are anti-aliased using a 4 x 4 pixel grid, and bitmap smoothing is * dependent on the `Bitmap.smoothing` setting. Runtimes use * mip-mapping. This is the default rendering quality setting that Flash * Player uses. * * `StageQuality.BEST` - Very high rendering quality. * Graphics are anti-aliased using a 4 x 4 pixel grid. If * `Bitmap.smoothing` is `true` the runtime uses a high * quality downscale algorithm that produces fewer artifacts(however, using * `StageQuality.BEST` with `Bitmap.smoothing` set to * `true` slows performance significantly and is not a recommended * setting). * * * Higher quality settings produce better rendering of scaled bitmaps. * However, higher quality settings are computationally more expensive. In * particular, when rendering scaled video, using higher quality settings can * reduce the frame rate. * * In the desktop profile of Adobe AIR, `quality` can be set to * `StageQuality.BEST` or `StageQuality.HIGH`(and the * default value is `StageQuality.HIGH`). Attempting to set it to * another value has no effect(and the property remains unchanged). In the * moble profile of AIR, all four quality settings are available. The default * value on mobile devices is `StageQuality.MEDIUM`. * * For content running in Adobe AIR, setting the `quality` * property of one Stage object changes the rendering quality for all Stage * objects(used by different NativeWindow objects). * **_Note:_** The operating system draws the device fonts, which are * therefore unaffected by the `quality` property. * * @throws SecurityError Calling the `quality` property of a Stage * object throws an exception for any caller that is * not in the same security sandbox as the Stage owner * (the main SWF file). To avoid this, the Stage owner * can grant permission to the domain of the caller by * calling the `Security.allowDomain()` * method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. */ public quality:StageQuality; protected get_quality ():StageQuality; protected set_quality (value:StageQuality):StageQuality; /** * A value from the StageScaleMode class that specifies which scale mode to * use. The following are valid values: * * * `StageScaleMode.EXACT_FIT` - The entire application is * visible in the specified area without trying to preserve the original * aspect ratio. Distortion can occur, and the application may appear * stretched or compressed. * * `StageScaleMode.SHOW_ALL` - The entire application is * visible in the specified area without distortion while maintaining the * original aspect ratio of the application. Borders can appear on two sides * of the application. * * `StageScaleMode.NO_BORDER` - The entire application fills * the specified area, without distortion but possibly with some cropping, * while maintaining the original aspect ratio of the application. * * `StageScaleMode.NO_SCALE` - The entire application is * fixed, so that it remains unchanged even as the size of the player window * changes. Cropping might occur if the player window is smaller than the * content. * * * @throws SecurityError Calling the `scaleMode` property of a * Stage object throws an exception for any caller that * is not in the same security sandbox as the Stage * owner(the main SWF file). To avoid this, the Stage * owner can grant permission to the domain of the * caller by calling the * `Security.allowDomain()` method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. */ public scaleMode:StageScaleMode; protected get_scaleMode ():StageScaleMode; protected set_scaleMode (value:StageScaleMode):StageScaleMode; public showDefaultContextMenu:boolean; // #if flash // @:noCompletion @:dox(hide) @:require(flash11) public softKeyboardRect (default, null):Rectangle; // #end public readonly stage3Ds:Vector<Stage3D>; /** * Specifies whether or not objects display a glowing border when they have * focus. * * @throws SecurityError Calling the `stageFocusRect` property of * a Stage object throws an exception for any caller * that is not in the same security sandbox as the * Stage owner(the main SWF file). To avoid this, the * Stage owner can grant permission to the domain of * the caller by calling the * `Security.allowDomain()` method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. */ public stageFocusRect:boolean; /** * The current height, in pixels, of the Stage. * * If the value of the `Stage.scaleMode` property is set to * `StageScaleMode.NO_SCALE` when the user resizes the window, the * Stage content maintains its size while the `stageHeight` * property changes to reflect the new height size of the screen area * occupied by the SWF file.(In the other scale modes, the * `stageHeight` property always reflects the original height of * the SWF file.) You can add an event listener for the `resize` * event and then use the `stageHeight` property of the Stage * class to determine the actual pixel dimension of the resized Flash runtime * window. The event listener allows you to control how the screen content * adjusts when the user resizes the window. * * Air for TV devices have slightly different behavior than desktop * devices when you set the `stageHeight` property. If the * `Stage.scaleMode` property is set to * `StageScaleMode.NO_SCALE` and you set the * `stageHeight` property, the stage height does not change until * the next frame of the SWF. * * **Note:** In an HTML page hosting the SWF file, both the * `object` and `embed` tags' `height` * attributes must be set to a percentage(such as `100%`), not * pixels. If the settings are generated by JavaScript code, the * `height` parameter of the `AC_FL_RunContent() ` * method must be set to a percentage, too. This percentage is applied to the * `stageHeight` value. * * @throws SecurityError Calling the `stageHeight` property of a * Stage object throws an exception for any caller that * is not in the same security sandbox as the Stage * owner(the main SWF file). To avoid this, the Stage * owner can grant permission to the domain of the * caller by calling the * `Security.allowDomain()` method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. */ public readonly stageHeight:number; // #if flash // @:noCompletion @:dox(hide) @:require(flash10_2) public stageVideos (default, null):Vector<flash.media.StageVideo>; // #end /** * Specifies the current width, in pixels, of the Stage. * * If the value of the `Stage.scaleMode` property is set to * `StageScaleMode.NO_SCALE` when the user resizes the window, the * Stage content maintains its defined size while the `stageWidth` * property changes to reflect the new width size of the screen area occupied * by the SWF file.(In the other scale modes, the `stageWidth` * property always reflects the original width of the SWF file.) You can add * an event listener for the `resize` event and then use the * `stageWidth` property of the Stage class to determine the * actual pixel dimension of the resized Flash runtime window. The event * listener allows you to control how the screen content adjusts when the * user resizes the window. * * Air for TV devices have slightly different behavior than desktop * devices when you set the `stageWidth` property. If the * `Stage.scaleMode` property is set to * `StageScaleMode.NO_SCALE` and you set the * `stageWidth` property, the stage width does not change until * the next frame of the SWF. * * **Note:** In an HTML page hosting the SWF file, both the * `object` and `embed` tags' `width` * attributes must be set to a percentage(such as `100%`), not * pixels. If the settings are generated by JavaScript code, the * `width` parameter of the `AC_FL_RunContent() ` * method must be set to a percentage, too. This percentage is applied to the * `stageWidth` value. * * @throws SecurityError Calling the `stageWidth` property of a * Stage object throws an exception for any caller that * is not in the same security sandbox as the Stage * owner(the main SWF file). To avoid this, the Stage * owner can grant permission to the domain of the * caller by calling the * `Security.allowDomain()` method or the * `Security.allowInsecureDomain()` method. * For more information, see the "Security" chapter in * the _ActionScript 3.0 Developer's Guide_. */ public readonly stageWidth:number; //public readonly window:Window; // #if flash // @:noCompletion @:dox(hide) @:require(flash10_1) public wmodeGPU (default, null):boolean; // #end // #if !flash // public function new (window:Window, color:Null<Int> = null); public constructor (width?:number, height?:number, color?:number | null, documentClass?:any, windowConfig?:object); // #end /** * Calling the `invalidate()` method signals Flash runtimes to * alert display objects on the next opportunity it has to render the display * list(for example, when the playhead advances to a new frame). After you * call the `invalidate()` method, when the display list is next * rendered, the Flash runtime sends a `render` event to each * display object that has registered to listen for the `render` * event. You must call the `invalidate()` method each time you * want the Flash runtime to send `render` events. * * The `render` event gives you an opportunity to make changes * to the display list immediately before it is actually rendered. This lets * you defer updates to the display list until the latest opportunity. This * can increase performance by eliminating unnecessary screen updates. * * The `render` event is dispatched only to display objects * that are in the same security domain as the code that calls the * `stage.invalidate()` method, or to display objects from a * security domain that has been granted permission via the * `Security.allowDomain()` method. * */ //override invalidate ():void; // #if flash // @:noCompletion @:dox(hide) public function isFocusInaccessible ():boolean; // #end // @:noCompletion @:dox(hide) public function addRenderer (renderer:Renderer):Void; // @:noCompletion @:dox(hide) public function addWindow (window:Window):Void; // @:noCompletion @:dox(hide) public function registerModule (application:LimeApplication):Void; // @:noCompletion @:dox(hide) public function removeRenderer (renderer:Renderer):Void; // @:noCompletion @:dox(hide) public function removeWindow (window:Window):Void; // @:noCompletion @:dox(hide) public function setPreloader (preloader:Preloader):Void; // @:noCompletion @:dox(hide) public function unregisterModule (application:LimeApplication):Void; // @:noCompletion @:dox(hide) public function onGamepadAxisMove (gamepad:Gamepad, axis:GamepadAxis, value:Float):Void; // @:noCompletion @:dox(hide) public function onGamepadButtonDown (gamepad:Gamepad, button:GamepadButton):Void; // @:noCompletion @:dox(hide) public function onGamepadButtonUp (gamepad:Gamepad, button:GamepadButton):Void; // @:noCompletion @:dox(hide) public function onGamepadConnect (gamepad:Gamepad):Void; // @:noCompletion @:dox(hide) public function onGamepadDisconnect (gamepad:Gamepad):Void; // @:noCompletion @:dox(hide) public function onJoystickAxisMove (joystick:Joystick, axis:Int, value:Float):Void; // @:noCompletion @:dox(hide) public function onJoystickButtonDown (joystick:Joystick, button:Int):Void; // @:noCompletion @:dox(hide) public function onJoystickButtonUp (joystick:Joystick, button:Int):Void; // @:noCompletion @:dox(hide) public function onJoystickConnect (joystick:Joystick):Void; // @:noCompletion @:dox(hide) public function onJoystickDisconnect (joystick:Joystick):Void; // @:noCompletion @:dox(hide) public function onJoystickHatMove (joystick:Joystick, hat:Int, position:JoystickHatPosition):Void; // @:noCompletion @:dox(hide) public function onJoystickTrackballMove (joystick:Joystick, trackball:Int, value:Float):Void; // @:noCompletion @:dox(hide) public function onKeyDown (window:Window, keyCode:KeyCode, modifier:KeyModifier):Void; // @:noCompletion @:dox(hide) public function onKeyUp (window:Window, keyCode:KeyCode, modifier:KeyModifier):Void; // @:noCompletion @:dox(hide) public function onModuleExit (code:Int):Void; // @:noCompletion @:dox(hide) public function onMouseDown (window:Window, x:Float, y:Float, button:Int):Void; // @:noCompletion @:dox(hide) public function onMouseMove (window:Window, x:Float, y:Float):Void; // @:noCompletion @:dox(hide) public function onMouseMoveRelative (window:Window, x:Float, y:Float):Void; // @:noCompletion @:dox(hide) public function onMouseUp (window:Window, x:Float, y:Float, button:Int):Void; // @:noCompletion @:dox(hide) public function onMouseWheel (window:Window, deltaX:Float, deltaY:Float):Void; // @:noCompletion @:dox(hide) public function onPreloadComplete ():Void; // @:noCompletion @:dox(hide) public function onPreloadProgress (loaded:Int, total:Int):Void; // @:noCompletion @:dox(hide) public function onRenderContextLost (renderer:Renderer):Void; // @:noCompletion @:dox(hide) public function onRenderContextRestored (renderer:Renderer, context:RenderContext):Void; // @:noCompletion @:dox(hide) public function onTextEdit (window:Window, text:string, start:Int, length:Int):Void; // @:noCompletion @:dox(hide) public function onTextInput (window:Window, text:string):Void; // @:noCompletion @:dox(hide) public function onTouchMove (touch:Touch):Void; // @:noCompletion @:dox(hide) public function onTouchEnd (touch:Touch):Void; // @:noCompletion @:dox(hide) public function onTouchStart (touch:Touch):Void; // @:noCompletion @:dox(hide) public function onWindowActivate (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowClose (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowCreate (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowDeactivate (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowDropFile (window:Window, file:string):Void; // @:noCompletion @:dox(hide) public function onWindowEnter (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowFocusIn (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowFocusOut (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowFullscreen (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowLeave (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowMinimize (window:Window):Void; // @:noCompletion @:dox(hide) public function onWindowMove (window:Window, x:Float, y:Float):Void; // @:noCompletion @:dox(hide) public function onWindowResize (window:Window, width:Int, height:Int):Void; // @:noCompletion @:dox(hide) public function onWindowRestore (window:Window):Void; // @:noCompletion @:dox(hide) public function render (renderer:Renderer):Void; // @:noCompletion @:dox(hide) public function update (deltaTime:Int):Void; } } export default openfl.display.Stage;