/**
 *  LittleJS Input System
 *  <br> - Tracks key down, pressed, and released
 *  <br> - Also tracks mouse buttons, position, and wheel
 *  <br> - Supports multiple gamepads
 *  @namespace Input
 */
/** Returns true if device key is down
 *  @param {Number} key
 *  @param {Number} [device=0]
 *  @return {Boolean}
 *  @memberof Input */
export declare const keyIsDown: (key: any, device?: number) => 1 | 0;
/** Returns true if device key was pressed this frame
 *  @param {Number} key
 *  @param {Number} [device=0]
 *  @return {Boolean}
 *  @memberof Input */
export declare const keyWasPressed: (key: any, device?: number) => 1 | 0;
/** Returns true if device key was released this frame
 *  @param {Number} key
 *  @param {Number} [device=0]
 *  @return {Boolean}
 *  @memberof Input */
export declare const keyWasReleased: (key: any, device?: number) => 1 | 0;
/** Clears all input
 *  @memberof Input */
export declare const clearInput: () => any;
/** Returns true if mouse button is down
 *  @param {Number} button
 *  @return {Boolean}
 *  @memberof Input */
export declare const mouseIsDown: (key: any, device?: number) => 1 | 0;
/** Returns true if mouse button was pressed
 *  @param {Number} button
 *  @return {Boolean}
 *  @memberof Input */
export declare const mouseWasPressed: (key: any, device?: number) => 1 | 0;
/** Returns true if mouse button was released
 *  @param {Number} button
 *  @return {Boolean}
 *  @memberof Input */
export declare const mouseWasReleased: (key: any, device?: number) => 1 | 0;
/** Mouse pos in world space
 *  @type {Vector2}
 *  @memberof Input */
export declare let mousePos: import("./engineUtilities").Vector2;
/** Mouse pos in screen space
 *  @type {Vector2}
 *  @memberof Input */
export declare let mousePosScreen: import("./engineUtilities").Vector2;
/** Mouse wheel delta this frame
 *  @memberof Input */
export declare let mouseWheel: number;
/** Returns true if user is using gamepad (has more recently pressed a gamepad button)
 *  @memberof Input */
export declare let usingGamepad: number;
/** Returns true if gamepad button is down
 *  @param {Number} button
 *  @param {Number} [gamepad=0]
 *  @return {Boolean}
 *  @memberof Input */
export declare const gamepadIsDown: (button: any, gamepad?: number) => 1 | 0;
/** Returns true if gamepad button was pressed
 *  @param {Number} button
 *  @param {Number} [gamepad=0]
 *  @return {Boolean}
 *  @memberof Input */
export declare const gamepadWasPressed: (button: any, gamepad?: number) => 1 | 0;
/** Returns true if gamepad button was released
 *  @param {Number} button
 *  @param {Number} [gamepad=0]
 *  @return {Boolean}
 *  @memberof Input */
export declare const gamepadWasReleased: (button: any, gamepad?: number) => 1 | 0;
/** Returns gamepad stick value
 *  @param {Number} stick
 *  @param {Number} [gamepad=0]
 *  @return {Vector2}
 *  @memberof Input */
export declare const gamepadStick: (stick: any, gamepad?: number) => any;
export declare function inputUpdate(): void;
export declare function inputUpdatePost(): void;
export declare const stickData: any;
export declare function gamepadsUpdate(): void;
/** True if a touch device has been detected
 *  @const {boolean}
 *  @memberof Input */
export declare const isTouchDevice: boolean;
