diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routeTree.gen.ts b/e2e/react-router/basic-file-based-code-splitting/src/routeTree.gen.ts
index 442312342a..b90c69bd5f 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routeTree.gen.ts
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routeTree.gen.ts
@@ -8,8 +8,6 @@
 // You should NOT make any changes in this file as it will be overwritten.
 // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
 
-import type { CreateFileRoute, FileRoutesByPath } from '@tanstack/react-router'
-
 import { Route as rootRouteImport } from './routes/__root'
 import { Route as WithoutLoaderRouteImport } from './routes/without-loader'
 import { Route as ViewportTestRouteImport } from './routes/viewport-test'
@@ -220,97 +218,6 @@ declare module '@tanstack/react-router' {
   }
 }
 
-declare module './routes/index' {
-  const createFileRoute: CreateFileRoute<
-    '/',
-    FileRoutesByPath['/']['parentRoute'],
-    FileRoutesByPath['/']['id'],
-    FileRoutesByPath['/']['path'],
-    FileRoutesByPath['/']['fullPath']
-  >
-}
-declare module './routes/_layout' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout',
-    FileRoutesByPath['/_layout']['parentRoute'],
-    FileRoutesByPath['/_layout']['id'],
-    FileRoutesByPath['/_layout']['path'],
-    FileRoutesByPath['/_layout']['fullPath']
-  >
-}
-declare module './routes/posts' {
-  const createFileRoute: CreateFileRoute<
-    '/posts',
-    FileRoutesByPath['/posts']['parentRoute'],
-    FileRoutesByPath['/posts']['id'],
-    FileRoutesByPath['/posts']['path'],
-    FileRoutesByPath['/posts']['fullPath']
-  >
-}
-declare module './routes/viewport-test' {
-  const createFileRoute: CreateFileRoute<
-    '/viewport-test',
-    FileRoutesByPath['/viewport-test']['parentRoute'],
-    FileRoutesByPath['/viewport-test']['id'],
-    FileRoutesByPath['/viewport-test']['path'],
-    FileRoutesByPath['/viewport-test']['fullPath']
-  >
-}
-declare module './routes/without-loader' {
-  const createFileRoute: CreateFileRoute<
-    '/without-loader',
-    FileRoutesByPath['/without-loader']['parentRoute'],
-    FileRoutesByPath['/without-loader']['id'],
-    FileRoutesByPath['/without-loader']['path'],
-    FileRoutesByPath['/without-loader']['fullPath']
-  >
-}
-declare module './routes/_layout/_layout-2' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout/_layout-2',
-    FileRoutesByPath['/_layout/_layout-2']['parentRoute'],
-    FileRoutesByPath['/_layout/_layout-2']['id'],
-    FileRoutesByPath['/_layout/_layout-2']['path'],
-    FileRoutesByPath['/_layout/_layout-2']['fullPath']
-  >
-}
-declare module './routes/posts.$postId' {
-  const createFileRoute: CreateFileRoute<
-    '/posts/$postId',
-    FileRoutesByPath['/posts/$postId']['parentRoute'],
-    FileRoutesByPath['/posts/$postId']['id'],
-    FileRoutesByPath['/posts/$postId']['path'],
-    FileRoutesByPath['/posts/$postId']['fullPath']
-  >
-}
-declare module './routes/posts.index' {
-  const createFileRoute: CreateFileRoute<
-    '/posts/',
-    FileRoutesByPath['/posts/']['parentRoute'],
-    FileRoutesByPath['/posts/']['id'],
-    FileRoutesByPath['/posts/']['path'],
-    FileRoutesByPath['/posts/']['fullPath']
-  >
-}
-declare module './routes/_layout/_layout-2/layout-a' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout/_layout-2/layout-a',
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['parentRoute'],
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['id'],
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['path'],
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['fullPath']
-  >
-}
-declare module './routes/_layout/_layout-2/layout-b' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout/_layout-2/layout-b',
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['parentRoute'],
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['id'],
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['path'],
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['fullPath']
-  >
-}
-
 interface LayoutLayout2RouteChildren {
   LayoutLayout2LayoutARoute: typeof LayoutLayout2LayoutARoute
   LayoutLayout2LayoutBRoute: typeof LayoutLayout2LayoutBRoute
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout.tsx
index 5c4a461d8d..02ddbb1cd9 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout.tsx
@@ -1,6 +1,6 @@
-import { Outlet } from '@tanstack/react-router'
+import { Outlet, createFileRoute } from '@tanstack/react-router'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/_layout')({
   component: LayoutComponent,
 })
 
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx
index 483b910862..3b7dbf2903 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx
@@ -1,6 +1,6 @@
-import { Link, Outlet } from '@tanstack/react-router'
+import { Link, Outlet, createFileRoute } from '@tanstack/react-router'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/_layout/_layout-2')({
   component: LayoutComponent,
 })
 
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx
index a190b24202..ed2dea8800 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx
@@ -1,4 +1,5 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/react-router'
+export const Route = createFileRoute('/_layout/_layout-2/layout-a')({
   component: LayoutAComponent,
 })
 
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx
index 505f8f6fbf..4799d403e9 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx
@@ -1,4 +1,5 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/react-router'
+export const Route = createFileRoute('/_layout/_layout-2/layout-b')({
   component: LayoutBComponent,
 })
 
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/index.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/index.tsx
index b23956ae17..0a5b7572ba 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/index.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/index.tsx
@@ -1,6 +1,7 @@
+import { createFileRoute } from '@tanstack/react-router'
 import * as React from 'react'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/')({
   component: Home,
 })
 
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx
index 805fa37ed3..47d1148be2 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx
@@ -1,9 +1,9 @@
 import * as React from 'react'
-import { ErrorComponent } from '@tanstack/react-router'
+import { ErrorComponent, createFileRoute } from '@tanstack/react-router'
 import { fetchPost } from '../posts'
 import type { ErrorComponentProps } from '@tanstack/react-router'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/posts/$postId')({
   loader: async ({ params: { postId } }) => fetchPost(postId),
   errorComponent: PostErrorComponent as any,
   notFoundComponent: () => {
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.index.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.index.tsx
index fdbe5865e5..c6b65f1892 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.index.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.index.tsx
@@ -1,6 +1,7 @@
+import { createFileRoute } from '@tanstack/react-router'
 import * as React from 'react'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/posts/')({
   component: PostsIndexComponent,
 })
 
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.tsx
index 4469b2216a..c7a09ed7f8 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/posts.tsx
@@ -1,8 +1,8 @@
 import * as React from 'react'
