import type { KeyEvent, Handler } from './handler-state'; import { KeyPress, KeyComboEventMapper } from './keystrokes'; export type KeyComboEvent = KeyComboEventProps & { keyCombo: string; keyEvents: KeyEvent[]; finalKeyEvent: KeyEvent; }; export declare class KeyComboState { private static _parseCache; private static _normalizationCache; static parseKeyCombo(keyComboStr: string): string[][][]; static stringifyKeyCombo(keyCombo: string[][][]): string; static normalizeKeyCombo(keyComboStr: string): string; get isPressed(): boolean; get sequenceIndex(): number; private _normalizedKeyCombo; private _parsedKeyCombo; private _handlerState; private _keyComboEventMapper; private _movingToNextSequenceAt; private _sequenceIndex; private _unitIndex; private _lastActiveKeyPresses; private _lastActiveKeyCount; private _isPressedWithFinalUnit; constructor(keyCombo: string, keyComboEventMapper: KeyComboEventMapper, handler?: Handler>); isOwnHandler(handler: Handler>): boolean; executePressed(event: KeyEvent): void; executeReleased(event: KeyEvent): void; updateState(activeKeyPresses: KeyPress[], sequenceTimeout: number): void; _wrapEvent(activeKeyPresses: KeyPress[][], finalKeyPress: KeyPress): KeyComboEvent; }