mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
52 lines
1.7 KiB
TypeScript
52 lines
1.7 KiB
TypeScript
// Type definitions for Keypress 2.1
|
|
// Project: https://github.com/dmauro/Keypress/
|
|
// Definitions by: Roger Chen <https://github.com/rcchen>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
|
|
// A keyboard input capturing utility in which any key can be a modifier key.
|
|
|
|
export as namespace keypress;
|
|
|
|
export interface ListenerDefaults {
|
|
keys: string;
|
|
prevent_default: boolean;
|
|
prevent_repeat: boolean;
|
|
is_unordered: boolean;
|
|
is_counting: boolean;
|
|
is_exclusive: boolean;
|
|
is_solitary: boolean;
|
|
is_sequence: boolean;
|
|
}
|
|
|
|
export interface Combo {
|
|
keys?: string;
|
|
on_keydown?(event?: KeyboardEvent, count?: number): any;
|
|
on_keyup?(event?: KeyboardEvent): any;
|
|
on_release?(event?: KeyboardEvent): any;
|
|
this?: Element;
|
|
prevent_default?: boolean;
|
|
prevent_repeat?: boolean;
|
|
is_unordered?: boolean;
|
|
is_counting?: boolean;
|
|
is_exclusive?: boolean;
|
|
is_sequence?: boolean;
|
|
is_solitary?: boolean;
|
|
}
|
|
|
|
export class Listener {
|
|
constructor(element?: Element, defaults?: ListenerDefaults);
|
|
|
|
simple_combo(keys: string, on_keydown_callback: (event?: KeyboardEvent, count?: number) => any): void;
|
|
counting_combo(keys: string, on_count_callback: (event?: KeyboardEvent, count?: number) => any): void;
|
|
sequence_combo(keys: string, callback: (event?: KeyboardEvent, count?: number) => any): void;
|
|
register_combo(combo: Combo): Combo;
|
|
unregister_combo(combo: Combo | string): void;
|
|
register_many(combos: Combo[]): Combo[];
|
|
unregister_many(combos: Combo[] | string[]): void;
|
|
get_registered_combos(): Combo[];
|
|
destroy(): void;
|
|
reset(): void;
|
|
listen(): void;
|
|
stop_listening(): void;
|
|
}
|