-import { Link, Outlet } from '@tanstack/react-router'
+import { Link, Outlet, createFileRoute } from '@tanstack/react-router'
 import { fetchPosts } from '../posts'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/posts')({
   loader: fetchPosts,
   component: PostsComponent,
 })
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx
index b182feb7b1..81fd50c98b 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx
@@ -1,3 +1,4 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/react-router'
+export const Route = createFileRoute('/viewport-test')({
   component: () => <div>Hello /viewport-test!</div>,
 })
diff --git a/e2e/react-router/basic-file-based-code-splitting/src/routes/without-loader.tsx b/e2e/react-router/basic-file-based-code-splitting/src/routes/without-loader.tsx
index af692bdaca..a4f4fac74e 100644
--- a/e2e/react-router/basic-file-based-code-splitting/src/routes/without-loader.tsx
+++ b/e2e/react-router/basic-file-based-code-splitting/src/routes/without-loader.tsx
@@ -1,3 +1,4 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/react-router'
+export const Route = createFileRoute('/without-loader')({
   component: () => <div>Hello /without-loader!</div>,
 })
diff --git a/e2e/react-router/basic-file-based/src/routeTree.gen.ts b/e2e/react-router/basic-file-based/src/routeTree.gen.ts
index efa8b81d76..a31da07eed 100644
--- a/e2e/react-router/basic-file-based/src/routeTree.gen.ts
+++ b/e2e/react-router/basic-file-based/src/routeTree.gen.ts
@@ -9,6 +9,7 @@
 // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
 
 import { Route as rootRouteImport } from './routes/__root'
+import { Route as Char45824Char54620Char48124Char44397RouteImport } from './routes/대한민국'
 import { Route as RemountDepsRouteImport } from './routes/remountDeps'
 import { Route as PostsRouteImport } from './routes/posts'
 import { Route as NotRemountDepsRouteImport } from './routes/notRemountDeps'
@@ -110,6 +111,12 @@ import { Route as NonNestedDeepBazBarFooRouteRouteImport } from './routes/non-ne
 import { Route as NonNestedDeepBazBarFooIndexRouteImport } from './routes/non-nested/deep/$baz_.bar.$foo.index'
 import { Route as NonNestedDeepBazBarFooQuxRouteImport } from './routes/non-nested/deep/$baz_.bar.$foo_.qux'
 
