export type PressType = "SINGLE_PRESS" | "DOUBLE_PRESS" | "LONG_PRESS"; interface LogFn { debug(message: string, ...params: unknown[]): void; } export declare class ButtonPressDetector { private readonly onPressDetected; private readonly doublePressMsWindow; private readonly longPressMs; private readonly log?; private buttons; constructor(onPressDetected: (deviceAddress: number, buttonIndex: number, pressType: PressType) => void, doublePressMsWindow: number, longPressMs: number, log?: LogFn | undefined); private getKey; private getContext; private clearTimers; handleEvent(deviceAddress: number, buttonIndex: number, action: "press" | "release"): void; private handlePress; private handleRelease; } export {};