contro-max
Version:
Game controls done in the best possible way!
30 lines (29 loc) • 976 B
TypeScript
import { GamepadButtonName } from './gamepad';
import { TypedEventEmitter } from './typedEventEmitter';
export interface GamepadStick {
label: string;
xAxis: number;
yAxis: number;
}
export declare const gamepadSticks: {
[id in 'left' | 'right']: GamepadStick;
};
type WhichGamepad = 'all' | 0 | 1 | 2 | 3;
export declare class GamepadsStore extends TypedEventEmitter<{
firstConnected: (arg0: Gamepad) => void;
lastDisconnected: () => void;
/** Emits only after queried */
nowPrefersGamepad: () => void;
}> {
static getConnectedGamepads(): Gamepad[];
static queryButton(whichGamepad: WhichGamepad, button: number | GamepadButtonName): boolean;
static queryStick(stick: keyof typeof gamepadSticks | GamepadStick, gamepad: Gamepad): {
x: number;
z: number;
};
private connectedGamepads;
constructor();
dispose(): void;
gamepadEvent: ({ gamepad, type, ...rest }: GamepadEvent) => void;
}
export {};