I think you're missing the point.
On Windows (with Win32+DXGI+D3D11) and macOS (with Cocoa+Metal+MetalKit), things like setting up a window, 3D device and swap chain is just a few lines of relatively straightforward code, so SDL is by far not as useful there as on Linux.
??
https://github.com/libsdl-org/SDL/blob/main/src/video/windows/SDL_windowsevents.c#L1430
https://github.com/libsdl-org/SDL-1.2/blob/main/src/events/SDL_events.c#L403
https://github.com/SDL-mirror/SDL/blob/master/src/events/SDL_events.c#L769
Also, it seems to create a separate listener thread just to pump the messages, which I'm not sure I like.I could imagine SDL supports new event types by requiring the user to create _yet_ another thread, which waits for e.g. network events, then submits them to the SDL main event queue.