Pattern relative to the router base. :param, :param(regex),
:param?, trailing * splat (→ params.pathMatch).
OptionalparentOptionalcomponentKey into the client component map. null/absent + !blade = group record: contributes to the layout chain, never matches a URL, renders nothing.
OptionalbladeHybrid row: fetch the server-rendered HTML for the URL and swap it into the outlet (hydrate/dehydrate hooks fire).
OptionalloadServer-declared data loader: a URL template fetched on navigation with
{placeholders} filled from path params, then typed query params.
"/api/vc/products?page={page}&sort={sort}"
Fetched with an AbortController — a newer navigation aborts it. The
response (house envelope or bare JSON) lands on snapshot.data atomically
with the commit; useRouteData() reads it.
OptionalparamsOptionalqueryOptionalmetaServer data: permissions, titles, preheat flag, …
One route row, as emitted by a route generator against this schema.