* **Description**: The logic that decides if a key should be swallowed or passed through. * **Acceptance Criteria**: * Must define `Mode` enum (`Normal`, `Insert`, `Visual`, `Command`) * Must implement `handle_key(key_code, modifiers)` function * Must follow this logic: if `Mode` is `Insert` pass through, else if `Mode` is `Normal` and the key is (i.e.) `h`, swallow it * Must implement toggle logic (`i` => `Insert`, `<esc>` => `Normal`)
Modeenum (Normal,Insert,Visual,Command)handle_key(key_code, modifiers)functionModeisInsertpass through, else ifModeisNormaland the key is (i.e.)h, swallow iti=>Insert,<esc>=>Normal)