+const Char45824Char54620Char48124Char44397Route =
+  Char45824Char54620Char48124Char44397RouteImport.update({
+    id: '/대한민국',
+    path: '/대한민국',
+    getParentRoute: () => rootRouteImport,
+  } as any)
 const RemountDepsRoute = RemountDepsRouteImport.update({
   id: '/remountDeps',
   path: '/remountDeps',
@@ -302,13 +309,13 @@ const Char45824Char54620Char48124Char44397Char55357Char56960IdRoute =
   Char45824Char54620Char48124Char44397Char55357Char56960IdRouteImport.update({
     id: '/🚀/$id',
     path: '/🚀/$id',
-    getParentRoute: () => Char45824Char54620Char48124Char44397RouteRoute,
+    getParentRoute: () => Char45824Char54620Char48124Char44397Route,
   } as any)
 const Char45824Char54620Char48124Char44397WildcardSplatRoute =
   Char45824Char54620Char48124Char44397WildcardSplatRouteImport.update({
     id: '/wildcard/$',
     path: '/wildcard/$',
-    getParentRoute: () => Char45824Char54620Char48124Char44397RouteRoute,
+    getParentRoute: () => Char45824Char54620Char48124Char44397Route,
   } as any)
 const RelativeUseNavigateRelativeUseNavigateBRoute =
   RelativeUseNavigateRelativeUseNavigateBRouteImport.update({
@@ -654,7 +661,7 @@ export interface FileRoutesByFullPath {
   '/': typeof IndexRoute
   '/non-nested': typeof NonNestedRouteRouteWithChildren
   '/search-params': typeof SearchParamsRouteRouteWithChildren
-  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteWithChildren
   '/anchor': typeof AnchorRoute
   '/component-types-test': typeof ComponentTypesTestRoute
   '/editing-a': typeof EditingARoute
@@ -752,7 +759,7 @@ export interface FileRoutesByFullPath {
 export interface FileRoutesByTo {
   '/': typeof IndexRoute
   '/non-nested': typeof NonNestedRouteRouteWithChildren
-  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteWithChildren
   '/anchor': typeof AnchorRoute
   '/component-types-test': typeof ComponentTypesTestRoute
   '/editing-a': typeof EditingARoute
@@ -843,7 +850,7 @@ export interface FileRoutesById {
   '/': typeof IndexRoute
   '/non-nested': typeof NonNestedRouteRouteWithChildren
   '/search-params': typeof SearchParamsRouteRouteWithChildren
-  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteWithChildren
   '/_layout': typeof LayoutRouteWithChildren
   '/anchor': typeof AnchorRoute
   '/component-types-test': typeof ComponentTypesTestRoute
@@ -1238,7 +1245,7 @@ export interface RootRouteChildren {
   IndexRoute: typeof IndexRoute
   NonNestedRouteRoute: typeof NonNestedRouteRouteWithChildren
   SearchParamsRouteRoute: typeof SearchParamsRouteRouteWithChildren
-  Char45824Char54620Char48124Char44397RouteRoute: typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  Char45824Char54620Char48124Char44397RouteRoute: typeof Char45824Char54620Char48124Char44397RouteRoute
   LayoutRoute: typeof LayoutRouteWithChildren
   AnchorRoute: typeof AnchorRoute
   ComponentTypesTestRoute: typeof ComponentTypesTestRoute
@@ -1247,6 +1254,7 @@ export interface RootRouteChildren {
   NotRemountDepsRoute: typeof NotRemountDepsRoute
   PostsRoute: typeof PostsRouteWithChildren
   RemountDepsRoute: typeof RemountDepsRoute
+  Char45824Char54620Char48124Char44397Route: typeof Char45824Char54620Char48124Char44397RouteWithChildren
   ParamsPsNonNestedRouteRoute: typeof ParamsPsNonNestedRouteRouteWithChildren
   RelativeLinkRouteRoute: typeof RelativeLinkRouteRouteWithChildren
   RelativeUseNavigateRouteRoute: typeof RelativeUseNavigateRouteRouteWithChildren
@@ -1279,6 +1287,13 @@ export interface RootRouteChildren {
 
 declare module '@tanstack/react-router' {
   interface FileRoutesByPath {
+    '/대한민국': {
+      id: '/대한민국'
+      path: '/대한민국'
+      fullPath: '/대한민국'
+      preLoaderRoute: typeof Char45824Char54620Char48124Char44397RouteImport
+      parentRoute: typeof rootRouteImport
+    }
     '/remountDeps': {
       id: '/remountDeps'
       path: '/remountDeps'
@@ -1543,14 +1558,14 @@ declare module '@tanstack/react-router' {
       path: '/🚀/$id'
       fullPath: '/대한민국/🚀/$id'
       preLoaderRoute: typeof Char45824Char54620Char48124Char44397Char55357Char56960IdRouteImport
-      parentRoute: typeof Char45824Char54620Char48124Char44397RouteRoute
+      parentRoute: typeof Char45824Char54620Char48124Char44397Route
     }
     '/대한민국/wildcard/$': {
       id: '/대한민국/wildcard/$'
       path: '/wildcard/$'
       fullPath: '/대한민국/wildcard/$'
       preLoaderRoute: typeof Char45824Char54620Char48124Char44397WildcardSplatRouteImport
-      parentRoute: typeof Char45824Char54620Char48124Char44397RouteRoute
+      parentRoute: typeof Char45824Char54620Char48124Char44397Route
     }
     '/relative/useNavigate/relative-useNavigate-b': {
       id: '/relative/useNavigate/relative-useNavigate-b'
@@ -2199,24 +2214,6 @@ const SearchParamsRouteRouteChildren: SearchParamsRouteRouteChildren = {
 const SearchParamsRouteRouteWithChildren =
   SearchParamsRouteRoute._addFileChildren(SearchParamsRouteRouteChildren)
 
-interface Char45824Char54620Char48124Char44397RouteRouteChildren {
-  Char45824Char54620Char48124Char44397WildcardSplatRoute: typeof Char45824Char54620Char48124Char44397WildcardSplatRoute
-  Char45824Char54620Char48124Char44397Char55357Char56960IdRoute: typeof Char45824Char54620Char48124Char44397Char55357Char56960IdRoute
-}
-
-const Char45824Char54620Char48124Char44397RouteRouteChildren: Char45824Char54620Char48124Char44397RouteRouteChildren =
-  {
-    Char45824Char54620Char48124Char44397WildcardSplatRoute:
-      Char45824Char54620Char48124Char44397WildcardSplatRoute,
-    Char45824Char54620Char48124Char44397Char55357Char56960IdRoute:
-      Char45824Char54620Char48124Char44397Char55357Char56960IdRoute,
-  }
-
-const Char45824Char54620Char48124Char44397RouteRouteWithChildren =
-  Char45824Char54620Char48124Char44397RouteRoute._addFileChildren(
-    Char45824Char54620Char48124Char44397RouteRouteChildren,
-  )
-
 interface LayoutLayout2RouteChildren {
   LayoutLayout2LayoutARoute: typeof LayoutLayout2LayoutARoute
   LayoutLayout2LayoutBRoute: typeof LayoutLayout2LayoutBRoute
@@ -2254,6 +2251,24 @@ const PostsRouteChildren: PostsRouteChildren = {
 
 const PostsRouteWithChildren = PostsRoute._addFileChildren(PostsRouteChildren)
 
+interface Char45824Char54620Char48124Char44397RouteChildren {
+  Char45824Char54620Char48124Char44397WildcardSplatRoute: typeof Char45824Char54620Char48124Char44397WildcardSplatRoute
+  Char45824Char54620Char48124Char44397Char55357Char56960IdRoute: typeof Char45824Char54620Char48124Char44397Char55357Char56960IdRoute
+}
+
+const Char45824Char54620Char48124Char44397RouteChildren: Char45824Char54620Char48124Char44397RouteChildren =
+  {
+    Char45824Char54620Char48124Char44397WildcardSplatRoute:
+      Char45824Char54620Char48124Char44397WildcardSplatRoute,
+    Char45824Char54620Char48124Char44397Char55357Char56960IdRoute:
+      Char45824Char54620Char48124Char44397Char55357Char56960IdRoute,
+  }
+
+const Char45824Char54620Char48124Char44397RouteWithChildren =
+  Char45824Char54620Char48124Char44397Route._addFileChildren(
+    Char45824Char54620Char48124Char44397RouteChildren,
+  )
+
 interface ParamsPsNonNestedFooRouteRouteChildren {
   ParamsPsNonNestedFooBarRoute: typeof ParamsPsNonNestedFooBarRoute
 }
@@ -2396,7 +2411,7 @@ const rootRouteChildren: RootRouteChildren = {
   NonNestedRouteRoute: NonNestedRouteRouteWithChildren,
   SearchParamsRouteRoute: SearchParamsRouteRouteWithChildren,
   Char45824Char54620Char48124Char44397RouteRoute:
-    Char45824Char54620Char48124Char44397RouteRouteWithChildren,
+    Char45824Char54620Char48124Char44397RouteRoute,
   LayoutRoute: LayoutRouteWithChildren,
   AnchorRoute: AnchorRoute,
   ComponentTypesTestRoute: ComponentTypesTestRoute,
@@ -2405,6 +2420,8 @@ const rootRouteChildren: RootRouteChildren = {
   NotRemountDepsRoute: NotRemountDepsRoute,
   PostsRoute: PostsRouteWithChildren,
   RemountDepsRoute: RemountDepsRoute,
+  Char45824Char54620Char48124Char44397Route:
+    Char45824Char54620Char48124Char44397RouteWithChildren,
   ParamsPsNonNestedRouteRoute: ParamsPsNonNestedRouteRouteWithChildren,
   RelativeLinkRouteRoute: RelativeLinkRouteRouteWithChildren,
   RelativeUseNavigateRouteRoute: RelativeUseNavigateRouteRouteWithChildren,
diff --git a/e2e/react-router/basic-file-based/src/routes/__root.tsx b/e2e/react-router/basic-file-based/src/routes/__root.tsx
index 26cd6a60f8..06734a3b95 100644
--- a/e2e/react-router/basic-file-based/src/routes/__root.tsx
+++ b/e2e/react-router/basic-file-based/src/routes/__root.tsx
@@ -130,14 +130,6 @@ function RootComponent() {
         >
           relative routing
         </Link>{' '}
-        <Link
-          to="/대한민국"
-          activeProps={{
-            className: 'font-bold',
-          }}
-        >
-          unicode path
-        </Link>{' '}
         <Link
           // @ts-expect-error
           to="/this-route-does-not-exist"
diff --git a/e2e/react-router/basic-file-based/src/routes/params-ps/index.tsx b/e2e/react-router/basic-file-based/src/routes/params-ps/index.tsx
index 02235bc3da..56735c4056 100644
--- a/e2e/react-router/basic-file-based/src/routes/params-ps/index.tsx
+++ b/e2e/react-router/basic-file-based/src/routes/params-ps/index.tsx
@@ -18,15 +18,6 @@ function RouteComponent() {
             /params-ps/named/$foo
           </Link>
         </li>
-        <li>
-          <Link
-            data-testid="l-to-named-foo-special-characters"
-            to="/params-ps/named/$foo"
-            params={{ foo: 'foo%\\/🚀대' }}
-          >
-            /params-ps/named/$foo - with special characters
-          </Link>
-        </li>
         <li>
           <Link
             data-testid="l-to-named-prefixfoo"
@@ -67,15 +58,6 @@ function RouteComponent() {
             /params-ps/wildcard/$ with escaped params
           </Link>
         </li>
-        <li>
-          <Link
-            data-testid="l-to-wildcard-encoded"
-            to="/params-ps/wildcard/$"
-            params={{ _splat: '%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD' }}
-          >
-            /params-ps/wildcard/$ with encoded params
-          </Link>
-        </li>
         <li>
           <Link
             data-testid="l-to-wildcard-prefixfoo"
diff --git a/e2e/react-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx b/e2e/react-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx
index 65427a6446..432facc3cc 100644
--- a/e2e/react-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx
+++ b/e2e/react-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx
@@ -36,14 +36,6 @@ function RouteComponent() {
       >
         Bar2
       </Link>
-      <Link
-        from={Route.fullPath}
-        to="./$bar"
-        params={{ bar: '🚀%2F/abc대' }}
-        data-testid="params-foo-links-bar-special-characters"
-      >
-        Bar with special characters
-      </Link>
       <Outlet />
     </div>
   )
diff --git a/e2e/react-router/basic-file-based/src/routes/search-params/index.tsx b/e2e/react-router/basic-file-based/src/routes/search-params/index.tsx
index d56d5ddac1..c0d4a55ac8 100644
--- a/e2e/react-router/basic-file-based/src/routes/search-params/index.tsx
+++ b/e2e/react-router/basic-file-based/src/routes/search-params/index.tsx
@@ -21,23 +21,6 @@ function RouteComponent() {
       >
         go to /search-params/default?default=d2
       </Link>
-      <br />
-      <Link
-        data-testid="link-to-default-with-search-special-characters"
-        to="/search-params/default"
-        search={{ default: '🚀대한민국' }}
-      >
-        go to /search-params/default?default=🚀대한민국
-      </Link>
-      <br />
-      <Link
-        data-testid="link-to-default-with-search-encoded-characters"
-        to="/search-params/default"
-        search={{ default: '%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD' }}
-      >
-        go to
-        /search-params/default?default=%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD
-      </Link>
     </div>
   )
 }
diff --git a/e2e/react-router/basic-file-based/src/routes/search-params/route.tsx b/e2e/react-router/basic-file-based/src/routes/search-params/route.tsx
index 3f659c812d..5adb281c41 100644
--- a/e2e/react-router/basic-file-based/src/routes/search-params/route.tsx
+++ b/e2e/react-router/basic-file-based/src/routes/search-params/route.tsx
@@ -2,7 +2,7 @@ import { createFileRoute } from '@tanstack/react-router'
 
 export const Route = createFileRoute('/search-params')({
   beforeLoad: async () => {
-    await new Promise((resolve) => setTimeout(resolve, 100))
+    await new Promise((resolve) => setTimeout(resolve, 1000))
     return { hello: 'world' as string }
   },
 })
diff --git "a/e2e/react-router/basic-file-based/src/routes/\353\214\200\355\225\234\353\257\274\352\265\255.tsx" "b/e2e/react-router/basic-file-based/src/routes/\353\214\200\355\225\234\353\257\274\352\265\255.tsx"
new file mode 100644
index 0000000000..c70cb5096a
--- /dev/null
+++ "b/e2e/react-router/basic-file-based/src/routes/\353\214\200\355\225\234\353\257\274\352\265\255.tsx"
@@ -0,0 +1,9 @@
+import { createFileRoute } from '@tanstack/react-router'
+
+export const Route = createFileRoute('/대한민국')({
+  component: RouteComponent,
+})
+
+function RouteComponent() {
+  return <div>Hello "/대한민국"!</div>
+}
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routeTree.gen.ts b/e2e/solid-router/basic-file-based-code-splitting/src/routeTree.gen.ts
index f52487e717..4cdb554eff 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routeTree.gen.ts
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routeTree.gen.ts
@@ -8,8 +8,6 @@
 // You should NOT make any changes in this file as it will be overwritten.
 // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
 
-import type { CreateFileRoute, FileRoutesByPath } from '@tanstack/solid-router'
-
 import { Route as rootRouteImport } from './routes/__root'
 import { Route as WithoutLoaderRouteImport } from './routes/without-loader'
 import { Route as ViewportTestRouteImport } from './routes/viewport-test'
@@ -220,97 +218,6 @@ declare module '@tanstack/solid-router' {
   }
 }
 
-declare module './routes/index' {
-  const createFileRoute: CreateFileRoute<
-    '/',
-    FileRoutesByPath['/']['parentRoute'],
-    FileRoutesByPath['/']['id'],
-    FileRoutesByPath['/']['path'],
-    FileRoutesByPath['/']['fullPath']
-  >
-}
-declare module './routes/_layout' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout',
-    FileRoutesByPath['/_layout']['parentRoute'],
-    FileRoutesByPath['/_layout']['id'],
-    FileRoutesByPath['/_layout']['path'],
-    FileRoutesByPath['/_layout']['fullPath']
-  >
-}
-declare module './routes/posts' {
-  const createFileRoute: CreateFileRoute<
-    '/posts',
-    FileRoutesByPath['/posts']['parentRoute'],
-    FileRoutesByPath['/posts']['id'],
-    FileRoutesByPath['/posts']['path'],
-    FileRoutesByPath['/posts']['fullPath']
-  >
-}
-declare module './routes/viewport-test' {
-  const createFileRoute: CreateFileRoute<
-    '/viewport-test',
-    FileRoutesByPath['/viewport-test']['parentRoute'],
-    FileRoutesByPath['/viewport-test']['id'],
-    FileRoutesByPath['/viewport-test']['path'],
-    FileRoutesByPath['/viewport-test']['fullPath']
-  >
-}
-declare module './routes/without-loader' {
-  const createFileRoute: CreateFileRoute<
-    '/without-loader',
-    FileRoutesByPath['/without-loader']['parentRoute'],
-    FileRoutesByPath['/without-loader']['id'],
-    FileRoutesByPath['/without-loader']['path'],
-    FileRoutesByPath['/without-loader']['fullPath']
-  >
-}
-declare module './routes/_layout/_layout-2' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout/_layout-2',
-    FileRoutesByPath['/_layout/_layout-2']['parentRoute'],
-    FileRoutesByPath['/_layout/_layout-2']['id'],
-    FileRoutesByPath['/_layout/_layout-2']['path'],
-    FileRoutesByPath['/_layout/_layout-2']['fullPath']
-  >
-}
-declare module './routes/posts.$postId' {
-  const createFileRoute: CreateFileRoute<
-    '/posts/$postId',
-    FileRoutesByPath['/posts/$postId']['parentRoute'],
-    FileRoutesByPath['/posts/$postId']['id'],
-    FileRoutesByPath['/posts/$postId']['path'],
-    FileRoutesByPath['/posts/$postId']['fullPath']
-  >
-}
-declare module './routes/posts.index' {
-  const createFileRoute: CreateFileRoute<
-    '/posts/',
-    FileRoutesByPath['/posts/']['parentRoute'],
-    FileRoutesByPath['/posts/']['id'],
-    FileRoutesByPath['/posts/']['path'],
-    FileRoutesByPath['/posts/']['fullPath']
-  >
-}
-declare module './routes/_layout/_layout-2/layout-a' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout/_layout-2/layout-a',
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['parentRoute'],
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['id'],
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['path'],
-    FileRoutesByPath['/_layout/_layout-2/layout-a']['fullPath']
-  >
-}
-declare module './routes/_layout/_layout-2/layout-b' {
-  const createFileRoute: CreateFileRoute<
-    '/_layout/_layout-2/layout-b',
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['parentRoute'],
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['id'],
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['path'],
-    FileRoutesByPath['/_layout/_layout-2/layout-b']['fullPath']
-  >
-}
-
 interface LayoutLayout2RouteChildren {
   LayoutLayout2LayoutARoute: typeof LayoutLayout2LayoutARoute
   LayoutLayout2LayoutBRoute: typeof LayoutLayout2LayoutBRoute
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout.tsx
index c549175638..d43b4ef5f5 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout.tsx
@@ -1,6 +1,6 @@
-import { Outlet } from '@tanstack/solid-router'
+import { Outlet, createFileRoute } from '@tanstack/solid-router'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/_layout')({
   component: LayoutComponent,
 })
 
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx
index efeca5ce86..7a5a3623a0 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2.tsx
@@ -1,6 +1,6 @@
-import { Link, Outlet } from '@tanstack/solid-router'
+import { Link, Outlet, createFileRoute } from '@tanstack/solid-router'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/_layout/_layout-2')({
   component: LayoutComponent,
 })
 
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx
index a190b24202..997e6caf80 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-a.tsx
@@ -1,4 +1,5 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/solid-router'
+export const Route = createFileRoute('/_layout/_layout-2/layout-a')({
   component: LayoutAComponent,
 })
 
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx
index 505f8f6fbf..70135c5809 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/_layout/_layout-2/layout-b.tsx
@@ -1,4 +1,5 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/solid-router'
+export const Route = createFileRoute('/_layout/_layout-2/layout-b')({
   component: LayoutBComponent,
 })
 
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/index.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/index.tsx
index 510db79b73..3f905db60c 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/index.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/index.tsx
@@ -1,4 +1,5 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/solid-router'
+export const Route = createFileRoute('/')({
   component: Home,
 })
 
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx
index e23c29a21a..105f08d64e 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.$postId.tsx
@@ -1,4 +1,4 @@
-import { ErrorComponent } from '@tanstack/solid-router'
+import { ErrorComponent, createFileRoute } from '@tanstack/solid-router'
 import { fetchPost } from '../posts'
 import type { ErrorComponentProps } from '@tanstack/solid-router'
 
@@ -6,7 +6,7 @@ export function PostErrorComponent({ error }: ErrorComponentProps) {
   return <ErrorComponent error={error} />
 }
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/posts/$postId')({
   loader: async ({ params: { postId } }) => fetchPost(postId),
   errorComponent: PostErrorComponent as any,
   notFoundComponent: () => {
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.index.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.index.tsx
index 13529228bb..812b581e0a 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.index.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.index.tsx
@@ -1,4 +1,5 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/solid-router'
+export const Route = createFileRoute('/posts/')({
   component: PostsIndexComponent,
 })
 
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.tsx
index 2e28f9beb3..11a999f50a 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/posts.tsx
@@ -1,7 +1,7 @@
-import { Link, Outlet } from '@tanstack/solid-router'
+import { Link, Outlet, createFileRoute } from '@tanstack/solid-router'
 import { fetchPosts } from '../posts'
 
-export const Route = createFileRoute({
+export const Route = createFileRoute('/posts')({
   loader: fetchPosts,
   component: PostsComponent,
 })
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx
index b182feb7b1..c199bc56e0 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/viewport-test.tsx
@@ -1,3 +1,4 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/solid-router'
+export const Route = createFileRoute('/viewport-test')({
   component: () => <div>Hello /viewport-test!</div>,
 })
diff --git a/e2e/solid-router/basic-file-based-code-splitting/src/routes/without-loader.tsx b/e2e/solid-router/basic-file-based-code-splitting/src/routes/without-loader.tsx
index af692bdaca..a7bf51fafb 100644
--- a/e2e/solid-router/basic-file-based-code-splitting/src/routes/without-loader.tsx
+++ b/e2e/solid-router/basic-file-based-code-splitting/src/routes/without-loader.tsx
@@ -1,3 +1,4 @@
-export const Route = createFileRoute({
+import { createFileRoute } from '@tanstack/solid-router'
+export const Route = createFileRoute('/without-loader')({
   component: () => <div>Hello /without-loader!</div>,
 })
diff --git a/e2e/solid-router/basic-file-based/src/routeTree.gen.ts b/e2e/solid-router/basic-file-based/src/routeTree.gen.ts
index 97e236578c..98ea7a138c 100644
--- a/e2e/solid-router/basic-file-based/src/routeTree.gen.ts
+++ b/e2e/solid-router/basic-file-based/src/routeTree.gen.ts
@@ -9,6 +9,7 @@
 // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
 
 import { Route as rootRouteImport } from './routes/__root'
+import { Route as Char45824Char54620Char48124Char44397RouteImport } from './routes/대한민국'
 import { Route as RemountDepsRouteImport } from './routes/remountDeps'
 import { Route as PostsRouteImport } from './routes/posts'
 import { Route as NotRemountDepsRouteImport } from './routes/notRemountDeps'
@@ -110,6 +111,12 @@ import { Route as NonNestedDeepBazBarFooRouteRouteImport } from './routes/non-ne
 import { Route as NonNestedDeepBazBarFooIndexRouteImport } from './routes/non-nested/deep/$baz_.bar.$foo.index'
 import { Route as NonNestedDeepBazBarFooQuxRouteImport } from './routes/non-nested/deep/$baz_.bar.$foo_.qux'
 
+const Char45824Char54620Char48124Char44397Route =
+  Char45824Char54620Char48124Char44397RouteImport.update({
+    id: '/대한민국',
+    path: '/대한민국',
+    getParentRoute: () => rootRouteImport,
+  } as any)
 const RemountDepsRoute = RemountDepsRouteImport.update({
   id: '/remountDeps',
   path: '/remountDeps',
@@ -301,13 +308,13 @@ const Char45824Char54620Char48124Char44397Char55357Char56960IdRoute =
   Char45824Char54620Char48124Char44397Char55357Char56960IdRouteImport.update({
     id: '/🚀/$id',
     path: '/🚀/$id',
-    getParentRoute: () => Char45824Char54620Char48124Char44397RouteRoute,
+    getParentRoute: () => Char45824Char54620Char48124Char44397Route,
   } as any)
 const Char45824Char54620Char48124Char44397WildcardSplatRoute =
   Char45824Char54620Char48124Char44397WildcardSplatRouteImport.update({
     id: '/wildcard/$',
     path: '/wildcard/$',
-    getParentRoute: () => Char45824Char54620Char48124Char44397RouteRoute,
+    getParentRoute: () => Char45824Char54620Char48124Char44397Route,
   } as any)
 const RelativeUseNavigateRelativeUseNavigateBRoute =
   RelativeUseNavigateRelativeUseNavigateBRouteImport.update({
@@ -653,7 +660,7 @@ export interface FileRoutesByFullPath {
   '/': typeof IndexRoute
   '/non-nested': typeof NonNestedRouteRouteWithChildren
   '/search-params': typeof SearchParamsRouteRouteWithChildren
-  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteWithChildren
   '/anchor': typeof AnchorRoute
   '/component-types-test': typeof ComponentTypesTestRoute
   '/editing-a': typeof EditingARoute
@@ -751,7 +758,7 @@ export interface FileRoutesByFullPath {
 export interface FileRoutesByTo {
   '/': typeof IndexRoute
   '/non-nested': typeof NonNestedRouteRouteWithChildren
-  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteWithChildren
   '/anchor': typeof AnchorRoute
   '/component-types-test': typeof ComponentTypesTestRoute
   '/editing-a': typeof EditingARoute
@@ -842,7 +849,7 @@ export interface FileRoutesById {
   '/': typeof IndexRoute
   '/non-nested': typeof NonNestedRouteRouteWithChildren
   '/search-params': typeof SearchParamsRouteRouteWithChildren
-  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  '/대한민국': typeof Char45824Char54620Char48124Char44397RouteWithChildren
   '/_layout': typeof LayoutRouteWithChildren
   '/anchor': typeof AnchorRoute
   '/component-types-test': typeof ComponentTypesTestRoute
@@ -1237,7 +1244,7 @@ export interface RootRouteChildren {
   IndexRoute: typeof IndexRoute
   NonNestedRouteRoute: typeof NonNestedRouteRouteWithChildren
   SearchParamsRouteRoute: typeof SearchParamsRouteRouteWithChildren
-  Char45824Char54620Char48124Char44397RouteRoute: typeof Char45824Char54620Char48124Char44397RouteRouteWithChildren
+  Char45824Char54620Char48124Char44397RouteRoute: typeof Char45824Char54620Char48124Char44397RouteRoute
   LayoutRoute: typeof LayoutRouteWithChildren
   AnchorRoute: typeof AnchorRoute
   ComponentTypesTestRoute: typeof ComponentTypesTestRoute
@@ -1246,6 +1253,7 @@ export interface RootRouteChildren {
   NotRemountDepsRoute: typeof NotRemountDepsRoute
   PostsRoute: typeof PostsRouteWithChildren
   RemountDepsRoute: typeof RemountDepsRoute
+  Char45824Char54620Char48124Char44397Route: typeof Char45824Char54620Char48124Char44397RouteWithChildren
   ParamsPsNonNestedRouteRoute: typeof ParamsPsNonNestedRouteRouteWithChildren
   RelativeLinkRouteRoute: typeof RelativeLinkRouteRouteWithChildren
   RelativeUseNavigateRouteRoute: typeof RelativeUseNavigateRouteRouteWithChildren
@@ -1278,6 +1286,13 @@ export interface RootRouteChildren {
 
 declare module '@tanstack/solid-router' {
   interface FileRoutesByPath {
+    '/대한민국': {
+      id: '/대한민국'
+      path: '/대한민국'
+      fullPath: '/대한민국'
+      preLoaderRoute: typeof Char45824Char54620Char48124Char44397RouteImport
+      parentRoute: typeof rootRouteImport
+    }
     '/remountDeps': {
       id: '/remountDeps'
       path: '/remountDeps'
@@ -1542,14 +1557,14 @@ declare module '@tanstack/solid-router' {
       path: '/🚀/$id'
       fullPath: '/대한민국/🚀/$id'
       preLoaderRoute: typeof Char45824Char54620Char48124Char44397Char55357Char56960IdRouteImport
-      parentRoute: typeof Char45824Char54620Char48124Char44397RouteRoute
+      parentRoute: typeof Char45824Char54620Char48124Char44397Route
     }
     '/대한민국/wildcard/$': {
       id: '/대한민국/wildcard/$'
       path: '/wildcard/$'
       fullPath: '/대한민국/wildcard/$'
       preLoaderRoute: typeof Char45824Char54620Char48124Char44397WildcardSplatRouteImport
-      parentRoute: typeof Char45824Char54620Char48124Char44397RouteRoute
+      parentRoute: typeof Char45824Char54620Char48124Char44397Route
     }
     '/relative/useNavigate/relative-useNavigate-b': {
       id: '/relative/useNavigate/relative-useNavigate-b'
@@ -2198,24 +2213,6 @@ const SearchParamsRouteRouteChildren: SearchParamsRouteRouteChildren = {
 const SearchParamsRouteRouteWithChildren =
   SearchParamsRouteRoute._addFileChildren(SearchParamsRouteRouteChildren)
 
-interface Char45824Char54620Char48124Char44397RouteRouteChildren {
-  Char45824Char54620Char48124Char44397WildcardSplatRoute: typeof Char45824Char54620Char48124Char44397WildcardSplatRoute
-  Char45824Char54620Char48124Char44397Char55357Char56960IdRoute: typeof Char45824Char54620Char48124Char44397Char55357Char56960IdRoute
-}
-
-const Char45824Char54620Char48124Char44397RouteRouteChildren: Char45824Char54620Char48124Char44397RouteRouteChildren =
-  {
-    Char45824Char54620Char48124Char44397WildcardSplatRoute:
-      Char45824Char54620Char48124Char44397WildcardSplatRoute,
-    Char45824Char54620Char48124Char44397Char55357Char56960IdRoute:
-      Char45824Char54620Char48124Char44397Char55357Char56960IdRoute,
-  }
-
-const Char45824Char54620Char48124Char44397RouteRouteWithChildren =
-  Char45824Char54620Char48124Char44397RouteRoute._addFileChildren(
-    Char45824Char54620Char48124Char44397RouteRouteChildren,
-  )
-
 interface LayoutLayout2RouteChildren {
   LayoutLayout2LayoutARoute: typeof LayoutLayout2LayoutARoute
   LayoutLayout2LayoutBRoute: typeof LayoutLayout2LayoutBRoute
@@ -2253,6 +2250,24 @@ const PostsRouteChildren: PostsRouteChildren = {
 
 const PostsRouteWithChildren = PostsRoute._addFileChildren(PostsRouteChildren)
 
+interface Char45824Char54620Char48124Char44397RouteChildren {
+  Char45824Char54620Char48124Char44397WildcardSplatRoute: typeof Char45824Char54620Char48124Char44397WildcardSplatRoute
+  Char45824Char54620Char48124Char44397Char55357Char56960IdRoute: typeof Char45824Char54620Char48124Char44397Char55357Char56960IdRoute
+}
+
+const Char45824Char54620Char48124Char44397RouteChildren: Char45824Char54620Char48124Char44397RouteChildren =
+  {
+    Char45824Char54620Char48124Char44397WildcardSplatRoute:
+      Char45824Char54620Char48124Char44397WildcardSplatRoute,
+    Char45824Char54620Char48124Char44397Char55357Char56960IdRoute:
+      Char45824Char54620Char48124Char44397Char55357Char56960IdRoute,
+  }
+
+const Char45824Char54620Char48124Char44397RouteWithChildren =
+  Char45824Char54620Char48124Char44397Route._addFileChildren(
+    Char45824Char54620Char48124Char44397RouteChildren,
+  )
+
 interface ParamsPsNonNestedFooRouteRouteChildren {
   ParamsPsNonNestedFooBarRoute: typeof ParamsPsNonNestedFooBarRoute
 }
@@ -2395,7 +2410,7 @@ const rootRouteChildren: RootRouteChildren = {
   NonNestedRouteRoute: NonNestedRouteRouteWithChildren,
   SearchParamsRouteRoute: SearchParamsRouteRouteWithChildren,
   Char45824Char54620Char48124Char44397RouteRoute:
-    Char45824Char54620Char48124Char44397RouteRouteWithChildren,
+    Char45824Char54620Char48124Char44397RouteRoute,
   LayoutRoute: LayoutRouteWithChildren,
   AnchorRoute: AnchorRoute,
   ComponentTypesTestRoute: ComponentTypesTestRoute,
@@ -2404,6 +2419,8 @@ const rootRouteChildren: RootRouteChildren = {
   NotRemountDepsRoute: NotRemountDepsRoute,
   PostsRoute: PostsRouteWithChildren,
   RemountDepsRoute: RemountDepsRoute,
+  Char45824Char54620Char48124Char44397Route:
+    Char45824Char54620Char48124Char44397RouteWithChildren,
   ParamsPsNonNestedRouteRoute: ParamsPsNonNestedRouteRouteWithChildren,
   RelativeLinkRouteRoute: RelativeLinkRouteRouteWithChildren,
   RelativeUseNavigateRouteRoute: RelativeUseNavigateRouteRouteWithChildren,
diff --git a/e2e/solid-router/basic-file-based/src/routes/__root.tsx b/e2e/solid-router/basic-file-based/src/routes/__root.tsx
index 883fbd3406..0997c45b37 100644
--- a/e2e/solid-router/basic-file-based/src/routes/__root.tsx
+++ b/e2e/solid-router/basic-file-based/src/routes/__root.tsx
@@ -130,14 +130,6 @@ function RootComponent() {
         >
           relative routing
         </Link>{' '}
-        <Link
-          to="/대한민국"
-          activeProps={{
-            class: 'font-bold',
-          }}
-        >
-          unicode path
-        </Link>{' '}
         <Link
           // @ts-expect-error
           to="/this-route-does-not-exist"
diff --git a/e2e/solid-router/basic-file-based/src/routes/params-ps/index.tsx b/e2e/solid-router/basic-file-based/src/routes/params-ps/index.tsx
index 0a9de2169e..5a8f5bd12f 100644
--- a/e2e/solid-router/basic-file-based/src/routes/params-ps/index.tsx
+++ b/e2e/solid-router/basic-file-based/src/routes/params-ps/index.tsx
@@ -18,15 +18,6 @@ function RouteComponent() {
             /params-ps/named/$foo
           </Link>
         </li>
-        <li>
-          <Link
-            data-testid="l-to-named-foo-special-characters"
-            to="/params-ps/named/$foo"
-            params={{ foo: 'foo%\\/🚀대' }}
-          >
-            /params-ps/named/$foo - with special characters
-          </Link>
-        </li>
         <li>
           <Link
             data-testid="l-to-named-prefixfoo"
@@ -67,15 +58,6 @@ function RouteComponent() {
             /params-ps/wildcard/$ with escaped params
           </Link>
         </li>
-        <li>
-          <Link
-            data-testid="l-to-wildcard-encoded"
-            to="/params-ps/wildcard/$"
-            params={{ _splat: '%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD' }}
-          >
-            /params-ps/wildcard/$ with encoded params
-          </Link>
-        </li>
         <li>
           <Link
             data-testid="l-to-wildcard-prefixfoo"
diff --git a/e2e/solid-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx b/e2e/solid-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx
index ee4ff7ae8d..58a78e3822 100644
--- a/e2e/solid-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx
+++ b/e2e/solid-router/basic-file-based/src/routes/params-ps/named/$foo/route.tsx
@@ -41,14 +41,6 @@ function RouteComponent() {
       >
         Bar2
       </Link>
-      <Link
-        from={Route.fullPath}
-        to="./$bar"
-        params={{ bar: '🚀%2F/abc대' }}
-        data-testid="params-foo-links-bar-special-characters"
-      >
-        Bar with special characters
-      </Link>
       <Outlet />
     </div>
   )
diff --git a/e2e/solid-router/basic-file-based/src/routes/search-params/index.tsx b/e2e/solid-router/basic-file-based/src/routes/search-params/index.tsx
index baeb5ea6ff..a99d64cbf4 100644
--- a/e2e/solid-router/basic-file-based/src/routes/search-params/index.tsx
+++ b/e2e/solid-router/basic-file-based/src/routes/search-params/index.tsx
@@ -21,23 +21,6 @@ function RouteComponent() {
       >
         go to /search-params/default?default=d2
       </Link>
-      <br />
-      <Link
-        data-testid="link-to-default-with-search-special-characters"
-        to="/search-params/default"
-        search={{ default: '🚀대한민국' }}
-      >
-        go to /search-params/default?default=🚀대한민국
-      </Link>
-      <br />
-      <Link
-        data-testid="link-to-default-with-search-encoded-characters"
-        to="/search-params/default"
-        search={{ default: '%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD' }}
-      >
-        go to
-        /search-params/default?default=%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD
-      </Link>
     </div>
   )
 }
diff --git a/e2e/solid-router/basic-file-based/src/routes/search-params/route.tsx b/e2e/solid-router/basic-file-based/src/routes/search-params/route.tsx
index 6efa7152b6..5d9fc67515 100644
--- a/e2e/solid-router/basic-file-based/src/routes/search-params/route.tsx
+++ b/e2e/solid-router/basic-file-based/src/routes/search-params/route.tsx
@@ -2,7 +2,7 @@ import { createFileRoute } from '@tanstack/solid-router'
 
 export const Route = createFileRoute('/search-params')({
   beforeLoad: async () => {
-    await new Promise((resolve) => setTimeout(resolve, 100))
+    await new Promise((resolve) => setTimeout(resolve, 1000))
     return { hello: 'world' as string }
   },
 })
diff --git "a/e2e/solid-router/basic-file-based/src/routes/\353\214\200\355\225\234\353\257\274\352\265\255.tsx" "b/e2e/solid-router/basic-file-based/src/routes/\353\214\200\355\225\234\353\257\274\352\265\255.tsx"
new file mode 100644
index 0000000000..897c0576cc
--- /dev/null
+++ "b/e2e/solid-router/basic-file-based/src/routes/\353\214\200\355\225\234\353\257\274\352\265\255.tsx"
@@ -0,0 +1,9 @@
+import { createFileRoute } from '@tanstack/solid-router'
+
+export const Route = createFileRoute('/대한민국')({
+  component: RouteComponent,
+})
+
+function RouteComponent() {
+  return <div>Hello "/대한민국"!</div>
+}
diff --git a/examples/react/start-clerk-basic/src/routeTree.gen.ts b/examples/react/start-clerk-basic/src/routeTree.gen.ts
index 411606473c..baaabbc2c0 100644
--- a/examples/react/start-clerk-basic/src/routeTree.gen.ts
+++ b/examples/react/start-clerk-basic/src/routeTree.gen.ts
@@ -171,9 +171,11 @@ export const routeTree = rootRouteImport
   ._addFileTypes<FileRouteTypes>()
 
 import type { getRouter } from './router.tsx'
-import type { createStart } from '@tanstack/react-start'
+import type { startInstance } from './start.ts'
 declare module '@tanstack/react-start' {
   interface Register {
+    ssr: true
     router: Awaited<ReturnType<typeof getRouter>>
+    config: Awaited<ReturnType<typeof startInstance.getOptions>>
   }
 }
