Type-checking keybindings is cute, but you're going to discover that the keybinding doesn't work when you go to use it, so how much time are you really saving? That's not helped by the fact that many WMs/compositors have validators for their configs, so you're getting much of the same benefit with much less trouble.
For reference, Niri's config is very approachable: https://github.com/YaLTeR/niri/blob/main/resources/default-c...