Karabiner-Elements remaps keyboards on macOS. Rebind runs the same remaps on macOS and on Windows, and with Rebind Link transforms mouse movement too.
With Rebind Link, mouse transforms sit next to keyboard remaps and output leaves a real USB device as standard HID. Underneath is a full scripting runtime: HTTP, WebSockets, screen sampling, window control, macros.