initApp(opt: canvas: HTMLCanvasElement & BUILDNANAOpt ): state: canvas: HTMLCanvasElement buttons: ButtonsDef buttonHandler: ButtonProcessor loopID: null | number stopped: boolean dt: number fixedDt: number maxStep: number restDt: number time: number realTime: number rawFPSCounter: FPSCounter fpsCounter: FPSCounter timeScale: number skipTime: boolean isHidden: boolean numFrames: number capsOn: boolean mousePos: Vec2 mouseDeltaPos: Vec2 keyState: ButtonState<Key, never> mouseState: ButtonState<MouseButton, never> mergedGamepadState: GamepadState gamepadStates: Map<number, GamepadState> lastInputDevice: "mouse" | "keyboard" | "gamepad" | null gamepads: KGamepad[] charInputted: string[] isMouseMoved: boolean lastWidth: number lastHeight: number canvasScaleX: number canvasScaleY: number events: KEventHandler<AppEventMap> dt(): number fixedDt(): number restDt(): number time(): number run(fixedUpdate: ()=>void , update: (processInput: ()=>void , resetInput: ()=>void )=>void ): void canvas: HTMLCanvasElement updateCanvasScale(): void fps(): number rawFPS(): number setFixedSpeed(speed: FixedSpeedOption ): void numFrames(): number quit(): void isHidden(): boolean setFullscreen(f?: boolean ): void isFullscreen(): boolean setCursor(c: Cursor ): void screenshot(): string screenshotToBlob(): Promise<Blob> getGamepads(): KGamepad[] getCursor(): Cursor setCursorLocked(b: boolean ): void isCursorLocked(): boolean isTouchscreen(): boolean mousePos(): Vec2 mouseDeltaPos(): Vec2 isKeyDown(k?: Key | Key[] ): boolean isKeyPressed(k?: Key | Key[] ): boolean isKeyPressedRepeat(k?: Key | Key[] ): boolean isKeyReleased(k?: Key | Key[] ): boolean isMouseDown(m?: MouseButton ): boolean isMousePressed(m?: MouseButton ): boolean isMouseReleased(m?: MouseButton ): boolean isMouseMoved(): boolean isGamepadButtonPressed(btn?: KGamepadButton | KGamepadButton[] ): boolean isGamepadButtonDown(btn?: KGamepadButton | KGamepadButton[] ): boolean isGamepadButtonReleased(btn?: KGamepadButton | KGamepadButton[] ): boolean isFocused(): boolean getGamepadStick(stick: KGamepadStick ): Vec2 getGamepadAnalogButton(btn: KGamepadButton ): number isButtonPressed(btn?: string | string[] ): boolean isButtonDown(btn?: string | string[] ): boolean isButtonReleased(btn?: string | string[] ): boolean getButton(btn: string ): ButtonBinding getButtons(): ButtonsDef setButton(btn: string , binding: ButtonBinding ): void pressButton(btn: string ): void releaseButton(btn: string ): void charInputted(): string[] onResize(action: ()=>void ): KEventController onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseMove(f: (pos: Vec2 , dpos: Vec2 )=>void ): KEventController onCharInput(action: (ch: string )=>void ): KEventController onTouchStart(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchMove(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchEnd(f: (pos: Vec2 , t: Touch )=>void ): KEventController onScroll(action: (delta: Vec2 )=>void ): KEventController onHide(action: ()=>void ): KEventController onShow(action: ()=>void ): KEventController onTabHide(action: ()=>void ): KEventController onTabShow(action: ()=>void ): KEventController onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController onGamepadConnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadDisconnect(action: (gamepad: KGamepad )=>void ): KEventController onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController getLastInputDeviceType(): "keyboard" | "gamepad" | "mouse" | null events: KEventHandler<AppEventMap>
state: canvas: HTMLCanvasElement buttons: ButtonsDef buttonHandler: ButtonProcessor loopID: null | number stopped: boolean dt: number fixedDt: number maxStep: number restDt: number time: number realTime: number rawFPSCounter: FPSCounter fpsCounter: FPSCounter timeScale: number skipTime: boolean isHidden: boolean numFrames: number capsOn: boolean mousePos: Vec2 mouseDeltaPos: Vec2 keyState: ButtonState<Key, never> mouseState: ButtonState<MouseButton, never> mergedGamepadState: GamepadState gamepadStates: Map<number, GamepadState> lastInputDevice: "mouse" | "keyboard" | "gamepad" | null gamepads: KGamepad[] charInputted: string[] isMouseMoved: boolean lastWidth: number lastHeight: number canvasScaleX: number canvasScaleY: number events: KEventHandler<AppEventMap>
onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController
onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController