Catch errors from all routes using a predicate.
Catch errors with a specific _tag from all routes.
Add a route or merge another router. This is polymorphic - accepts both Route and Router.
An empty router with no routes.
Set the fallback render function for when no route matches.
Find the best matching route for a pathname. Routes are sorted by specificity - more specific routes match first.
Protect routes with a guard condition. If the guard is false, redirects or renders fallback.
Check if a value is a Router.
Wrap all routes in a layout. Layouts are applied inside-out (first layout is innermost).
Parse and validate params using the route's schema.
Parse search params from URLSearchParams.
Add a prefix to all routes in the router.
Catch all errors from all routes. This removes errors from the error channel entirely.