The runtime serve() extension accepts ServerOptions, including nativeRoutes, static and development settings, but the public Router class declares only { port?: number, hostname?: string }.
A real HTTP regression test for #884 exposed TS2353 for router.serve({ port: 0, nativeRoutes: true }). Existing tests bypassed this with any casts. The fix should use the existing runtime ServerOptions type in the class declaration and verify valid options plus rejection of invalid option values. No cast or alternate configuration path is needed.
Related framework performance work: stacksjs/stacks#2462.