createEngine(gopt: KAPLAYOpt): globalOpt: KAPLAYOpt<any, any>canvas: HTMLCanvasElementapp: state: canvas: HTMLCanvasElementbuttons: ButtonsDefbuttonsByKey: Map<Key, string[]>buttonsByMouse: Map<MouseButton, string[]>buttonsByGamepad: Map<KGamepadButton, string[]>buttonsByKeyCode: Map<string, string[]>loopID: null | numberstopped: booleandt: numberfixedDt: numberrestDt: numbertime: numberrealTime: numberfpsCounter: dts: number[]timer: numberfps: numbertick(dt: number): voidtimeScale: numberskipTime: booleanisHidden: booleannumFrames: numbercapsOn: booleanmousePos: Vec2mouseDeltaPos: Vec2keyState: ButtonState<Key>mouseState: ButtonState<MouseButton>mergedGamepadState: buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>>lastInputDevice: mouse | keyboard | gamepad | nullbuttonState: ButtonState<string>gamepads: KGamepad[]charInputted: string[]isMouseMoved: booleanlastWidth: numberlastHeight: numberevents: KEventHandler<AppEventMap>dt(): numberfixedDt(): numberrestDt(): numbertime(): numberrun(fixedUpdate: ()=>void, update: (processInput: ()=>void, resetInput: ()=>void)=>void): voidcanvas: HTMLCanvasElementfps(): numbernumFrames(): numberquit(): voidisHidden(): booleansetFullscreen(f?: boolean): voidisFullscreen(): booleansetCursor(c: Cursor): voidscreenshot(): stringgetGamepads(): KGamepad[]getCursor(): CursorsetCursorLocked(b: boolean): voidisCursorLocked(): booleanisTouchscreen(): booleanmousePos(): Vec2mouseDeltaPos(): Vec2isKeyDown(k?: Key | Key[]): booleanisKeyPressed(k?: Key | Key[]): booleanisKeyPressedRepeat(k?: Key | Key[]): booleanisKeyReleased(k?: Key | Key[]): booleanisMouseDown(m?: MouseButton): booleanisMousePressed(m?: MouseButton): booleanisMouseReleased(m?: MouseButton): booleanisMouseMoved(): booleanisGamepadButtonPressed(btn?: KGamepadButton | KGamepadButton[]): booleanisGamepadButtonDown(btn?: KGamepadButton | KGamepadButton[]): booleanisGamepadButtonReleased(btn?: KGamepadButton | KGamepadButton[]): booleangetGamepadStick(stick: GamepadStick): Vec2isButtonPressed(btn?: string | string[]): booleanisButtonDown(btn?: string | string[]): booleanisButtonReleased(btn?: string | string[]): booleansetButton(btn: string, binding: ButtonBinding): voidgetButton(btn: string): ButtonBindingpressButton(btn: string): voidreleaseButton(btn: string): voidcharInputted(): string[]onResize(action: ()=>void): KEventControlleronKeyDown: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronKeyPress: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronKeyPressRepeat: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronKeyRelease: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronMouseDown: (action: (m: MouseButton)=>void)=>KEventController & (mouse: MouseButton | MouseButton[], action: (m: MouseButton)=>void)=>KEventControlleronMousePress: (action: (m: MouseButton)=>void)=>KEventController & (mouse: MouseButton | MouseButton[], action: (m: MouseButton)=>void)=>KEventControlleronMouseRelease: (action: (m: MouseButton)=>void)=>KEventController & (mouse: MouseButton | MouseButton[], action: (m: MouseButton)=>void)=>KEventControlleronMouseMove(f: (pos: Vec2, dpos: Vec2)=>void): KEventControlleronCharInput(action: (ch: string)=>void): KEventControlleronTouchStart(f: (pos: Vec2, t: Touch)=>void): KEventControlleronTouchMove(f: (pos: Vec2, t: Touch)=>void): KEventControlleronTouchEnd(f: (pos: Vec2, t: Touch)=>void): KEventControlleronScroll(action: (delta: Vec2)=>void): KEventControlleronHide(action: ()=>void): KEventControlleronShow(action: ()=>void): KEventControlleronGamepadButtonDown: (action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventController & (btn: KGamepadButton, action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventControlleronGamepadButtonPress: (action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventController & (btn: KGamepadButton | KGamepadButton[], action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventControlleronGamepadButtonRelease: (action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventController & (btn: KGamepadButton | KGamepadButton[], action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventControlleronGamepadStick(stick: GamepadStick, action: (value: Vec2, gp: KGamepad)=>void): KEventControlleronGamepadConnect(action: (gamepad: KGamepad)=>void): KEventControlleronGamepadDisconnect(action: (gamepad: KGamepad)=>void): KEventControlleronButtonPress: (action: (btn: string)=>void)=>KEventController & (btn: string | string, action: (btn: string)=>void)=>KEventControlleronButtonDown: (action: (btn: string)=>void)=>KEventController & (btn: string | string, action: (btn: string)=>void)=>KEventControlleronButtonRelease: (action: (btn: string)=>void)=>KEventController & (btn: string | string, action: (btn: string)=>void)=>KEventControllergetLastInputDeviceType(): ButtonBindingDevice | nullevents: KEventHandler<AppEventMap>ggl: gl: WebGLRenderingContextopts: KAPLAYOpt<any, any>onDestroy(action: ()=>unknown): voiddestroy(): voidpushTexture2D(item: WebGLTexture): voidpopTexture2D(): voidpushArrayBuffer(item: WebGLBuffer): voidpopArrayBuffer(): voidpushElementArrayBuffer(item: WebGLBuffer): voidpopElementArrayBuffer(): voidpushFramebuffer(item: WebGLFramebuffer): voidpopFramebuffer(): voidpushRenderbuffer(item: WebGLRenderbuffer): voidpopRenderbuffer(): voidpushViewport(item: x: numbery: numberw: numberh: number): voidpopViewport(): voidpushProgram(item: WebGLProgram): voidpopProgram(): voidsetVertexFormat(fmt: VertexFormat): voidgfx: AppGfxCtxaudio: ctx: AudioContextmasterNode: GainNodeburpSnd: SoundDataassets: urlPrefix: stringsprites: AssetBucket<SpriteData>fonts: AssetBucket<FontData>bitmapFonts: AssetBucket<GfxFont>sounds: AssetBucket<SoundData>shaders: AssetBucket<Shader>custom: AssetBucket<any>music: Record<string, string>packer: TexPackerloaded: booleanframeRenderer: frameStart(): voidframeEnd(): voidfixedUpdateFrame(): voidupdateFrame(): voidfontCacheC2d: CanvasRenderingContext2D | nullfontCacheCanvas: HTMLCanvasElementgame: Gamedebug: Debugk: KAPLAYCtx
app: state: canvas: HTMLCanvasElementbuttons: ButtonsDefbuttonsByKey: Map<Key, string[]>buttonsByMouse: Map<MouseButton, string[]>buttonsByGamepad: Map<KGamepadButton, string[]>buttonsByKeyCode: Map<string, string[]>loopID: null | numberstopped: booleandt: numberfixedDt: numberrestDt: numbertime: numberrealTime: numberfpsCounter: dts: number[]timer: numberfps: numbertick(dt: number): voidtimeScale: numberskipTime: booleanisHidden: booleannumFrames: numbercapsOn: booleanmousePos: Vec2mouseDeltaPos: Vec2keyState: ButtonState<Key>mouseState: ButtonState<MouseButton>mergedGamepadState: buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>>lastInputDevice: mouse | keyboard | gamepad | nullbuttonState: ButtonState<string>gamepads: KGamepad[]charInputted: string[]isMouseMoved: booleanlastWidth: numberlastHeight: numberevents: KEventHandler<AppEventMap>dt(): numberfixedDt(): numberrestDt(): numbertime(): numberrun(fixedUpdate: ()=>void, update: (processInput: ()=>void, resetInput: ()=>void)=>void): voidcanvas: HTMLCanvasElementfps(): numbernumFrames(): numberquit(): voidisHidden(): booleansetFullscreen(f?: boolean): voidisFullscreen(): booleansetCursor(c: Cursor): voidscreenshot(): stringgetGamepads(): KGamepad[]getCursor(): CursorsetCursorLocked(b: boolean): voidisCursorLocked(): booleanisTouchscreen(): booleanmousePos(): Vec2mouseDeltaPos(): Vec2isKeyDown(k?: Key | Key[]): booleanisKeyPressed(k?: Key | Key[]): booleanisKeyPressedRepeat(k?: Key | Key[]): booleanisKeyReleased(k?: Key | Key[]): booleanisMouseDown(m?: MouseButton): booleanisMousePressed(m?: MouseButton): booleanisMouseReleased(m?: MouseButton): booleanisMouseMoved(): booleanisGamepadButtonPressed(btn?: KGamepadButton | KGamepadButton[]): booleanisGamepadButtonDown(btn?: KGamepadButton | KGamepadButton[]): booleanisGamepadButtonReleased(btn?: KGamepadButton | KGamepadButton[]): booleangetGamepadStick(stick: GamepadStick): Vec2isButtonPressed(btn?: string | string[]): booleanisButtonDown(btn?: string | string[]): booleanisButtonReleased(btn?: string | string[]): booleansetButton(btn: string, binding: ButtonBinding): voidgetButton(btn: string): ButtonBindingpressButton(btn: string): voidreleaseButton(btn: string): voidcharInputted(): string[]onResize(action: ()=>void): KEventControlleronKeyDown: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronKeyPress: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronKeyPressRepeat: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronKeyRelease: (action: (key: Key)=>void)=>KEventController & (key: Key | Key[], action: (key: Key)=>void)=>KEventControlleronMouseDown: (action: (m: MouseButton)=>void)=>KEventController & (mouse: MouseButton | MouseButton[], action: (m: MouseButton)=>void)=>KEventControlleronMousePress: (action: (m: MouseButton)=>void)=>KEventController & (mouse: MouseButton | MouseButton[], action: (m: MouseButton)=>void)=>KEventControlleronMouseRelease: (action: (m: MouseButton)=>void)=>KEventController & (mouse: MouseButton | MouseButton[], action: (m: MouseButton)=>void)=>KEventControlleronMouseMove(f: (pos: Vec2, dpos: Vec2)=>void): KEventControlleronCharInput(action: (ch: string)=>void): KEventControlleronTouchStart(f: (pos: Vec2, t: Touch)=>void): KEventControlleronTouchMove(f: (pos: Vec2, t: Touch)=>void): KEventControlleronTouchEnd(f: (pos: Vec2, t: Touch)=>void): KEventControlleronScroll(action: (delta: Vec2)=>void): KEventControlleronHide(action: ()=>void): KEventControlleronShow(action: ()=>void): KEventControlleronGamepadButtonDown: (action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventController & (btn: KGamepadButton, action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventControlleronGamepadButtonPress: (action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventController & (btn: KGamepadButton | KGamepadButton[], action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventControlleronGamepadButtonRelease: (action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventController & (btn: KGamepadButton | KGamepadButton[], action: (btn: KGamepadButton, gamepad: KGamepad)=>void)=>KEventControlleronGamepadStick(stick: GamepadStick, action: (value: Vec2, gp: KGamepad)=>void): KEventControlleronGamepadConnect(action: (gamepad: KGamepad)=>void): KEventControlleronGamepadDisconnect(action: (gamepad: KGamepad)=>void): KEventControlleronButtonPress: (action: (btn: string)=>void)=>KEventController & (btn: string | string, action: (btn: string)=>void)=>KEventControlleronButtonDown: (action: (btn: string)=>void)=>KEventController & (btn: string | string, action: (btn: string)=>void)=>KEventControlleronButtonRelease: (action: (btn: string)=>void)=>KEventController & (btn: string | string, action: (btn: string)=>void)=>KEventControllergetLastInputDeviceType(): ButtonBindingDevice | nullevents: KEventHandler<AppEventMap>
state: canvas: HTMLCanvasElementbuttons: ButtonsDefbuttonsByKey: Map<Key, string[]>buttonsByMouse: Map<MouseButton, string[]>buttonsByGamepad: Map<KGamepadButton, string[]>buttonsByKeyCode: Map<string, string[]>loopID: null | numberstopped: booleandt: numberfixedDt: numberrestDt: numbertime: numberrealTime: numberfpsCounter: dts: number[]timer: numberfps: numbertick(dt: number): voidtimeScale: numberskipTime: booleanisHidden: booleannumFrames: numbercapsOn: booleanmousePos: Vec2mouseDeltaPos: Vec2keyState: ButtonState<Key>mouseState: ButtonState<MouseButton>mergedGamepadState: buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>>lastInputDevice: mouse | keyboard | gamepad | nullbuttonState: ButtonState<string>gamepads: KGamepad[]charInputted: string[]isMouseMoved: booleanlastWidth: numberlastHeight: numberevents: KEventHandler<AppEventMap>
gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton>stickState: Map<GamepadStick, Vec2>>
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
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
ggl: gl: WebGLRenderingContextopts: KAPLAYOpt<any, any>onDestroy(action: ()=>unknown): voiddestroy(): voidpushTexture2D(item: WebGLTexture): voidpopTexture2D(): voidpushArrayBuffer(item: WebGLBuffer): voidpopArrayBuffer(): voidpushElementArrayBuffer(item: WebGLBuffer): voidpopElementArrayBuffer(): voidpushFramebuffer(item: WebGLFramebuffer): voidpopFramebuffer(): voidpushRenderbuffer(item: WebGLRenderbuffer): voidpopRenderbuffer(): voidpushViewport(item: x: numbery: numberw: numberh: number): voidpopViewport(): voidpushProgram(item: WebGLProgram): voidpopProgram(): voidsetVertexFormat(fmt: VertexFormat): void
assets: urlPrefix: stringsprites: AssetBucket<SpriteData>fonts: AssetBucket<FontData>bitmapFonts: AssetBucket<GfxFont>sounds: AssetBucket<SoundData>shaders: AssetBucket<Shader>custom: AssetBucket<any>music: Record<string, string>packer: TexPackerloaded: boolean