export type KeyState = Record; export interface KeyInteraction { predicate(detail: T): boolean; fn(detail: T): void | Promise; }