瀏覽代碼

feat: WIP vite tres plugin and nuxt client

alvarosabu 1 年之前
父節點
當前提交
ba3bbbc0f6
共有 65 個文件被更改,包括 4132 次插入241 次删除
  1. 3 1
      package.json
  2. 5 4
      playground/package.json
  3. 2 0
      playground/vite.config.ts
  4. 23 0
      plugins/vite-plugin-tres/build.config.ts
  5. 45 0
      plugins/vite-plugin-tres/client/.nuxt/app.config.mjs
  6. 408 0
      plugins/vite-plugin-tres/client/.nuxt/components.d.ts
  7. 25 0
      plugins/vite-plugin-tres/client/.nuxt/dev/index.mjs
  8. 0 0
      plugins/vite-plugin-tres/client/.nuxt/dev/index.mjs.map
  9. 1 0
      plugins/vite-plugin-tres/client/.nuxt/icon-collections.mjs
  10. 24 0
      plugins/vite-plugin-tres/client/.nuxt/imports.d.ts
  11. 1 0
      plugins/vite-plugin-tres/client/.nuxt/manifest/latest.json
  12. 1 0
      plugins/vite-plugin-tres/client/.nuxt/manifest/meta/dev.json
  13. 17 0
      plugins/vite-plugin-tres/client/.nuxt/nitro.json
  14. 28 0
      plugins/vite-plugin-tres/client/.nuxt/nuxt.d.ts
  15. 9 0
      plugins/vite-plugin-tres/client/.nuxt/nuxt.json
  16. 89 0
      plugins/vite-plugin-tres/client/.nuxt/schema/nuxt.schema.d.ts
  17. 120 0
      plugins/vite-plugin-tres/client/.nuxt/schema/nuxt.schema.json
  18. 1 0
      plugins/vite-plugin-tres/client/.nuxt/tailwind.config.d.ts
  19. 14 0
      plugins/vite-plugin-tres/client/.nuxt/tailwind.config/index.mjs
  20. 144 0
      plugins/vite-plugin-tres/client/.nuxt/tsconfig.json
  21. 105 0
      plugins/vite-plugin-tres/client/.nuxt/tsconfig.server.json
  22. 58 0
      plugins/vite-plugin-tres/client/.nuxt/types/app.config.d.ts
  23. 1181 0
      plugins/vite-plugin-tres/client/.nuxt/types/imports.d.ts
  24. 7 0
      plugins/vite-plugin-tres/client/.nuxt/types/layouts.d.ts
  25. 7 0
      plugins/vite-plugin-tres/client/.nuxt/types/middleware.d.ts
  26. 14 0
      plugins/vite-plugin-tres/client/.nuxt/types/nitro-config.d.ts
  27. 124 0
      plugins/vite-plugin-tres/client/.nuxt/types/nitro-imports.d.ts
  28. 26 0
      plugins/vite-plugin-tres/client/.nuxt/types/nitro-nuxt.d.ts
  29. 11 0
      plugins/vite-plugin-tres/client/.nuxt/types/nitro-routes.d.ts
  30. 3 0
      plugins/vite-plugin-tres/client/.nuxt/types/nitro.d.ts
  31. 33 0
      plugins/vite-plugin-tres/client/.nuxt/types/plugins.d.ts
  32. 32 0
      plugins/vite-plugin-tres/client/.nuxt/types/schema.d.ts
  33. 5 0
      plugins/vite-plugin-tres/client/.nuxt/types/vue-shim.d.ts
  34. 1 0
      plugins/vite-plugin-tres/client/.nuxt/ui.colors.d.ts
  35. 1 0
      plugins/vite-plugin-tres/client/.nuxt/ui.colors.mjs
  36. 1 0
      plugins/vite-plugin-tres/client/.nuxt/vue-router-stub.d.ts
  37. 1 0
      plugins/vite-plugin-tres/client/.nuxtrc
  38. 14 0
      plugins/vite-plugin-tres/client/.output/nitro.json
  39. 6 0
      plugins/vite-plugin-tres/client/app.vue
  40. 81 0
      plugins/vite-plugin-tres/client/components/Graph.vue
  41. 28 0
      plugins/vite-plugin-tres/client/components/ModuleAuthorNote.vue
  42. 31 0
      plugins/vite-plugin-tres/client/components/Pane.vue
  43. 100 0
      plugins/vite-plugin-tres/client/components/PerformanceMonitor.vue
  44. 311 0
      plugins/vite-plugin-tres/client/components/SceneGraphItem.vue
  45. 23 0
      plugins/vite-plugin-tres/client/components/programs-module/index.vue
  46. 58 0
      plugins/vite-plugin-tres/client/components/programs-module/item.vue
  47. 200 0
      plugins/vite-plugin-tres/client/composables/useDevtoolsHook.ts
  48. 6 0
      plugins/vite-plugin-tres/client/global.d.ts
  49. 26 0
      plugins/vite-plugin-tres/client/nuxt.config.ts
  50. 5 0
      plugins/vite-plugin-tres/client/package.json
  51. 98 0
      plugins/vite-plugin-tres/client/pages/index.vue
  52. 5 0
      plugins/vite-plugin-tres/client/pnpm-lock.yaml
  53. 5 0
      plugins/vite-plugin-tres/client/public/logo-dark.svg
  54. 5 0
      plugins/vite-plugin-tres/client/public/logo.svg
  55. 65 0
      plugins/vite-plugin-tres/client/types/index.ts
  56. 1 0
      plugins/vite-plugin-tres/client/utils/index.ts
  57. 34 0
      plugins/vite-plugin-tres/client/utils/perf.ts
  58. 63 0
      plugins/vite-plugin-tres/package.json
  59. 5 0
      plugins/vite-plugin-tres/public/logo-dark.svg
  60. 5 0
      plugins/vite-plugin-tres/public/logo.svg
  61. 48 0
      plugins/vite-plugin-tres/src/index.ts
  62. 33 0
      plugins/vite-plugin-tres/vite.config.ts
  63. 282 229
      pnpm-lock.yaml
  64. 2 0
      pnpm-workspace.yaml
  65. 22 7
      src/devtools/plugin.ts

+ 3 - 1
package.json

@@ -58,7 +58,8 @@
     "docs:build": "vitepress build docs",
     "docs:serve": "vitepress serve docs",
     "docs:preview": "vitepress preview docs",
-    "docs:contributors": "esno scripts/update-contributors.ts"
+    "docs:contributors": "esno scripts/update-contributors.ts",
+    "plugin:build": "cd plugins/vite-plugin-tres && npm run build"
   },
   "peerDependencies": {
     "three": ">=0.133",
@@ -79,6 +80,7 @@
     "@vitejs/plugin-vue": "^5.0.2",
     "@vitest/coverage-c8": "^0.33.0",
     "@vitest/ui": "^1.1.1",
+    "@vue/devtools-api": "^7.0.3",
     "@vue/test-utils": "^2.4.3",
     "eslint": "^8.56.0",
     "eslint-plugin-vue": "^9.19.2",

+ 5 - 4
playground/package.json

@@ -9,17 +9,18 @@
     "preview": "vite preview"
   },
   "dependencies": {
-    "@tresjs/cientos": "3.6.0",
+    "@tresjs/cientos": "3.7.0",
     "@tresjs/core": "workspace:^",
     "vue-router": "^4.2.5"
   },
   "devDependencies": {
+    "@tresjs/devtools": "workspace:^",
     "@tresjs/leches": "0.15.0-next.3",
     "@tweakpane/plugin-essentials": "^0.2.0",
-    "unplugin-auto-import": "^0.17.2",
+    "unplugin-auto-import": "^0.17.3",
     "vite-plugin-glsl": "^1.2.1",
     "vite-plugin-qrcode": "^0.2.3",
-    "vite-plugin-vue-devtools": "1.0.0-rc.6",
-    "vue-tsc": "^1.8.25"
+    "vite-plugin-vue-devtools": "7.0.3",
+    "vue-tsc": "^1.8.27"
   }
 }

+ 2 - 0
playground/vite.config.ts

@@ -8,12 +8,14 @@ import UnoCSS from 'unocss/vite'
 import { templateCompilerOptions } from '@tresjs/core'
 import { qrcode } from 'vite-plugin-qrcode'
 import VueDevTools from 'vite-plugin-vue-devtools'
+import Tres from '@tresjs/devtools'
 
 // https://vitejs.dev/config/
 export default defineConfig({
   plugins: [
     glsl(),
     VueDevTools(),
+    Tres({}),
     vue({
       script: {
         propsDestructure: true,

+ 23 - 0
plugins/vite-plugin-tres/build.config.ts

@@ -0,0 +1,23 @@
+import { defineBuildConfig } from 'unbuild'
+
+import pkg from './package.json' assert { type: 'json' }
+
+const externals = [
+  ...Object.keys(pkg.dependencies),
+  ...Object.keys(pkg.peerDependencies || {}),
+  'vite',
+]
+
+export default defineBuildConfig({
+  entries: [{ input: 'src/index' }],
+  clean: true,
+  declaration: true,
+  externals,
+  rollup: {
+    alias: {
+      entries: [{ find: /^node:(.+)$/, replacement: '$1' }],
+    },
+    emitCJS: true,
+    inlineDependencies: true,
+  },
+})

+ 45 - 0
plugins/vite-plugin-tres/client/.nuxt/app.config.mjs

@@ -0,0 +1,45 @@
+
+import { updateAppConfig } from '#app/config'
+import { defuFn } from 'defu'
+
+const inlineConfig = {
+  "nuxt": {
+    "buildId": "dev"
+  },
+  "ui": {
+    "primary": "green",
+    "gray": "cool",
+    "colors": [
+      "red",
+      "orange",
+      "amber",
+      "yellow",
+      "lime",
+      "green",
+      "emerald",
+      "teal",
+      "cyan",
+      "sky",
+      "blue",
+      "indigo",
+      "violet",
+      "purple",
+      "fuchsia",
+      "pink",
+      "rose",
+      "primary"
+    ],
+    "strategy": "merge"
+  }
+}
+
+// Vite - webpack is handled directly in #app/config
+if (import.meta.hot) {
+  import.meta.hot.accept((newModule) => {
+    updateAppConfig(newModule.default)
+  })
+}
+
+
+
+export default /*@__PURE__*/ defuFn(inlineConfig)

+ 408 - 0
plugins/vite-plugin-tres/client/.nuxt/components.d.ts

@@ -0,0 +1,408 @@
+// Generated by components discovery
+declare module 'vue' {
+  export interface GlobalComponents {
+    'Graph': typeof import("../components/Graph.vue")['default']
+    'ModuleAuthorNote': typeof import("../components/ModuleAuthorNote.vue")['default']
+    'Pane': typeof import("../components/Pane.vue")['default']
+    'PerformanceMonitor': typeof import("../components/PerformanceMonitor.vue")['default']
+    'SceneGraphItem': typeof import("../components/SceneGraphItem.vue")['default']
+    'ProgramsModule': typeof import("../components/programs-module/index.vue")['default']
+    'ProgramsModuleItem': typeof import("../components/programs-module/item.vue")['default']
+    'NBadge': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NBadge.vue")['default']
+    'NButton': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NButton.vue")['default']
+    'NCard': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCard.vue")['default']
+    'NCheckbox': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCheckbox.vue")['default']
+    'NCodeBlock': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCodeBlock.vue")['default']
+    'NDarkToggle': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDarkToggle.vue")['default']
+    'NDialog': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDialog.vue")['default']
+    'NDrawer': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDrawer.vue")['default']
+    'NDropdown': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDropdown.vue")['default']
+    'NIcon': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIcon.vue")['default']
+    'NIconTitle': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIconTitle.vue")['default']
+    'NLink': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLink.vue")['default']
+    'NLoading': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLoading.vue")['default']
+    'NMarkdown': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NMarkdown.vue")['default']
+    'NNavbar': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNavbar.vue")['default']
+    'NNotification': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNotification.vue")['default']
+    'NPanelGrids': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NPanelGrids.vue")['default']
+    'NRadio': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NRadio.vue")['default']
+    'NSectionBlock': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSectionBlock.vue")['default']
+    'NSelect': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelect.vue")['default']
+    'NSelectTabs': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelectTabs.vue")['default']
+    'NSplitPane': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSplitPane.vue")['default']
+    'NSwitch': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSwitch.vue")['default']
+    'NTextInput': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTextInput.vue")['default']
+    'NTip': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTip.vue")['default']
+    'UnoIcon': typeof import("../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/runtime/UnoIcon.vue")['default']
+    'UAccordion': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Accordion.vue")['default']
+    'UAlert': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Alert.vue")['default']
+    'UAvatar': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Avatar.vue")['default']
+    'UAvatarGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/AvatarGroup")['default']
+    'UBadge': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Badge.vue")['default']
+    'UButton': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Button.vue")['default']
+    'UButtonGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/ButtonGroup")['default']
+    'UChip': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Chip.vue")['default']
+    'UDropdown': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Dropdown.vue")['default']
+    'UIcon': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Icon.vue")['default']
+    'UKbd': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Kbd.vue")['default']
+    'ULink': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Link.vue")['default']
+    'UMeter': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Meter.vue")['default']
+    'UMeterGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/MeterGroup")['default']
+    'UProgress': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Progress.vue")['default']
+    'UCheckbox': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Checkbox.vue")['default']
+    'UForm': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Form.vue")['default']
+    'UFormGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/FormGroup.vue")['default']
+    'UInput': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Input.vue")['default']
+    'URadio': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Radio.vue")['default']
+    'URadioGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/RadioGroup.vue")['default']
+    'URange': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Range.vue")['default']
+    'USelect': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Select.vue")['default']
+    'USelectMenu': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/SelectMenu.vue")['default']
+    'UTextarea': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Textarea.vue")['default']
+    'UToggle': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Toggle.vue")['default']
+    'UTable': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/data/Table.vue")['default']
+    'UCard': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Card.vue")['default']
+    'UContainer': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Container.vue")['default']
+    'UDivider': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Divider.vue")['default']
+    'USkeleton': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Skeleton.vue")['default']
+    'UBreadcrumb': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Breadcrumb.vue")['default']
+    'UCommandPalette': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPalette.vue")['default']
+    'UCommandPaletteGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPaletteGroup.vue")['default']
+    'UPagination': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Pagination.vue")['default']
+    'UTabs': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Tabs.vue")['default']
+    'UVerticalNavigation': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/VerticalNavigation.vue")['default']
+    'UContextMenu': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/ContextMenu.vue")['default']
+    'UModal': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Modal.vue")['default']
+    'UNotification': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notification.vue")['default']
+    'UNotifications': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notifications.vue")['default']
+    'UPopover': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Popover.vue")['default']
+    'USlideover': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Slideover.vue")['default']
+    'UTooltip': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Tooltip.vue")['default']
+    'NuxtWelcome': typeof import("../../../../node_modules/.pnpm/@nuxt+ui-templates@1.3.1/node_modules/@nuxt/ui-templates/dist/templates/welcome.vue")['default']
+    'NuxtLayout': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-layout")['default']
+    'NuxtErrorBoundary': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-error-boundary")['default']
+    'ClientOnly': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/client-only")['default']
+    'DevOnly': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/dev-only")['default']
+    'ServerPlaceholder': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/server-placeholder")['default']
+    'NuxtLink': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link")['default']
+    'NuxtLoadingIndicator': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
+    'NuxtImg': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']
+    'NuxtPicture': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']
+    'ColorScheme': typeof import("../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/component.vue3.vue")['default']
+    'Icon': typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/Icon.vue")['default']
+    'IconCSS': typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/IconCSS.vue")['default']
+    'NuxtPage': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/page")['default']
+    'NoScript': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['NoScript']
+    'Link': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Link']
+    'Base': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Base']
+    'Title': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Title']
+    'Meta': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Meta']
+    'Style': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Style']
+    'Head': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Head']
+    'Html': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Html']
+    'Body': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Body']
+    'LazyGraph': typeof import("../components/Graph.vue")['default']
+    'LazyModuleAuthorNote': typeof import("../components/ModuleAuthorNote.vue")['default']
+    'LazyPane': typeof import("../components/Pane.vue")['default']
+    'LazyPerformanceMonitor': typeof import("../components/PerformanceMonitor.vue")['default']
+    'LazySceneGraphItem': typeof import("../components/SceneGraphItem.vue")['default']
+    'LazyProgramsModule': typeof import("../components/programs-module/index.vue")['default']
+    'LazyProgramsModuleItem': typeof import("../components/programs-module/item.vue")['default']
+    'LazyNBadge': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NBadge.vue")['default']
+    'LazyNButton': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NButton.vue")['default']
+    'LazyNCard': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCard.vue")['default']
+    'LazyNCheckbox': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCheckbox.vue")['default']
+    'LazyNCodeBlock': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCodeBlock.vue")['default']
+    'LazyNDarkToggle': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDarkToggle.vue")['default']
+    'LazyNDialog': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDialog.vue")['default']
+    'LazyNDrawer': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDrawer.vue")['default']
+    'LazyNDropdown': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDropdown.vue")['default']
+    'LazyNIcon': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIcon.vue")['default']
+    'LazyNIconTitle': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIconTitle.vue")['default']
+    'LazyNLink': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLink.vue")['default']
+    'LazyNLoading': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLoading.vue")['default']
+    'LazyNMarkdown': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NMarkdown.vue")['default']
+    'LazyNNavbar': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNavbar.vue")['default']
+    'LazyNNotification': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNotification.vue")['default']
+    'LazyNPanelGrids': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NPanelGrids.vue")['default']
+    'LazyNRadio': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NRadio.vue")['default']
+    'LazyNSectionBlock': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSectionBlock.vue")['default']
+    'LazyNSelect': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelect.vue")['default']
+    'LazyNSelectTabs': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelectTabs.vue")['default']
+    'LazyNSplitPane': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSplitPane.vue")['default']
+    'LazyNSwitch': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSwitch.vue")['default']
+    'LazyNTextInput': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTextInput.vue")['default']
+    'LazyNTip': typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTip.vue")['default']
+    'LazyUnoIcon': typeof import("../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/runtime/UnoIcon.vue")['default']
+    'LazyUAccordion': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Accordion.vue")['default']
+    'LazyUAlert': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Alert.vue")['default']
+    'LazyUAvatar': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Avatar.vue")['default']
+    'LazyUAvatarGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/AvatarGroup")['default']
+    'LazyUBadge': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Badge.vue")['default']
+    'LazyUButton': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Button.vue")['default']
+    'LazyUButtonGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/ButtonGroup")['default']
+    'LazyUChip': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Chip.vue")['default']
+    'LazyUDropdown': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Dropdown.vue")['default']
+    'LazyUIcon': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Icon.vue")['default']
+    'LazyUKbd': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Kbd.vue")['default']
+    'LazyULink': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Link.vue")['default']
+    'LazyUMeter': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Meter.vue")['default']
+    'LazyUMeterGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/MeterGroup")['default']
+    'LazyUProgress': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Progress.vue")['default']
+    'LazyUCheckbox': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Checkbox.vue")['default']
+    'LazyUForm': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Form.vue")['default']
+    'LazyUFormGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/FormGroup.vue")['default']
+    'LazyUInput': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Input.vue")['default']
+    'LazyURadio': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Radio.vue")['default']
+    'LazyURadioGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/RadioGroup.vue")['default']
+    'LazyURange': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Range.vue")['default']
+    'LazyUSelect': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Select.vue")['default']
+    'LazyUSelectMenu': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/SelectMenu.vue")['default']
+    'LazyUTextarea': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Textarea.vue")['default']
+    'LazyUToggle': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Toggle.vue")['default']
+    'LazyUTable': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/data/Table.vue")['default']
+    'LazyUCard': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Card.vue")['default']
+    'LazyUContainer': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Container.vue")['default']
+    'LazyUDivider': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Divider.vue")['default']
+    'LazyUSkeleton': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Skeleton.vue")['default']
+    'LazyUBreadcrumb': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Breadcrumb.vue")['default']
+    'LazyUCommandPalette': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPalette.vue")['default']
+    'LazyUCommandPaletteGroup': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPaletteGroup.vue")['default']
+    'LazyUPagination': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Pagination.vue")['default']
+    'LazyUTabs': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Tabs.vue")['default']
+    'LazyUVerticalNavigation': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/VerticalNavigation.vue")['default']
+    'LazyUContextMenu': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/ContextMenu.vue")['default']
+    'LazyUModal': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Modal.vue")['default']
+    'LazyUNotification': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notification.vue")['default']
+    'LazyUNotifications': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notifications.vue")['default']
+    'LazyUPopover': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Popover.vue")['default']
+    'LazyUSlideover': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Slideover.vue")['default']
+    'LazyUTooltip': typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Tooltip.vue")['default']
+    'LazyNuxtWelcome': typeof import("../../../../node_modules/.pnpm/@nuxt+ui-templates@1.3.1/node_modules/@nuxt/ui-templates/dist/templates/welcome.vue")['default']
+    'LazyNuxtLayout': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-layout")['default']
+    'LazyNuxtErrorBoundary': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-error-boundary")['default']
+    'LazyClientOnly': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/client-only")['default']
+    'LazyDevOnly': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/dev-only")['default']
+    'LazyServerPlaceholder': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/server-placeholder")['default']
+    'LazyNuxtLink': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link")['default']
+    'LazyNuxtLoadingIndicator': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
+    'LazyNuxtImg': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']
+    'LazyNuxtPicture': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']
+    'LazyColorScheme': typeof import("../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/component.vue3.vue")['default']
+    'LazyIcon': typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/Icon.vue")['default']
+    'LazyIconCSS': typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/IconCSS.vue")['default']
+    'LazyNuxtPage': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/page")['default']
+    'LazyNoScript': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['NoScript']
+    'LazyLink': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Link']
+    'LazyBase': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Base']
+    'LazyTitle': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Title']
+    'LazyMeta': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Meta']
+    'LazyStyle': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Style']
+    'LazyHead': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Head']
+    'LazyHtml': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Html']
+    'LazyBody': typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Body']
+  }
+}
+
+export const Graph: typeof import("../components/Graph.vue")['default']
+export const ModuleAuthorNote: typeof import("../components/ModuleAuthorNote.vue")['default']
+export const Pane: typeof import("../components/Pane.vue")['default']
+export const PerformanceMonitor: typeof import("../components/PerformanceMonitor.vue")['default']
+export const SceneGraphItem: typeof import("../components/SceneGraphItem.vue")['default']
+export const ProgramsModule: typeof import("../components/programs-module/index.vue")['default']
+export const ProgramsModuleItem: typeof import("../components/programs-module/item.vue")['default']
+export const NBadge: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NBadge.vue")['default']
+export const NButton: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NButton.vue")['default']
+export const NCard: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCard.vue")['default']
+export const NCheckbox: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCheckbox.vue")['default']
+export const NCodeBlock: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCodeBlock.vue")['default']
+export const NDarkToggle: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDarkToggle.vue")['default']
+export const NDialog: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDialog.vue")['default']
+export const NDrawer: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDrawer.vue")['default']
+export const NDropdown: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDropdown.vue")['default']
+export const NIcon: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIcon.vue")['default']
+export const NIconTitle: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIconTitle.vue")['default']
+export const NLink: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLink.vue")['default']
+export const NLoading: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLoading.vue")['default']
+export const NMarkdown: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NMarkdown.vue")['default']
+export const NNavbar: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNavbar.vue")['default']
+export const NNotification: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNotification.vue")['default']
+export const NPanelGrids: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NPanelGrids.vue")['default']
+export const NRadio: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NRadio.vue")['default']
+export const NSectionBlock: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSectionBlock.vue")['default']
+export const NSelect: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelect.vue")['default']
+export const NSelectTabs: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelectTabs.vue")['default']
+export const NSplitPane: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSplitPane.vue")['default']
+export const NSwitch: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSwitch.vue")['default']
+export const NTextInput: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTextInput.vue")['default']
+export const NTip: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTip.vue")['default']
+export const UnoIcon: typeof import("../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/runtime/UnoIcon.vue")['default']
+export const UAccordion: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Accordion.vue")['default']
+export const UAlert: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Alert.vue")['default']
+export const UAvatar: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Avatar.vue")['default']
+export const UAvatarGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/AvatarGroup")['default']
+export const UBadge: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Badge.vue")['default']
+export const UButton: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Button.vue")['default']
+export const UButtonGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/ButtonGroup")['default']
+export const UChip: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Chip.vue")['default']
+export const UDropdown: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Dropdown.vue")['default']
+export const UIcon: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Icon.vue")['default']
+export const UKbd: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Kbd.vue")['default']
+export const ULink: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Link.vue")['default']
+export const UMeter: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Meter.vue")['default']
+export const UMeterGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/MeterGroup")['default']
+export const UProgress: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Progress.vue")['default']
+export const UCheckbox: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Checkbox.vue")['default']
+export const UForm: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Form.vue")['default']
+export const UFormGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/FormGroup.vue")['default']
+export const UInput: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Input.vue")['default']
+export const URadio: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Radio.vue")['default']
+export const URadioGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/RadioGroup.vue")['default']
+export const URange: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Range.vue")['default']
+export const USelect: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Select.vue")['default']
+export const USelectMenu: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/SelectMenu.vue")['default']
+export const UTextarea: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Textarea.vue")['default']
+export const UToggle: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Toggle.vue")['default']
+export const UTable: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/data/Table.vue")['default']
+export const UCard: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Card.vue")['default']
+export const UContainer: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Container.vue")['default']
+export const UDivider: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Divider.vue")['default']
+export const USkeleton: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Skeleton.vue")['default']
+export const UBreadcrumb: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Breadcrumb.vue")['default']
+export const UCommandPalette: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPalette.vue")['default']
+export const UCommandPaletteGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPaletteGroup.vue")['default']
+export const UPagination: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Pagination.vue")['default']
+export const UTabs: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Tabs.vue")['default']
+export const UVerticalNavigation: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/VerticalNavigation.vue")['default']
+export const UContextMenu: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/ContextMenu.vue")['default']
+export const UModal: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Modal.vue")['default']
+export const UNotification: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notification.vue")['default']
+export const UNotifications: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notifications.vue")['default']
+export const UPopover: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Popover.vue")['default']
+export const USlideover: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Slideover.vue")['default']
+export const UTooltip: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Tooltip.vue")['default']
+export const NuxtWelcome: typeof import("../../../../node_modules/.pnpm/@nuxt+ui-templates@1.3.1/node_modules/@nuxt/ui-templates/dist/templates/welcome.vue")['default']
+export const NuxtLayout: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-layout")['default']
+export const NuxtErrorBoundary: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-error-boundary")['default']
+export const ClientOnly: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/client-only")['default']
+export const DevOnly: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/dev-only")['default']
+export const ServerPlaceholder: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/server-placeholder")['default']
+export const NuxtLink: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link")['default']
+export const NuxtLoadingIndicator: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
+export const NuxtImg: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']
+export const NuxtPicture: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']
+export const ColorScheme: typeof import("../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/component.vue3.vue")['default']
+export const Icon: typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/Icon.vue")['default']
+export const IconCSS: typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/IconCSS.vue")['default']
+export const NuxtPage: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/page")['default']
+export const NoScript: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['NoScript']
+export const Link: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Link']
+export const Base: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Base']
+export const Title: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Title']
+export const Meta: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Meta']
+export const Style: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Style']
+export const Head: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Head']
+export const Html: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Html']
+export const Body: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Body']
+export const LazyGraph: typeof import("../components/Graph.vue")['default']
+export const LazyModuleAuthorNote: typeof import("../components/ModuleAuthorNote.vue")['default']
+export const LazyPane: typeof import("../components/Pane.vue")['default']
+export const LazyPerformanceMonitor: typeof import("../components/PerformanceMonitor.vue")['default']
+export const LazySceneGraphItem: typeof import("../components/SceneGraphItem.vue")['default']
+export const LazyProgramsModule: typeof import("../components/programs-module/index.vue")['default']
+export const LazyProgramsModuleItem: typeof import("../components/programs-module/item.vue")['default']
+export const LazyNBadge: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NBadge.vue")['default']
+export const LazyNButton: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NButton.vue")['default']
+export const LazyNCard: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCard.vue")['default']
+export const LazyNCheckbox: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCheckbox.vue")['default']
+export const LazyNCodeBlock: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NCodeBlock.vue")['default']
+export const LazyNDarkToggle: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDarkToggle.vue")['default']
+export const LazyNDialog: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDialog.vue")['default']
+export const LazyNDrawer: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDrawer.vue")['default']
+export const LazyNDropdown: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NDropdown.vue")['default']
+export const LazyNIcon: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIcon.vue")['default']
+export const LazyNIconTitle: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NIconTitle.vue")['default']
+export const LazyNLink: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLink.vue")['default']
+export const LazyNLoading: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NLoading.vue")['default']
+export const LazyNMarkdown: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NMarkdown.vue")['default']
+export const LazyNNavbar: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNavbar.vue")['default']
+export const LazyNNotification: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NNotification.vue")['default']
+export const LazyNPanelGrids: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NPanelGrids.vue")['default']
+export const LazyNRadio: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NRadio.vue")['default']
+export const LazyNSectionBlock: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSectionBlock.vue")['default']
+export const LazyNSelect: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelect.vue")['default']
+export const LazyNSelectTabs: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSelectTabs.vue")['default']
+export const LazyNSplitPane: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSplitPane.vue")['default']
+export const LazyNSwitch: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NSwitch.vue")['default']
+export const LazyNTextInput: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTextInput.vue")['default']
+export const LazyNTip: typeof import("../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/dist/components/NTip.vue")['default']
+export const LazyUnoIcon: typeof import("../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/runtime/UnoIcon.vue")['default']
+export const LazyUAccordion: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Accordion.vue")['default']
+export const LazyUAlert: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Alert.vue")['default']
+export const LazyUAvatar: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Avatar.vue")['default']
+export const LazyUAvatarGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/AvatarGroup")['default']
+export const LazyUBadge: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Badge.vue")['default']
+export const LazyUButton: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Button.vue")['default']
+export const LazyUButtonGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/ButtonGroup")['default']
+export const LazyUChip: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Chip.vue")['default']
+export const LazyUDropdown: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Dropdown.vue")['default']
+export const LazyUIcon: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Icon.vue")['default']
+export const LazyUKbd: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Kbd.vue")['default']
+export const LazyULink: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Link.vue")['default']
+export const LazyUMeter: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Meter.vue")['default']
+export const LazyUMeterGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/MeterGroup")['default']
+export const LazyUProgress: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/elements/Progress.vue")['default']
+export const LazyUCheckbox: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Checkbox.vue")['default']
+export const LazyUForm: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Form.vue")['default']
+export const LazyUFormGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/FormGroup.vue")['default']
+export const LazyUInput: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Input.vue")['default']
+export const LazyURadio: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Radio.vue")['default']
+export const LazyURadioGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/RadioGroup.vue")['default']
+export const LazyURange: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Range.vue")['default']
+export const LazyUSelect: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Select.vue")['default']
+export const LazyUSelectMenu: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/SelectMenu.vue")['default']
+export const LazyUTextarea: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Textarea.vue")['default']
+export const LazyUToggle: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/forms/Toggle.vue")['default']
+export const LazyUTable: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/data/Table.vue")['default']
+export const LazyUCard: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Card.vue")['default']
+export const LazyUContainer: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Container.vue")['default']
+export const LazyUDivider: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Divider.vue")['default']
+export const LazyUSkeleton: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/layout/Skeleton.vue")['default']
+export const LazyUBreadcrumb: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Breadcrumb.vue")['default']
+export const LazyUCommandPalette: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPalette.vue")['default']
+export const LazyUCommandPaletteGroup: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/CommandPaletteGroup.vue")['default']
+export const LazyUPagination: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Pagination.vue")['default']
+export const LazyUTabs: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/Tabs.vue")['default']
+export const LazyUVerticalNavigation: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/navigation/VerticalNavigation.vue")['default']
+export const LazyUContextMenu: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/ContextMenu.vue")['default']
+export const LazyUModal: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Modal.vue")['default']
+export const LazyUNotification: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notification.vue")['default']
+export const LazyUNotifications: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Notifications.vue")['default']
+export const LazyUPopover: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Popover.vue")['default']
+export const LazyUSlideover: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Slideover.vue")['default']
+export const LazyUTooltip: typeof import("../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/components/overlays/Tooltip.vue")['default']
+export const LazyNuxtWelcome: typeof import("../../../../node_modules/.pnpm/@nuxt+ui-templates@1.3.1/node_modules/@nuxt/ui-templates/dist/templates/welcome.vue")['default']
+export const LazyNuxtLayout: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-layout")['default']
+export const LazyNuxtErrorBoundary: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-error-boundary")['default']
+export const LazyClientOnly: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/client-only")['default']
+export const LazyDevOnly: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/dev-only")['default']
+export const LazyServerPlaceholder: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/server-placeholder")['default']
+export const LazyNuxtLink: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link")['default']
+export const LazyNuxtLoadingIndicator: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
+export const LazyNuxtImg: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']
+export const LazyNuxtPicture: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']
+export const LazyColorScheme: typeof import("../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/component.vue3.vue")['default']
+export const LazyIcon: typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/Icon.vue")['default']
+export const LazyIconCSS: typeof import("../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/dist/runtime/IconCSS.vue")['default']
+export const LazyNuxtPage: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/page")['default']
+export const LazyNoScript: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['NoScript']
+export const LazyLink: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Link']
+export const LazyBase: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Base']
+export const LazyTitle: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Title']
+export const LazyMeta: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Meta']
+export const LazyStyle: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Style']
+export const LazyHead: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Head']
+export const LazyHtml: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Html']
+export const LazyBody: typeof import("../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/components")['Body']
+
+export const componentNames: string[]

文件差異過大導致無法顯示
+ 25 - 0
plugins/vite-plugin-tres/client/.nuxt/dev/index.mjs


文件差異過大導致無法顯示
+ 0 - 0
plugins/vite-plugin-tres/client/.nuxt/dev/index.mjs.map


+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/icon-collections.mjs

@@ -0,0 +1 @@
+export default ["fluent-emoji-high-contrast","material-symbols-light","cryptocurrency-color","icon-park-outline","icon-park-twotone","fluent-emoji-flat","emojione-monotone","streamline-emojis","heroicons-outline","simple-line-icons","material-symbols","flat-color-icons","icon-park-solid","pepicons-pencil","heroicons-solid","pepicons-print","cryptocurrency","pixelarticons","system-uicons","devicon-plain","entypo-social","grommet-icons","vscode-icons","pepicons-pop","svg-spinners","fluent-emoji","simple-icons","circle-flags","medical-icon","icomoon-free","majesticons","radix-icons","humbleicons","fa6-regular","emojione-v1","skill-icons","academicons","healthicons","fluent-mdl2","teenyicons","ant-design","gravity-ui","akar-icons","lets-icons","streamline","fa6-brands","file-icons","game-icons","foundation","fa-regular","mono-icons","iconamoon","zondicons","mdi-light","eos-icons","gridicons","icon-park","heroicons","fa6-solid","meteocons","arcticons","dashicons","fa-brands","websymbol","fontelico","mingcute","bytesize","guidance","openmoji","emojione","nonicons","brandico","flagpack","fa-solid","fontisto","si-glyph","pepicons","iconoir","tdesign","clarity","octicon","codicon","pajamas","formkit","line-md","twemoji","noto-v1","fxemoji","devicon","raphael","flat-ui","topcoat","feather","tabler","carbon","lucide","memory","mynaui","circum","fluent","nimbus","entypo","icons8","subway","vaadin","solar","basil","typcn","charm","prime","quill","logos","covid","maki","gala","ooui","noto","flag","iwwa","zmdi","bpmn","mdi","ion","uil","bxs","cil","uiw","uim","uit","uis","jam","bxl","cib","cif","gis","map","geo","fad","eva","wpf","whh","ic","ph","ri","bi","bx","gg","ci","ep","fe","mi","ei","wi","la","fa","oi","et","el","ls","vs","il","ps"]

文件差異過大導致無法顯示
+ 24 - 0
plugins/vite-plugin-tres/client/.nuxt/imports.d.ts


+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/manifest/latest.json

@@ -0,0 +1 @@
+{"id":"dev","timestamp":1704269504954}

+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/manifest/meta/dev.json

@@ -0,0 +1 @@
+{"id":"dev","timestamp":1704269504954,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 17 - 0
plugins/vite-plugin-tres/client/.nuxt/nitro.json

@@ -0,0 +1,17 @@
+{
+  "date": "2024-01-03T08:11:53.068Z",
+  "preset": "nitro-dev",
+  "framework": {
+    "name": "nuxt",
+    "version": "3.9.0"
+  },
+  "versions": {
+    "nitro": "2.8.1"
+  },
+  "dev": {
+    "pid": 58850,
+    "workerAddress": {
+      "socketPath": "/var/folders/66/14k3nnbx1g505216sq4xdfdc0000gn/T/nitro/worker-58850-8.sock"
+    }
+  }
+}

+ 28 - 0
plugins/vite-plugin-tres/client/.nuxt/nuxt.d.ts

@@ -0,0 +1,28 @@
+// Generated by nuxi
+/// <reference types="@nuxt/devtools-ui-kit" />
+/// <reference types="@unocss/nuxt" />
+/// <reference types="@nuxt/ui" />
+/// <reference types="nuxt-icon" />
+/// <reference types="@nuxt/devtools" />
+/// <reference types="@nuxt/devtools" />
+/// <reference types="@nuxt/telemetry" />
+/// <reference types="nuxt" />
+/// <reference path="types/plugins.d.ts" />
+/// <reference path="types/vue-shim.d.ts" />
+/// <reference path="types/schema.d.ts" />
+/// <reference path="types/app.config.d.ts" />
+/// <reference types="vite/client" />
+/// <reference path="ui.colors.d.ts" />
+/// <reference path="tailwind.config.d.ts" />
+/// <reference types="vue-router" />
+/// <reference path="types/middleware.d.ts" />
+/// <reference path="types/layouts.d.ts" />
+/// <reference path="vue-router-stub.d.ts" />
+/// <reference path="components.d.ts" />
+/// <reference path="types/imports.d.ts" />
+/// <reference path="imports.d.ts" />
+/// <reference path="nuxt-config-schema" />
+/// <reference path="schema/nuxt.schema.d.ts" />
+/// <reference path="types/nitro.d.ts" />
+
+export {}

+ 9 - 0
plugins/vite-plugin-tres/client/.nuxt/nuxt.json

@@ -0,0 +1,9 @@
+{
+  "_hash": "e5qt6NnmQK",
+  "project": {
+    "rootDir": "/Users/alvarosabu/Projects/tres/core/plugins/vite-plugin-tres/client"
+  },
+  "versions": {
+    "nuxt": "3.9.0"
+  }
+}

+ 89 - 0
plugins/vite-plugin-tres/client/.nuxt/schema/nuxt.schema.d.ts

@@ -0,0 +1,89 @@
+export interface NuxtCustomSchema {
+ appConfig?: {
+  /**
+   * Nuxt Icon
+   * 
+   * Configure Nuxt Icon module preferences.
+   * 
+  */
+  nuxtIcon?: {
+   /**
+    * Icon Size
+    * 
+    * Set the default icon size. Set to false to disable the sizing of icon in style.
+    * 
+    * @default "1em"
+    * 
+    * @studioIcon material-symbols:format-size-rounded
+   */
+   size?: string | false,
+
+   /**
+    * CSS Class
+    * 
+    * Set the default CSS class.
+    * 
+    * @default ""
+    * 
+    * @studioIcon material-symbols:css
+   */
+   class?: string,
+
+   /**
+    * Icon aliases
+    * 
+    * Define Icon aliases to update them easily without code changes.
+    * 
+    * 
+    * @studioIcon material-symbols:star-rounded
+   */
+   aliases?: { [alias: string]: string },
+
+   /**
+    * Iconify API Options
+    * 
+    * Define preferences for Iconify API fetch.
+    * 
+    * 
+    * @studioIcon material-symbols:tv-options-input-settings
+   */
+   iconifyApiOptions?: {
+    /**
+     * Iconify API URL
+     * 
+     * Define a custom Iconify API URL. Useful if you want to use a self-hosted Iconify API. Learn more: https://iconify.design/docs/api.
+     * 
+     * @default "https://api.iconify.design"
+     * 
+     * @studioIcon material-symbols:api
+    */
+    url?: string,
+
+    /**
+     * Public Iconify API fallback
+     * 
+     * Define if the public Iconify API should be used as fallback.
+     * 
+     * @default false
+     * 
+     * @studioIcon material-symbols:public
+    */
+    publicApiFallback?: boolean,
+   },
+  },
+ },
+}
+export type CustomAppConfig = Exclude<NuxtCustomSchema['appConfig'], undefined>
+type _CustomAppConfig = CustomAppConfig
+
+declare module '@nuxt/schema' {
+  interface NuxtConfig extends Omit<NuxtCustomSchema, 'appConfig'> {}
+  interface NuxtOptions extends Omit<NuxtCustomSchema, 'appConfig'> {}
+  interface CustomAppConfig extends _CustomAppConfig {}
+}
+
+declare module 'nuxt/schema' {
+  interface NuxtConfig extends Omit<NuxtCustomSchema, 'appConfig'> {}
+  interface NuxtOptions extends Omit<NuxtCustomSchema, 'appConfig'> {}
+  interface CustomAppConfig extends _CustomAppConfig {}
+}

+ 120 - 0
plugins/vite-plugin-tres/client/.nuxt/schema/nuxt.schema.json

@@ -0,0 +1,120 @@
+{
+  "id": "#",
+  "properties": {
+    "appConfig": {
+      "id": "#appConfig",
+      "properties": {
+        "nuxtIcon": {
+          "title": "Nuxt Icon",
+          "description": "Configure Nuxt Icon module preferences.",
+          "id": "#appConfig/nuxtIcon",
+          "properties": {
+            "size": {
+              "title": "Icon Size",
+              "description": "Set the default icon size. Set to false to disable the sizing of icon in style.",
+              "tags": [
+                "@studioIcon material-symbols:format-size-rounded"
+              ],
+              "tsType": "string | false",
+              "id": "#appConfig/nuxtIcon/size",
+              "default": "1em",
+              "type": "string"
+            },
+            "class": {
+              "title": "CSS Class",
+              "description": "Set the default CSS class.",
+              "tags": [
+                "@studioIcon material-symbols:css"
+              ],
+              "id": "#appConfig/nuxtIcon/class",
+              "default": "",
+              "type": "string"
+            },
+            "aliases": {
+              "title": "Icon aliases",
+              "description": "Define Icon aliases to update them easily without code changes.",
+              "tags": [
+                "@studioIcon material-symbols:star-rounded"
+              ],
+              "tsType": "{ [alias: string]: string }",
+              "id": "#appConfig/nuxtIcon/aliases",
+              "default": {},
+              "type": "object"
+            },
+            "iconifyApiOptions": {
+              "title": "Iconify API Options",
+              "description": "Define preferences for Iconify API fetch.",
+              "tags": [
+                "@studioIcon material-symbols:tv-options-input-settings"
+              ],
+              "id": "#appConfig/nuxtIcon/iconifyApiOptions",
+              "properties": {
+                "url": {
+                  "title": "Iconify API URL",
+                  "description": "Define a custom Iconify API URL. Useful if you want to use a self-hosted Iconify API. Learn more: https://iconify.design/docs/api.",
+                  "tags": [
+                    "@studioIcon material-symbols:api"
+                  ],
+                  "id": "#appConfig/nuxtIcon/iconifyApiOptions/url",
+                  "default": "https://api.iconify.design",
+                  "type": "string"
+                },
+                "publicApiFallback": {
+                  "title": "Public Iconify API fallback",
+                  "description": "Define if the public Iconify API should be used as fallback.",
+                  "tags": [
+                    "@studioIcon material-symbols:public"
+                  ],
+                  "id": "#appConfig/nuxtIcon/iconifyApiOptions/publicApiFallback",
+                  "default": false,
+                  "type": "boolean"
+                }
+              },
+              "type": "object",
+              "default": {
+                "url": "https://api.iconify.design",
+                "publicApiFallback": false
+              }
+            }
+          },
+          "type": "object",
+          "default": {
+            "size": "1em",
+            "class": "",
+            "aliases": {},
+            "iconifyApiOptions": {
+              "url": "https://api.iconify.design",
+              "publicApiFallback": false
+            }
+          }
+        }
+      },
+      "type": "object",
+      "default": {
+        "nuxtIcon": {
+          "size": "1em",
+          "class": "",
+          "aliases": {},
+          "iconifyApiOptions": {
+            "url": "https://api.iconify.design",
+            "publicApiFallback": false
+          }
+        }
+      }
+    }
+  },
+  "type": "object",
+  "default": {
+    "appConfig": {
+      "nuxtIcon": {
+        "size": "1em",
+        "class": "",
+        "aliases": {},
+        "iconifyApiOptions": {
+          "url": "https://api.iconify.design",
+          "publicApiFallback": false
+        }
+      }
+    }
+  }
+}

文件差異過大導致無法顯示
+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/tailwind.config.d.ts


+ 14 - 0
plugins/vite-plugin-tres/client/.nuxt/tailwind.config/index.mjs

@@ -0,0 +1,14 @@
+import theme from "#build/tailwind.config/theme.mjs"
+import corePlugins from "#build/tailwind.config/corePlugins.mjs"
+import plugins from "#build/tailwind.config/plugins.mjs"
+import content from "#build/tailwind.config/content.mjs"
+import darkMode from "#build/tailwind.config/darkMode.mjs"
+import safelist from "#build/tailwind.config/safelist.mjs"
+import variants from "#build/tailwind.config/variants.mjs"
+import presets from "#build/tailwind.config/presets.mjs"
+import prefix from "#build/tailwind.config/prefix.mjs"
+import important from "#build/tailwind.config/important.mjs"
+import separator from "#build/tailwind.config/separator.mjs"
+import blocklist from "#build/tailwind.config/blocklist.mjs"
+const config = { theme, corePlugins, plugins, content, darkMode, safelist, variants, presets, prefix, important, separator, blocklist }
+export { config as default, theme, corePlugins, plugins, content, darkMode, safelist, variants, presets, prefix, important, separator, blocklist }

+ 144 - 0
plugins/vite-plugin-tres/client/.nuxt/tsconfig.json

@@ -0,0 +1,144 @@
+// Generated by nuxi
+{
+  "compilerOptions": {
+    "forceConsistentCasingInFileNames": true,
+    "jsx": "preserve",
+    "jsxImportSource": "vue",
+    "target": "ESNext",
+    "module": "ESNext",
+    "moduleResolution": "Node",
+    "skipLibCheck": true,
+    "isolatedModules": true,
+    "useDefineForClassFields": true,
+    "strict": true,
+    "noImplicitThis": true,
+    "esModuleInterop": true,
+    "types": [],
+    "verbatimModuleSyntax": true,
+    "allowJs": true,
+    "noEmit": true,
+    "resolveJsonModule": true,
+    "allowSyntheticDefaultImports": true,
+    "paths": {
+      "~": [
+        ".."
+      ],
+      "~/*": [
+        "../*"
+      ],
+      "@": [
+        ".."
+      ],
+      "@/*": [
+        "../*"
+      ],
+      "~~": [
+        ".."
+      ],
+      "~~/*": [
+        "../*"
+      ],
+      "@@": [
+        ".."
+      ],
+      "@@/*": [
+        "../*"
+      ],
+      "assets": [
+        "../assets"
+      ],
+      "public": [
+        "../public"
+      ],
+      "public/*": [
+        "../public/*"
+      ],
+      "#app": [
+        "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app"
+      ],
+      "#app/*": [
+        "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/*"
+      ],
+      "vue-demi": [
+        "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi"
+      ],
+      "#color-mode-options": [
+        "./color-mode-options.mjs"
+      ],
+      "#ui": [
+        "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime"
+      ],
+      "#ui/*": [
+        "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/*"
+      ],
+      "#ui-colors": [
+        "./ui.colors"
+      ],
+      "#icon-collections": [
+        "./icon-collections"
+      ],
+      "#tailwind-config": [
+        "./tailwind.config"
+      ],
+      "#tailwind-config/*": [
+        "./tailwind.config/*"
+      ],
+      "#vue-router": [
+        "./vue-router-stub"
+      ],
+      "#imports": [
+        "./imports"
+      ],
+      "#build": [
+        "."
+      ],
+      "#build/*": [
+        "./*"
+      ],
+      "#components": [
+        "./components"
+      ]
+    }
+  },
+  "include": [
+    "./nuxt.d.ts",
+    "../**/*",
+    "../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist/runtime",
+    "../../../../node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt/runtime",
+    "../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime",
+    "../../../../node_modules/.pnpm/v-lazy-show@0.2.4_@vue+compiler-core@3.4.3/node_modules/v-lazy-show/dist/runtime",
+    "../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/runtime",
+    "../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/runtime",
+    "../../../../node_modules/.pnpm/@nuxtjs+tailwindcss@6.10.3_rollup@3.29.4/node_modules/@nuxtjs/tailwindcss/runtime",
+    "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/runtime",
+    "../../../../../../../.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools/runtime",
+    "../../../../node_modules/.pnpm/@nuxt+telemetry@2.5.3_rollup@3.29.4/node_modules/@nuxt/telemetry/runtime",
+    "..",
+    "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app",
+    "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi",
+    "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime"
+  ],
+  "exclude": [
+    "../node_modules",
+    "../../node_modules",
+    "../../../../node_modules",
+    "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/node_modules",
+    "../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist",
+    "../../../../node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt",
+    "../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist",
+    "../../../../node_modules/.pnpm/v-lazy-show@0.2.4_@vue+compiler-core@3.4.3/node_modules/v-lazy-show/dist",
+    "../../../../../../../.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools",
+    "../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist/runtime/server",
+    "../../../../node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/server",
+    "../../../../node_modules/.pnpm/v-lazy-show@0.2.4_@vue+compiler-core@3.4.3/node_modules/v-lazy-show/dist/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/runtime/server",
+    "../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxtjs+tailwindcss@6.10.3_rollup@3.29.4/node_modules/@nuxtjs/tailwindcss/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/runtime/server",
+    "../../../../../../../.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxt+telemetry@2.5.3_rollup@3.29.4/node_modules/@nuxt/telemetry/runtime/server",
+    "../dist",
+    "../.output"
+  ]
+}

+ 105 - 0
plugins/vite-plugin-tres/client/.nuxt/tsconfig.server.json

@@ -0,0 +1,105 @@
+{
+  "compilerOptions": {
+    "forceConsistentCasingInFileNames": true,
+    "strict": true,
+    "target": "ESNext",
+    "module": "ESNext",
+    "moduleResolution": "Node",
+    "allowJs": true,
+    "resolveJsonModule": true,
+    "jsx": "preserve",
+    "allowSyntheticDefaultImports": true,
+    "jsxFactory": "h",
+    "jsxFragmentFactory": "Fragment",
+    "paths": {
+      "#imports": [
+        "./types/nitro-imports"
+      ],
+      "#paths": [
+        "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/paths"
+      ],
+      "~": [
+        "./.."
+      ],
+      "~/*": [
+        "../*"
+      ],
+      "@": [
+        "./.."
+      ],
+      "@/*": [
+        "../*"
+      ],
+      "~~": [
+        "./.."
+      ],
+      "~~/*": [
+        "../*"
+      ],
+      "@@": [
+        "./.."
+      ],
+      "@@/*": [
+        "../*"
+      ],
+      "assets": [
+        "../assets"
+      ],
+      "public": [
+        "../public"
+      ],
+      "public/*": [
+        "../public/*"
+      ],
+      "#color-mode-options": [
+        "./color-mode-options"
+      ],
+      "#ui": [
+        "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime"
+      ],
+      "#ui/*": [
+        "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/*"
+      ],
+      "#ui-colors": [
+        "./ui.colors"
+      ],
+      "#icon-collections": [
+        "./icon-collections"
+      ],
+      "#tailwind-config": [
+        "./tailwind.config"
+      ],
+      "#tailwind-config/*": [
+        "./tailwind.config/*"
+      ]
+    }
+  },
+  "include": [
+    "./types/nitro-nuxt.d.ts",
+    "../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist/index.mjs/runtime/server",
+    "../../../../node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt/index.mjs/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/module.mjs/runtime/server",
+    "../../../../node_modules/.pnpm/v-lazy-show@0.2.4_@vue+compiler-core@3.4.3/node_modules/v-lazy-show/dist/nuxt.mjs/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxt+devtools-ui-kit@1.0.6_@nuxt+devtools@1.0.6_@vue+compiler-core@3.4.3_nuxt@3.9.0_postcss@_xctq33jbjumt3eipitcopi5o2i/node_modules/@nuxt/devtools-ui-kit/runtime/server",
+    "../../../../node_modules/.pnpm/nuxt-icon@0.6.8_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/nuxt-icon/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxtjs+tailwindcss@6.10.3_rollup@3.29.4/node_modules/@nuxtjs/tailwindcss/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/runtime/server",
+    "../../../../../../../.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools/module.cjs/runtime/server",
+    "../../../../node_modules/.pnpm/@nuxt+telemetry@2.5.3_rollup@3.29.4/node_modules/@nuxt/telemetry/runtime/server",
+    "./types/nitro.d.ts",
+    "../**/*",
+    "../server/**/*"
+  ],
+  "exclude": [
+    "../node_modules",
+    "../../node_modules",
+    "../../../../node_modules",
+    "../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/node_modules",
+    "../../../../node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist",
+    "../../../../node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt",
+    "../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist",
+    "../../../../node_modules/.pnpm/v-lazy-show@0.2.4_@vue+compiler-core@3.4.3/node_modules/v-lazy-show/dist",
+    "../../../../../../../.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools",
+    "../dist"
+  ]
+}

+ 58 - 0
plugins/vite-plugin-tres/client/.nuxt/types/app.config.d.ts

@@ -0,0 +1,58 @@
+
+import type { CustomAppConfig } from 'nuxt/schema'
+import type { Defu } from 'defu'
+
+
+declare const inlineConfig = {
+  "nuxt": {
+    "buildId": "dev"
+  },
+  "ui": {
+    "primary": "green",
+    "gray": "cool",
+    "colors": [
+      "red",
+      "orange",
+      "amber",
+      "yellow",
+      "lime",
+      "green",
+      "emerald",
+      "teal",
+      "cyan",
+      "sky",
+      "blue",
+      "indigo",
+      "violet",
+      "purple",
+      "fuchsia",
+      "pink",
+      "rose",
+      "primary"
+    ],
+    "strategy": "merge"
+  }
+}
+type ResolvedAppConfig = Defu<typeof inlineConfig, []>
+type IsAny<T> = 0 extends 1 & T ? true : false
+
+type MergedAppConfig<Resolved extends Record<string, unknown>, Custom extends Record<string, unknown>> = {
+  [K in keyof (Resolved & Custom)]: K extends keyof Custom
+    ? unknown extends Custom[K]
+      ? Resolved[K]
+      : IsAny<Custom[K]> extends true
+        ? Resolved[K]
+        : Custom[K] extends Record<string, any>
+            ? Resolved[K] extends Record<string, any>
+              ? MergedAppConfig<Resolved[K], Custom[K]>
+              : Exclude<Custom[K], undefined>
+            : Exclude<Custom[K], undefined>
+    : Resolved[K]
+}
+
+declare module 'nuxt/schema' {
+  interface AppConfig extends MergedAppConfig<ResolvedAppConfig, CustomAppConfig> { }
+}
+declare module '@nuxt/schema' {
+  interface AppConfig extends MergedAppConfig<ResolvedAppConfig, CustomAppConfig> { }
+}

+ 1181 - 0
plugins/vite-plugin-tres/client/.nuxt/types/imports.d.ts

@@ -0,0 +1,1181 @@
+// Generated by auto imports
+export {}
+declare global {
+  const _useShortcuts: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts')['_useShortcuts']
+  const abortNavigation: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['abortNavigation']
+  const addRouteMiddleware: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['addRouteMiddleware']
+  const asyncComputed: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['asyncComputed']
+  const autoResetRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['autoResetRef']
+  const bytesToGB: typeof import('../../utils/perf')['bytesToGB']
+  const bytesToKB: typeof import('../../utils/perf')['bytesToKB']
+  const bytesToMB: typeof import('../../utils/perf')['bytesToMB']
+  const calculateMemoryUsage: typeof import('../../utils/perf')['calculateMemoryUsage']
+  const callOnce: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/once')['callOnce']
+  const cancelIdleCallback: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/idle-callback')['cancelIdleCallback']
+  const clearError: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['clearError']
+  const clearNuxtData: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['clearNuxtData']
+  const clearNuxtState: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/state')['clearNuxtState']
+  const computed: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['computed']
+  const computedAsync: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedAsync']
+  const computedEager: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedEager']
+  const computedInject: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedInject']
+  const computedWithControl: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedWithControl']
+  const controlledComputed: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['controlledComputed']
+  const controlledRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['controlledRef']
+  const createError: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['createError']
+  const createEventHook: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createEventHook']
+  const createGenericProjection: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['createGenericProjection']
+  const createGlobalState: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createGlobalState']
+  const createInjectionState: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createInjectionState']
+  const createPopper: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/usePopper')['createPopper']
+  const createProjection: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['createProjection']
+  const createReactiveFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createReactiveFn']
+  const createReusableTemplate: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createReusableTemplate']
+  const createSharedComposable: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createSharedComposable']
+  const createTemplatePromise: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createTemplatePromise']
+  const createUnrefFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createUnrefFn']
+  const customRef: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['customRef']
+  const debouncedRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['debouncedRef']
+  const debouncedWatch: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['debouncedWatch']
+  const defineAppConfig: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['defineAppConfig']
+  const defineAsyncComponent: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineAsyncComponent']
+  const defineComponent: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineComponent']
+  const defineModel: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineModel']
+  const defineNuxtComponent: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/component')['defineNuxtComponent']
+  const defineNuxtLink: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link')['defineNuxtLink']
+  const defineNuxtPlugin: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['defineNuxtPlugin']
+  const defineNuxtRouteMiddleware: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['defineNuxtRouteMiddleware']
+  const defineOptions: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineOptions']
+  const definePageMeta: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/composables')['definePageMeta']
+  const definePayloadPlugin: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['definePayloadPlugin']
+  const definePayloadReducer: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['definePayloadReducer']
+  const definePayloadReviver: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['definePayloadReviver']
+  const defineShortcuts: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts')['defineShortcuts']
+  const defineSlots: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineSlots']
+  const eagerComputed: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['eagerComputed']
+  const effect: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['effect']
+  const effectScope: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['effectScope']
+  const extendRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['extendRef']
+  const getAppManifest: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/manifest')['getAppManifest']
+  const getCurrentInstance: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['getCurrentInstance']
+  const getCurrentScope: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['getCurrentScope']
+  const getRouteRules: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/manifest')['getRouteRules']
+  const h: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['h']
+  const hasInjectionContext: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['hasInjectionContext']
+  const ignorableWatch: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['ignorableWatch']
+  const inject: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['inject']
+  const injectHead: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['injectHead']
+  const injectLocal: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['injectLocal']
+  const isDefined: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['isDefined']
+  const isNuxtError: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['isNuxtError']
+  const isPrerendered: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['isPrerendered']
+  const isProxy: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isProxy']
+  const isReactive: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isReactive']
+  const isReadonly: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isReadonly']
+  const isRef: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isRef']
+  const isShallow: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isShallow']
+  const isVue2: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi')['isVue2']
+  const isVue3: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi')['isVue3']
+  const loadPayload: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['loadPayload']
+  const logicAnd: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicAnd']
+  const logicNot: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicNot']
+  const logicOr: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicOr']
+  const makeDestructurable: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['makeDestructurable']
+  const markRaw: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['markRaw']
+  const mergeModels: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['mergeModels']
+  const navigateTo: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['navigateTo']
+  const nextTick: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['nextTick']
+  const onActivated: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onActivated']
+  const onBeforeMount: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeMount']
+  const onBeforeRouteLeave: typeof import('../vue-router-stub')['onBeforeRouteLeave']
+  const onBeforeRouteUpdate: typeof import('../vue-router-stub')['onBeforeRouteUpdate']
+  const onBeforeUnmount: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeUnmount']
+  const onBeforeUpdate: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeUpdate']
+  const onClickOutside: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onClickOutside']
+  const onDeactivated: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onDeactivated']
+  const onErrorCaptured: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onErrorCaptured']
+  const onKeyStroke: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onKeyStroke']
+  const onLongPress: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onLongPress']
+  const onMounted: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onMounted']
+  const onNuxtReady: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ready')['onNuxtReady']
+  const onRenderTracked: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onRenderTracked']
+  const onRenderTriggered: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onRenderTriggered']
+  const onScopeDispose: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onScopeDispose']
+  const onServerPrefetch: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onServerPrefetch']
+  const onStartTyping: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onStartTyping']
+  const onUnmounted: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onUnmounted']
+  const onUpdated: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onUpdated']
+  const pausableWatch: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['pausableWatch']
+  const prefetchComponents: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['prefetchComponents']
+  const preloadComponents: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['preloadComponents']
+  const preloadPayload: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['preloadPayload']
+  const preloadRouteComponents: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['preloadRouteComponents']
+  const prerenderRoutes: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['prerenderRoutes']
+  const provide: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['provide']
+  const provideLocal: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['provideLocal']
+  const proxyRefs: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['proxyRefs']
+  const reactify: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactify']
+  const reactifyObject: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactifyObject']
+  const reactive: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['reactive']
+  const reactiveComputed: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactiveComputed']
+  const reactiveOmit: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactiveOmit']
+  const reactivePick: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactivePick']
+  const readonly: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['readonly']
+  const ref: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['ref']
+  const refAutoReset: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refAutoReset']
+  const refDebounced: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refDebounced']
+  const refDefault: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refDefault']
+  const refThrottled: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refThrottled']
+  const refWithControl: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refWithControl']
+  const refreshNuxtData: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['refreshNuxtData']
+  const reloadNuxtApp: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/chunk')['reloadNuxtApp']
+  const requestIdleCallback: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/idle-callback')['requestIdleCallback']
+  const resolveComponent: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['resolveComponent']
+  const resolveRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['resolveRef']
+  const resolveUnref: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['resolveUnref']
+  const setPageLayout: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['setPageLayout']
+  const setResponseStatus: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['setResponseStatus']
+  const shallowReactive: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowReactive']
+  const shallowReadonly: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowReadonly']
+  const shallowRef: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowRef']
+  const showError: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['showError']
+  const syncRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['syncRef']
+  const syncRefs: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['syncRefs']
+  const templateRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['templateRef']
+  const throttledRef: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['throttledRef']
+  const throttledWatch: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['throttledWatch']
+  const toRaw: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRaw']
+  const toReactive: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['toReactive']
+  const toRef: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRef']
+  const toRefs: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRefs']
+  const toValue: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toValue']
+  const triggerRef: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['triggerRef']
+  const tryOnBeforeMount: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnBeforeMount']
+  const tryOnBeforeUnmount: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnBeforeUnmount']
+  const tryOnMounted: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnMounted']
+  const tryOnScopeDispose: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnScopeDispose']
+  const tryOnUnmounted: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnUnmounted']
+  const unref: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['unref']
+  const unrefElement: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['unrefElement']
+  const until: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['until']
+  const updateAppConfig: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/config')['updateAppConfig']
+  const useAbs: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useAbs']
+  const useActiveElement: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useActiveElement']
+  const useAnimate: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAnimate']
+  const useAppConfig: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/config')['useAppConfig']
+  const useArrayDifference: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayDifference']
+  const useArrayEvery: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayEvery']
+  const useArrayFilter: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFilter']
+  const useArrayFind: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFind']
+  const useArrayFindIndex: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFindIndex']
+  const useArrayFindLast: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFindLast']
+  const useArrayIncludes: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayIncludes']
+  const useArrayJoin: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayJoin']
+  const useArrayMap: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayMap']
+  const useArrayReduce: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayReduce']
+  const useArraySome: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArraySome']
+  const useArrayUnique: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayUnique']
+  const useAsyncData: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useAsyncData']
+  const useAsyncQueue: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAsyncQueue']
+  const useAsyncState: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAsyncState']
+  const useAttrs: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useAttrs']
+  const useAverage: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useAverage']
+  const useBase64: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBase64']
+  const useBattery: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBattery']
+  const useBluetooth: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBluetooth']
+  const useBreakpoints: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBreakpoints']
+  const useBroadcastChannel: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBroadcastChannel']
+  const useBrowserLocation: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBrowserLocation']
+  const useCached: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCached']
+  const useCeil: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useCeil']
+  const useClamp: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useClamp']
+  const useClipboard: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useClipboard']
+  const useClipboardItems: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useClipboardItems']
+  const useCloned: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCloned']
+  const useColorMode: typeof import('../../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/composables')['useColorMode']
+  const useConfirmDialog: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useConfirmDialog']
+  const useCookie: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/cookie')['useCookie']
+  const useCopyToClipboard: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useCopyToClipboard')['useCopyToClipboard']
+  const useCounter: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCounter']
+  const useCssModule: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useCssModule']
+  const useCssVar: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCssVar']
+  const useCssVars: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useCssVars']
+  const useCurrentElement: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCurrentElement']
+  const useCycleList: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCycleList']
+  const useDark: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDark']
+  const useDateFormat: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDateFormat']
+  const useDebounce: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebounce']
+  const useDebounceFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebounceFn']
+  const useDebouncedRefHistory: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebouncedRefHistory']
+  const useDeviceMotion: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDeviceMotion']
+  const useDeviceOrientation: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDeviceOrientation']
+  const useDevicePixelRatio: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDevicePixelRatio']
+  const useDevicesList: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDevicesList']
+  const useDevtoolsHook: typeof import('../../composables/useDevtoolsHook')['useDevtoolsHook']
+  const useDisplayMedia: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDisplayMedia']
+  const useDocumentVisibility: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDocumentVisibility']
+  const useDraggable: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDraggable']
+  const useDropZone: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDropZone']
+  const useElementBounding: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementBounding']
+  const useElementByPoint: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementByPoint']
+  const useElementHover: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementHover']
+  const useElementSize: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementSize']
+  const useElementVisibility: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementVisibility']
+  const useError: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['useError']
+  const useEventBus: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventBus']
+  const useEventListener: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventListener']
+  const useEventSource: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventSource']
+  const useEyeDropper: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEyeDropper']
+  const useFavicon: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFavicon']
+  const useFetch: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/fetch')['useFetch']
+  const useFileDialog: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFileDialog']
+  const useFileSystemAccess: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFileSystemAccess']
+  const useFloor: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useFloor']
+  const useFocus: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFocus']
+  const useFocusWithin: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFocusWithin']
+  const useFormGroup: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useFormGroup')['useFormGroup']
+  const useFps: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFps']
+  const useFullscreen: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFullscreen']
+  const useGamepad: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useGamepad']
+  const useGeolocation: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useGeolocation']
+  const useHead: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useHead']
+  const useHeadSafe: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useHeadSafe']
+  const useHydration: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/hydrate')['useHydration']
+  const useIdle: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIdle']
+  const useInfiniteScroll: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useInfiniteScroll']
+  const useInjectButtonGroup: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useButtonGroup')['useInjectButtonGroup']
+  const useIntersectionObserver: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIntersectionObserver']
+  const useInterval: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useInterval']
+  const useIntervalFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIntervalFn']
+  const useKeyModifier: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useKeyModifier']
+  const useLastChanged: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useLastChanged']
+  const useLazyAsyncData: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useLazyAsyncData']
+  const useLazyFetch: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/fetch')['useLazyFetch']
+  const useLink: typeof import('../vue-router-stub')['useLink']
+  const useLoadingIndicator: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/loading-indicator')['useLoadingIndicator']
+  const useLocalStorage: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useLocalStorage']
+  const useMagicKeys: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMagicKeys']
+  const useManualRefHistory: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useManualRefHistory']
+  const useMath: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMath']
+  const useMax: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMax']
+  const useMediaControls: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMediaControls']
+  const useMediaQuery: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMediaQuery']
+  const useMemoize: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMemoize']
+  const useMemory: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMemory']
+  const useMin: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMin']
+  const useModel: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useModel']
+  const useMounted: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMounted']
+  const useMouse: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMouse']
+  const useMouseInElement: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMouseInElement']
+  const useMousePressed: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMousePressed']
+  const useMutationObserver: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMutationObserver']
+  const useNavigatorLanguage: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNavigatorLanguage']
+  const useNetwork: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNetwork']
+  const useNow: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNow']
+  const useNuxtApp: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['useNuxtApp']
+  const useNuxtData: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useNuxtData']
+  const useObjectUrl: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useObjectUrl']
+  const useOffsetPagination: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useOffsetPagination']
+  const useOnline: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useOnline']
+  const usePageLeave: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePageLeave']
+  const useParallax: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useParallax']
+  const useParentElement: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useParentElement']
+  const usePerformanceObserver: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePerformanceObserver']
+  const usePermission: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePermission']
+  const usePointer: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointer']
+  const usePointerLock: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointerLock']
+  const usePointerSwipe: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointerSwipe']
+  const usePopper: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/usePopper')['usePopper']
+  const usePrecision: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['usePrecision']
+  const usePreferredColorScheme: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredColorScheme']
+  const usePreferredContrast: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredContrast']
+  const usePreferredDark: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredDark']
+  const usePreferredLanguages: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredLanguages']
+  const usePreferredReducedMotion: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredReducedMotion']
+  const usePrevious: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePrevious']
+  const useProjection: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useProjection']
+  const useProvideButtonGroup: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useButtonGroup')['useProvideButtonGroup']
+  const useRafFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useRafFn']
+  const useRefHistory: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useRefHistory']
+  const useRequestEvent: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestEvent']
+  const useRequestFetch: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestFetch']
+  const useRequestHeader: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestHeader']
+  const useRequestHeaders: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestHeaders']
+  const useRequestURL: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/url')['useRequestURL']
+  const useResizeObserver: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useResizeObserver']
+  const useRound: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useRound']
+  const useRoute: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['useRoute']
+  const useRouter: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['useRouter']
+  const useRuntimeConfig: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['useRuntimeConfig']
+  const useScreenOrientation: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScreenOrientation']
+  const useScreenSafeArea: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScreenSafeArea']
+  const useScriptTag: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScriptTag']
+  const useScroll: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScroll']
+  const useScrollLock: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScrollLock']
+  const useSeoMeta: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useSeoMeta']
+  const useServerHead: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerHead']
+  const useServerHeadSafe: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerHeadSafe']
+  const useServerSeoMeta: typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerSeoMeta']
+  const useSessionStorage: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSessionStorage']
+  const useShare: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useShare']
+  const useShortcuts: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts')['useShortcuts']
+  const useSlots: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useSlots']
+  const useSorted: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSorted']
+  const useSpeechRecognition: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSpeechRecognition']
+  const useSpeechSynthesis: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSpeechSynthesis']
+  const useState: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/state')['useState']
+  const useStepper: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStepper']
+  const useStorageAsync: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStorageAsync']
+  const useStyleTag: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStyleTag']
+  const useSum: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useSum']
+  const useSupported: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSupported']
+  const useSwipe: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSwipe']
+  const useTemplateRefsList: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTemplateRefsList']
+  const useTextDirection: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextDirection']
+  const useTextSelection: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextSelection']
+  const useTextareaAutosize: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextareaAutosize']
+  const useThrottle: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottle']
+  const useThrottleFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottleFn']
+  const useThrottledRefHistory: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottledRefHistory']
+  const useTimeAgo: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeAgo']
+  const useTimeout: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeout']
+  const useTimeoutFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeoutFn']
+  const useTimeoutPoll: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeoutPoll']
+  const useTimer: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useTimer')['useTimer']
+  const useTimestamp: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimestamp']
+  const useToNumber: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToNumber']
+  const useToString: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToString']
+  const useToast: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useToast')['useToast']
+  const useToggle: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToggle']
+  const useTransition: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTransition']
+  const useTransitionState: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useTransitionState']
+  const useTrunc: typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useTrunc']
+  const useUI: typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useUI')['useUI']
+  const useUrlSearchParams: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useUrlSearchParams']
+  const useUserMedia: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useUserMedia']
+  const useVModel: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVModel']
+  const useVModels: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVModels']
+  const useVibrate: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVibrate']
+  const useVirtualList: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVirtualList']
+  const useWakeLock: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWakeLock']
+  const useWebNotification: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebNotification']
+  const useWebSocket: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebSocket']
+  const useWebWorker: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebWorker']
+  const useWebWorkerFn: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebWorkerFn']
+  const useWindowFocus: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowFocus']
+  const useWindowScroll: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowScroll']
+  const useWindowSize: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowSize']
+  const watch: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watch']
+  const watchArray: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchArray']
+  const watchAtMost: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchAtMost']
+  const watchDebounced: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchDebounced']
+  const watchDeep: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchDeep']
+  const watchEffect: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchEffect']
+  const watchIgnorable: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchIgnorable']
+  const watchImmediate: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchImmediate']
+  const watchOnce: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchOnce']
+  const watchPausable: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchPausable']
+  const watchPostEffect: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchPostEffect']
+  const watchSyncEffect: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchSyncEffect']
+  const watchThrottled: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchThrottled']
+  const watchTriggerable: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchTriggerable']
+  const watchWithFilter: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchWithFilter']
+  const whenever: typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['whenever']
+  const withCtx: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withCtx']
+  const withDirectives: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withDirectives']
+  const withKeys: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withKeys']
+  const withMemo: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withMemo']
+  const withModifiers: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withModifiers']
+  const withScopeId: typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withScopeId']
+}
+// for type re-export
+declare global {
+  // @ts-ignore
+  export type { Component, ComponentPublicInstance, ComputedRef, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode } from '../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue'
+  import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')
+  // @ts-ignore
+  export type { ShortcutConfig, ShortcutsConfig, ShortcutsOptions } from '../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.d'
+  import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.d')
+}
+// for vue template auto import
+import { UnwrapRef } from 'vue'
+declare module 'vue' {
+  interface ComponentCustomProperties {
+    readonly _useShortcuts: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts')['_useShortcuts']>
+    readonly abortNavigation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['abortNavigation']>
+    readonly addRouteMiddleware: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['addRouteMiddleware']>
+    readonly asyncComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['asyncComputed']>
+    readonly autoResetRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['autoResetRef']>
+    readonly bytesToGB: UnwrapRef<typeof import('../../utils/perf')['bytesToGB']>
+    readonly bytesToKB: UnwrapRef<typeof import('../../utils/perf')['bytesToKB']>
+    readonly bytesToMB: UnwrapRef<typeof import('../../utils/perf')['bytesToMB']>
+    readonly calculateMemoryUsage: UnwrapRef<typeof import('../../utils/perf')['calculateMemoryUsage']>
+    readonly callOnce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/once')['callOnce']>
+    readonly cancelIdleCallback: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/idle-callback')['cancelIdleCallback']>
+    readonly clearError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['clearError']>
+    readonly clearNuxtData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['clearNuxtData']>
+    readonly clearNuxtState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/state')['clearNuxtState']>
+    readonly computed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['computed']>
+    readonly computedAsync: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedAsync']>
+    readonly computedEager: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedEager']>
+    readonly computedInject: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedInject']>
+    readonly computedWithControl: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedWithControl']>
+    readonly controlledComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['controlledComputed']>
+    readonly controlledRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['controlledRef']>
+    readonly createError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['createError']>
+    readonly createEventHook: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createEventHook']>
+    readonly createGenericProjection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['createGenericProjection']>
+    readonly createGlobalState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createGlobalState']>
+    readonly createInjectionState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createInjectionState']>
+    readonly createPopper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/usePopper')['createPopper']>
+    readonly createProjection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['createProjection']>
+    readonly createReactiveFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createReactiveFn']>
+    readonly createReusableTemplate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createReusableTemplate']>
+    readonly createSharedComposable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createSharedComposable']>
+    readonly createTemplatePromise: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createTemplatePromise']>
+    readonly createUnrefFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createUnrefFn']>
+    readonly customRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['customRef']>
+    readonly debouncedRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['debouncedRef']>
+    readonly debouncedWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['debouncedWatch']>
+    readonly defineAppConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['defineAppConfig']>
+    readonly defineAsyncComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineAsyncComponent']>
+    readonly defineComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineComponent']>
+    readonly defineModel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineModel']>
+    readonly defineNuxtComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/component')['defineNuxtComponent']>
+    readonly defineNuxtLink: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link')['defineNuxtLink']>
+    readonly defineNuxtPlugin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['defineNuxtPlugin']>
+    readonly defineNuxtRouteMiddleware: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['defineNuxtRouteMiddleware']>
+    readonly defineOptions: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineOptions']>
+    readonly definePageMeta: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/composables')['definePageMeta']>
+    readonly definePayloadPlugin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['definePayloadPlugin']>
+    readonly definePayloadReducer: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['definePayloadReducer']>
+    readonly definePayloadReviver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['definePayloadReviver']>
+    readonly defineShortcuts: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts')['defineShortcuts']>
+    readonly defineSlots: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineSlots']>
+    readonly eagerComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['eagerComputed']>
+    readonly effect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['effect']>
+    readonly effectScope: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['effectScope']>
+    readonly extendRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['extendRef']>
+    readonly getAppManifest: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/manifest')['getAppManifest']>
+    readonly getCurrentInstance: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['getCurrentInstance']>
+    readonly getCurrentScope: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['getCurrentScope']>
+    readonly getRouteRules: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/manifest')['getRouteRules']>
+    readonly h: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['h']>
+    readonly hasInjectionContext: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['hasInjectionContext']>
+    readonly ignorableWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['ignorableWatch']>
+    readonly inject: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['inject']>
+    readonly injectHead: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['injectHead']>
+    readonly injectLocal: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['injectLocal']>
+    readonly isDefined: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['isDefined']>
+    readonly isNuxtError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['isNuxtError']>
+    readonly isPrerendered: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['isPrerendered']>
+    readonly isProxy: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isProxy']>
+    readonly isReactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isReactive']>
+    readonly isReadonly: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isReadonly']>
+    readonly isRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isRef']>
+    readonly isShallow: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isShallow']>
+    readonly isVue2: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi')['isVue2']>
+    readonly isVue3: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi')['isVue3']>
+    readonly loadPayload: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['loadPayload']>
+    readonly logicAnd: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicAnd']>
+    readonly logicNot: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicNot']>
+    readonly logicOr: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicOr']>
+    readonly makeDestructurable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['makeDestructurable']>
+    readonly markRaw: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['markRaw']>
+    readonly mergeModels: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['mergeModels']>
+    readonly navigateTo: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['navigateTo']>
+    readonly nextTick: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['nextTick']>
+    readonly onActivated: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onActivated']>
+    readonly onBeforeMount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeMount']>
+    readonly onBeforeRouteLeave: UnwrapRef<typeof import('../vue-router-stub')['onBeforeRouteLeave']>
+    readonly onBeforeRouteUpdate: UnwrapRef<typeof import('../vue-router-stub')['onBeforeRouteUpdate']>
+    readonly onBeforeUnmount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeUnmount']>
+    readonly onBeforeUpdate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeUpdate']>
+    readonly onClickOutside: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onClickOutside']>
+    readonly onDeactivated: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onDeactivated']>
+    readonly onErrorCaptured: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onErrorCaptured']>
+    readonly onKeyStroke: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onKeyStroke']>
+    readonly onLongPress: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onLongPress']>
+    readonly onMounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onMounted']>
+    readonly onNuxtReady: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ready')['onNuxtReady']>
+    readonly onRenderTracked: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onRenderTracked']>
+    readonly onRenderTriggered: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onRenderTriggered']>
+    readonly onScopeDispose: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onScopeDispose']>
+    readonly onServerPrefetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onServerPrefetch']>
+    readonly onStartTyping: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onStartTyping']>
+    readonly onUnmounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onUnmounted']>
+    readonly onUpdated: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onUpdated']>
+    readonly pausableWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['pausableWatch']>
+    readonly prefetchComponents: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['prefetchComponents']>
+    readonly preloadComponents: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['preloadComponents']>
+    readonly preloadPayload: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['preloadPayload']>
+    readonly preloadRouteComponents: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['preloadRouteComponents']>
+    readonly prerenderRoutes: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['prerenderRoutes']>
+    readonly provide: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['provide']>
+    readonly provideLocal: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['provideLocal']>
+    readonly proxyRefs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['proxyRefs']>
+    readonly reactify: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactify']>
+    readonly reactifyObject: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactifyObject']>
+    readonly reactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['reactive']>
+    readonly reactiveComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactiveComputed']>
+    readonly reactiveOmit: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactiveOmit']>
+    readonly reactivePick: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactivePick']>
+    readonly readonly: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['readonly']>
+    readonly ref: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['ref']>
+    readonly refAutoReset: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refAutoReset']>
+    readonly refDebounced: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refDebounced']>
+    readonly refDefault: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refDefault']>
+    readonly refThrottled: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refThrottled']>
+    readonly refWithControl: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refWithControl']>
+    readonly refreshNuxtData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['refreshNuxtData']>
+    readonly reloadNuxtApp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/chunk')['reloadNuxtApp']>
+    readonly requestIdleCallback: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/idle-callback')['requestIdleCallback']>
+    readonly resolveComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['resolveComponent']>
+    readonly resolveRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['resolveRef']>
+    readonly resolveUnref: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['resolveUnref']>
+    readonly setPageLayout: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['setPageLayout']>
+    readonly setResponseStatus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['setResponseStatus']>
+    readonly shallowReactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowReactive']>
+    readonly shallowReadonly: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowReadonly']>
+    readonly shallowRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowRef']>
+    readonly showError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['showError']>
+    readonly syncRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['syncRef']>
+    readonly syncRefs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['syncRefs']>
+    readonly templateRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['templateRef']>
+    readonly throttledRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['throttledRef']>
+    readonly throttledWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['throttledWatch']>
+    readonly toRaw: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRaw']>
+    readonly toReactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['toReactive']>
+    readonly toRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRef']>
+    readonly toRefs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRefs']>
+    readonly toValue: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toValue']>
+    readonly triggerRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['triggerRef']>
+    readonly tryOnBeforeMount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnBeforeMount']>
+    readonly tryOnBeforeUnmount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnBeforeUnmount']>
+    readonly tryOnMounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnMounted']>
+    readonly tryOnScopeDispose: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnScopeDispose']>
+    readonly tryOnUnmounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnUnmounted']>
+    readonly unref: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['unref']>
+    readonly unrefElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['unrefElement']>
+    readonly until: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['until']>
+    readonly updateAppConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/config')['updateAppConfig']>
+    readonly useAbs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useAbs']>
+    readonly useActiveElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useActiveElement']>
+    readonly useAnimate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAnimate']>
+    readonly useAppConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/config')['useAppConfig']>
+    readonly useArrayDifference: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayDifference']>
+    readonly useArrayEvery: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayEvery']>
+    readonly useArrayFilter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFilter']>
+    readonly useArrayFind: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFind']>
+    readonly useArrayFindIndex: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFindIndex']>
+    readonly useArrayFindLast: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFindLast']>
+    readonly useArrayIncludes: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayIncludes']>
+    readonly useArrayJoin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayJoin']>
+    readonly useArrayMap: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayMap']>
+    readonly useArrayReduce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayReduce']>
+    readonly useArraySome: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArraySome']>
+    readonly useArrayUnique: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayUnique']>
+    readonly useAsyncData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useAsyncData']>
+    readonly useAsyncQueue: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAsyncQueue']>
+    readonly useAsyncState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAsyncState']>
+    readonly useAttrs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useAttrs']>
+    readonly useAverage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useAverage']>
+    readonly useBase64: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBase64']>
+    readonly useBattery: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBattery']>
+    readonly useBluetooth: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBluetooth']>
+    readonly useBreakpoints: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBreakpoints']>
+    readonly useBroadcastChannel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBroadcastChannel']>
+    readonly useBrowserLocation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBrowserLocation']>
+    readonly useCached: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCached']>
+    readonly useCeil: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useCeil']>
+    readonly useClamp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useClamp']>
+    readonly useClipboard: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useClipboard']>
+    readonly useClipboardItems: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useClipboardItems']>
+    readonly useCloned: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCloned']>
+    readonly useColorMode: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/composables')['useColorMode']>
+    readonly useConfirmDialog: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useConfirmDialog']>
+    readonly useCookie: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/cookie')['useCookie']>
+    readonly useCopyToClipboard: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useCopyToClipboard')['useCopyToClipboard']>
+    readonly useCounter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCounter']>
+    readonly useCssModule: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useCssModule']>
+    readonly useCssVar: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCssVar']>
+    readonly useCssVars: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useCssVars']>
+    readonly useCurrentElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCurrentElement']>
+    readonly useCycleList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCycleList']>
+    readonly useDark: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDark']>
+    readonly useDateFormat: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDateFormat']>
+    readonly useDebounce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebounce']>
+    readonly useDebounceFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebounceFn']>
+    readonly useDebouncedRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebouncedRefHistory']>
+    readonly useDeviceMotion: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDeviceMotion']>
+    readonly useDeviceOrientation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDeviceOrientation']>
+    readonly useDevicePixelRatio: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDevicePixelRatio']>
+    readonly useDevicesList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDevicesList']>
+    readonly useDevtoolsHook: UnwrapRef<typeof import('../../composables/useDevtoolsHook')['useDevtoolsHook']>
+    readonly useDisplayMedia: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDisplayMedia']>
+    readonly useDocumentVisibility: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDocumentVisibility']>
+    readonly useDraggable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDraggable']>
+    readonly useDropZone: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDropZone']>
+    readonly useElementBounding: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementBounding']>
+    readonly useElementByPoint: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementByPoint']>
+    readonly useElementHover: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementHover']>
+    readonly useElementSize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementSize']>
+    readonly useElementVisibility: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementVisibility']>
+    readonly useError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['useError']>
+    readonly useEventBus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventBus']>
+    readonly useEventListener: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventListener']>
+    readonly useEventSource: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventSource']>
+    readonly useEyeDropper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEyeDropper']>
+    readonly useFavicon: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFavicon']>
+    readonly useFetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/fetch')['useFetch']>
+    readonly useFileDialog: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFileDialog']>
+    readonly useFileSystemAccess: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFileSystemAccess']>
+    readonly useFloor: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useFloor']>
+    readonly useFocus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFocus']>
+    readonly useFocusWithin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFocusWithin']>
+    readonly useFormGroup: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useFormGroup')['useFormGroup']>
+    readonly useFps: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFps']>
+    readonly useFullscreen: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFullscreen']>
+    readonly useGamepad: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useGamepad']>
+    readonly useGeolocation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useGeolocation']>
+    readonly useHead: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useHead']>
+    readonly useHeadSafe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useHeadSafe']>
+    readonly useHydration: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/hydrate')['useHydration']>
+    readonly useIdle: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIdle']>
+    readonly useInfiniteScroll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useInfiniteScroll']>
+    readonly useInjectButtonGroup: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useButtonGroup')['useInjectButtonGroup']>
+    readonly useIntersectionObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIntersectionObserver']>
+    readonly useInterval: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useInterval']>
+    readonly useIntervalFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIntervalFn']>
+    readonly useKeyModifier: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useKeyModifier']>
+    readonly useLastChanged: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useLastChanged']>
+    readonly useLazyAsyncData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useLazyAsyncData']>
+    readonly useLazyFetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/fetch')['useLazyFetch']>
+    readonly useLink: UnwrapRef<typeof import('../vue-router-stub')['useLink']>
+    readonly useLoadingIndicator: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/loading-indicator')['useLoadingIndicator']>
+    readonly useLocalStorage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useLocalStorage']>
+    readonly useMagicKeys: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMagicKeys']>
+    readonly useManualRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useManualRefHistory']>
+    readonly useMath: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMath']>
+    readonly useMax: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMax']>
+    readonly useMediaControls: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMediaControls']>
+    readonly useMediaQuery: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMediaQuery']>
+    readonly useMemoize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMemoize']>
+    readonly useMemory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMemory']>
+    readonly useMin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMin']>
+    readonly useModel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useModel']>
+    readonly useMounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMounted']>
+    readonly useMouse: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMouse']>
+    readonly useMouseInElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMouseInElement']>
+    readonly useMousePressed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMousePressed']>
+    readonly useMutationObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMutationObserver']>
+    readonly useNavigatorLanguage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNavigatorLanguage']>
+    readonly useNetwork: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNetwork']>
+    readonly useNow: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNow']>
+    readonly useNuxtApp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['useNuxtApp']>
+    readonly useNuxtData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useNuxtData']>
+    readonly useObjectUrl: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useObjectUrl']>
+    readonly useOffsetPagination: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useOffsetPagination']>
+    readonly useOnline: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useOnline']>
+    readonly usePageLeave: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePageLeave']>
+    readonly useParallax: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useParallax']>
+    readonly useParentElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useParentElement']>
+    readonly usePerformanceObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePerformanceObserver']>
+    readonly usePermission: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePermission']>
+    readonly usePointer: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointer']>
+    readonly usePointerLock: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointerLock']>
+    readonly usePointerSwipe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointerSwipe']>
+    readonly usePopper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/usePopper')['usePopper']>
+    readonly usePrecision: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['usePrecision']>
+    readonly usePreferredColorScheme: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredColorScheme']>
+    readonly usePreferredContrast: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredContrast']>
+    readonly usePreferredDark: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredDark']>
+    readonly usePreferredLanguages: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredLanguages']>
+    readonly usePreferredReducedMotion: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredReducedMotion']>
+    readonly usePrevious: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePrevious']>
+    readonly useProjection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useProjection']>
+    readonly useProvideButtonGroup: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useButtonGroup')['useProvideButtonGroup']>
+    readonly useRafFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useRafFn']>
+    readonly useRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useRefHistory']>
+    readonly useRequestEvent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestEvent']>
+    readonly useRequestFetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestFetch']>
+    readonly useRequestHeader: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestHeader']>
+    readonly useRequestHeaders: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestHeaders']>
+    readonly useRequestURL: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/url')['useRequestURL']>
+    readonly useResizeObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useResizeObserver']>
+    readonly useRound: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useRound']>
+    readonly useRoute: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['useRoute']>
+    readonly useRouter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['useRouter']>
+    readonly useRuntimeConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['useRuntimeConfig']>
+    readonly useScreenOrientation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScreenOrientation']>
+    readonly useScreenSafeArea: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScreenSafeArea']>
+    readonly useScriptTag: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScriptTag']>
+    readonly useScroll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScroll']>
+    readonly useScrollLock: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScrollLock']>
+    readonly useSeoMeta: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useSeoMeta']>
+    readonly useServerHead: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerHead']>
+    readonly useServerHeadSafe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerHeadSafe']>
+    readonly useServerSeoMeta: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerSeoMeta']>
+    readonly useSessionStorage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSessionStorage']>
+    readonly useShare: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useShare']>
+    readonly useShortcuts: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts')['useShortcuts']>
+    readonly useSlots: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useSlots']>
+    readonly useSorted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSorted']>
+    readonly useSpeechRecognition: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSpeechRecognition']>
+    readonly useSpeechSynthesis: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSpeechSynthesis']>
+    readonly useState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/state')['useState']>
+    readonly useStepper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStepper']>
+    readonly useStorageAsync: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStorageAsync']>
+    readonly useStyleTag: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStyleTag']>
+    readonly useSum: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useSum']>
+    readonly useSupported: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSupported']>
+    readonly useSwipe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSwipe']>
+    readonly useTemplateRefsList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTemplateRefsList']>
+    readonly useTextDirection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextDirection']>
+    readonly useTextSelection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextSelection']>
+    readonly useTextareaAutosize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextareaAutosize']>
+    readonly useThrottle: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottle']>
+    readonly useThrottleFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottleFn']>
+    readonly useThrottledRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottledRefHistory']>
+    readonly useTimeAgo: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeAgo']>
+    readonly useTimeout: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeout']>
+    readonly useTimeoutFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeoutFn']>
+    readonly useTimeoutPoll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeoutPoll']>
+    readonly useTimer: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useTimer')['useTimer']>
+    readonly useTimestamp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimestamp']>
+    readonly useToNumber: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToNumber']>
+    readonly useToString: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToString']>
+    readonly useToast: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useToast')['useToast']>
+    readonly useToggle: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToggle']>
+    readonly useTransition: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTransition']>
+    readonly useTransitionState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useTransitionState']>
+    readonly useTrunc: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useTrunc']>
+    readonly useUI: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useUI')['useUI']>
+    readonly useUrlSearchParams: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useUrlSearchParams']>
+    readonly useUserMedia: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useUserMedia']>
+    readonly useVModel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVModel']>
+    readonly useVModels: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVModels']>
+    readonly useVibrate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVibrate']>
+    readonly useVirtualList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVirtualList']>
+    readonly useWakeLock: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWakeLock']>
+    readonly useWebNotification: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebNotification']>
+    readonly useWebSocket: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebSocket']>
+    readonly useWebWorker: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebWorker']>
+    readonly useWebWorkerFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebWorkerFn']>
+    readonly useWindowFocus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowFocus']>
+    readonly useWindowScroll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowScroll']>
+    readonly useWindowSize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowSize']>
+    readonly watch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watch']>
+    readonly watchArray: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchArray']>
+    readonly watchAtMost: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchAtMost']>
+    readonly watchDebounced: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchDebounced']>
+    readonly watchDeep: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchDeep']>
+    readonly watchEffect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchEffect']>
+    readonly watchIgnorable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchIgnorable']>
+    readonly watchImmediate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchImmediate']>
+    readonly watchOnce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchOnce']>
+    readonly watchPausable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchPausable']>
+    readonly watchPostEffect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchPostEffect']>
+    readonly watchSyncEffect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchSyncEffect']>
+    readonly watchThrottled: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchThrottled']>
+    readonly watchTriggerable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchTriggerable']>
+    readonly watchWithFilter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchWithFilter']>
+    readonly whenever: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['whenever']>
+    readonly withCtx: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withCtx']>
+    readonly withDirectives: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withDirectives']>
+    readonly withKeys: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withKeys']>
+    readonly withMemo: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withMemo']>
+    readonly withModifiers: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withModifiers']>
+    readonly withScopeId: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withScopeId']>
+  }
+}
+declare module '@vue/runtime-core' {
+  interface ComponentCustomProperties {
+    readonly _useShortcuts: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts')['_useShortcuts']>
+    readonly abortNavigation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['abortNavigation']>
+    readonly addRouteMiddleware: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['addRouteMiddleware']>
+    readonly asyncComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['asyncComputed']>
+    readonly autoResetRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['autoResetRef']>
+    readonly bytesToGB: UnwrapRef<typeof import('../../utils/perf')['bytesToGB']>
+    readonly bytesToKB: UnwrapRef<typeof import('../../utils/perf')['bytesToKB']>
+    readonly bytesToMB: UnwrapRef<typeof import('../../utils/perf')['bytesToMB']>
+    readonly calculateMemoryUsage: UnwrapRef<typeof import('../../utils/perf')['calculateMemoryUsage']>
+    readonly callOnce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/once')['callOnce']>
+    readonly cancelIdleCallback: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/idle-callback')['cancelIdleCallback']>
+    readonly clearError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['clearError']>
+    readonly clearNuxtData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['clearNuxtData']>
+    readonly clearNuxtState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/state')['clearNuxtState']>
+    readonly computed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['computed']>
+    readonly computedAsync: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedAsync']>
+    readonly computedEager: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedEager']>
+    readonly computedInject: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedInject']>
+    readonly computedWithControl: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['computedWithControl']>
+    readonly controlledComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['controlledComputed']>
+    readonly controlledRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['controlledRef']>
+    readonly createError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['createError']>
+    readonly createEventHook: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createEventHook']>
+    readonly createGenericProjection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['createGenericProjection']>
+    readonly createGlobalState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createGlobalState']>
+    readonly createInjectionState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createInjectionState']>
+    readonly createPopper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/usePopper')['createPopper']>
+    readonly createProjection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['createProjection']>
+    readonly createReactiveFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createReactiveFn']>
+    readonly createReusableTemplate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createReusableTemplate']>
+    readonly createSharedComposable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createSharedComposable']>
+    readonly createTemplatePromise: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createTemplatePromise']>
+    readonly createUnrefFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['createUnrefFn']>
+    readonly customRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['customRef']>
+    readonly debouncedRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['debouncedRef']>
+    readonly debouncedWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['debouncedWatch']>
+    readonly defineAppConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['defineAppConfig']>
+    readonly defineAsyncComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineAsyncComponent']>
+    readonly defineComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineComponent']>
+    readonly defineModel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineModel']>
+    readonly defineNuxtComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/component')['defineNuxtComponent']>
+    readonly defineNuxtLink: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/components/nuxt-link')['defineNuxtLink']>
+    readonly defineNuxtPlugin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['defineNuxtPlugin']>
+    readonly defineNuxtRouteMiddleware: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['defineNuxtRouteMiddleware']>
+    readonly defineOptions: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineOptions']>
+    readonly definePageMeta: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/composables')['definePageMeta']>
+    readonly definePayloadPlugin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['definePayloadPlugin']>
+    readonly definePayloadReducer: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['definePayloadReducer']>
+    readonly definePayloadReviver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['definePayloadReviver']>
+    readonly defineShortcuts: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts')['defineShortcuts']>
+    readonly defineSlots: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['defineSlots']>
+    readonly eagerComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['eagerComputed']>
+    readonly effect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['effect']>
+    readonly effectScope: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['effectScope']>
+    readonly extendRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['extendRef']>
+    readonly getAppManifest: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/manifest')['getAppManifest']>
+    readonly getCurrentInstance: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['getCurrentInstance']>
+    readonly getCurrentScope: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['getCurrentScope']>
+    readonly getRouteRules: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/manifest')['getRouteRules']>
+    readonly h: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['h']>
+    readonly hasInjectionContext: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['hasInjectionContext']>
+    readonly ignorableWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['ignorableWatch']>
+    readonly inject: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['inject']>
+    readonly injectHead: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['injectHead']>
+    readonly injectLocal: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['injectLocal']>
+    readonly isDefined: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['isDefined']>
+    readonly isNuxtError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['isNuxtError']>
+    readonly isPrerendered: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['isPrerendered']>
+    readonly isProxy: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isProxy']>
+    readonly isReactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isReactive']>
+    readonly isReadonly: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isReadonly']>
+    readonly isRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isRef']>
+    readonly isShallow: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['isShallow']>
+    readonly isVue2: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi')['isVue2']>
+    readonly isVue3: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/vue-demi')['isVue3']>
+    readonly loadPayload: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['loadPayload']>
+    readonly logicAnd: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicAnd']>
+    readonly logicNot: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicNot']>
+    readonly logicOr: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['logicOr']>
+    readonly makeDestructurable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['makeDestructurable']>
+    readonly markRaw: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['markRaw']>
+    readonly mergeModels: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['mergeModels']>
+    readonly navigateTo: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['navigateTo']>
+    readonly nextTick: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['nextTick']>
+    readonly onActivated: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onActivated']>
+    readonly onBeforeMount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeMount']>
+    readonly onBeforeRouteLeave: UnwrapRef<typeof import('../vue-router-stub')['onBeforeRouteLeave']>
+    readonly onBeforeRouteUpdate: UnwrapRef<typeof import('../vue-router-stub')['onBeforeRouteUpdate']>
+    readonly onBeforeUnmount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeUnmount']>
+    readonly onBeforeUpdate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onBeforeUpdate']>
+    readonly onClickOutside: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onClickOutside']>
+    readonly onDeactivated: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onDeactivated']>
+    readonly onErrorCaptured: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onErrorCaptured']>
+    readonly onKeyStroke: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onKeyStroke']>
+    readonly onLongPress: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onLongPress']>
+    readonly onMounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onMounted']>
+    readonly onNuxtReady: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ready')['onNuxtReady']>
+    readonly onRenderTracked: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onRenderTracked']>
+    readonly onRenderTriggered: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onRenderTriggered']>
+    readonly onScopeDispose: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onScopeDispose']>
+    readonly onServerPrefetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onServerPrefetch']>
+    readonly onStartTyping: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['onStartTyping']>
+    readonly onUnmounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onUnmounted']>
+    readonly onUpdated: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['onUpdated']>
+    readonly pausableWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['pausableWatch']>
+    readonly prefetchComponents: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['prefetchComponents']>
+    readonly preloadComponents: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['preloadComponents']>
+    readonly preloadPayload: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/payload')['preloadPayload']>
+    readonly preloadRouteComponents: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/preload')['preloadRouteComponents']>
+    readonly prerenderRoutes: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['prerenderRoutes']>
+    readonly provide: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['provide']>
+    readonly provideLocal: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['provideLocal']>
+    readonly proxyRefs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['proxyRefs']>
+    readonly reactify: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactify']>
+    readonly reactifyObject: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactifyObject']>
+    readonly reactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['reactive']>
+    readonly reactiveComputed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactiveComputed']>
+    readonly reactiveOmit: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactiveOmit']>
+    readonly reactivePick: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['reactivePick']>
+    readonly readonly: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['readonly']>
+    readonly ref: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['ref']>
+    readonly refAutoReset: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refAutoReset']>
+    readonly refDebounced: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refDebounced']>
+    readonly refDefault: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refDefault']>
+    readonly refThrottled: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refThrottled']>
+    readonly refWithControl: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['refWithControl']>
+    readonly refreshNuxtData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['refreshNuxtData']>
+    readonly reloadNuxtApp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/chunk')['reloadNuxtApp']>
+    readonly requestIdleCallback: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/compat/idle-callback')['requestIdleCallback']>
+    readonly resolveComponent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['resolveComponent']>
+    readonly resolveRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['resolveRef']>
+    readonly resolveUnref: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['resolveUnref']>
+    readonly setPageLayout: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['setPageLayout']>
+    readonly setResponseStatus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['setResponseStatus']>
+    readonly shallowReactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowReactive']>
+    readonly shallowReadonly: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowReadonly']>
+    readonly shallowRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['shallowRef']>
+    readonly showError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['showError']>
+    readonly syncRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['syncRef']>
+    readonly syncRefs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['syncRefs']>
+    readonly templateRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['templateRef']>
+    readonly throttledRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['throttledRef']>
+    readonly throttledWatch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['throttledWatch']>
+    readonly toRaw: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRaw']>
+    readonly toReactive: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['toReactive']>
+    readonly toRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRef']>
+    readonly toRefs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toRefs']>
+    readonly toValue: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['toValue']>
+    readonly triggerRef: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['triggerRef']>
+    readonly tryOnBeforeMount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnBeforeMount']>
+    readonly tryOnBeforeUnmount: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnBeforeUnmount']>
+    readonly tryOnMounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnMounted']>
+    readonly tryOnScopeDispose: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnScopeDispose']>
+    readonly tryOnUnmounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['tryOnUnmounted']>
+    readonly unref: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['unref']>
+    readonly unrefElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['unrefElement']>
+    readonly until: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['until']>
+    readonly updateAppConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/config')['updateAppConfig']>
+    readonly useAbs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useAbs']>
+    readonly useActiveElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useActiveElement']>
+    readonly useAnimate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAnimate']>
+    readonly useAppConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/config')['useAppConfig']>
+    readonly useArrayDifference: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayDifference']>
+    readonly useArrayEvery: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayEvery']>
+    readonly useArrayFilter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFilter']>
+    readonly useArrayFind: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFind']>
+    readonly useArrayFindIndex: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFindIndex']>
+    readonly useArrayFindLast: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayFindLast']>
+    readonly useArrayIncludes: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayIncludes']>
+    readonly useArrayJoin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayJoin']>
+    readonly useArrayMap: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayMap']>
+    readonly useArrayReduce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayReduce']>
+    readonly useArraySome: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArraySome']>
+    readonly useArrayUnique: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useArrayUnique']>
+    readonly useAsyncData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useAsyncData']>
+    readonly useAsyncQueue: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAsyncQueue']>
+    readonly useAsyncState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useAsyncState']>
+    readonly useAttrs: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useAttrs']>
+    readonly useAverage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useAverage']>
+    readonly useBase64: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBase64']>
+    readonly useBattery: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBattery']>
+    readonly useBluetooth: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBluetooth']>
+    readonly useBreakpoints: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBreakpoints']>
+    readonly useBroadcastChannel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBroadcastChannel']>
+    readonly useBrowserLocation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useBrowserLocation']>
+    readonly useCached: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCached']>
+    readonly useCeil: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useCeil']>
+    readonly useClamp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useClamp']>
+    readonly useClipboard: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useClipboard']>
+    readonly useClipboardItems: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useClipboardItems']>
+    readonly useCloned: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCloned']>
+    readonly useColorMode: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/composables')['useColorMode']>
+    readonly useConfirmDialog: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useConfirmDialog']>
+    readonly useCookie: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/cookie')['useCookie']>
+    readonly useCopyToClipboard: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useCopyToClipboard')['useCopyToClipboard']>
+    readonly useCounter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCounter']>
+    readonly useCssModule: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useCssModule']>
+    readonly useCssVar: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCssVar']>
+    readonly useCssVars: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useCssVars']>
+    readonly useCurrentElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCurrentElement']>
+    readonly useCycleList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useCycleList']>
+    readonly useDark: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDark']>
+    readonly useDateFormat: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDateFormat']>
+    readonly useDebounce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebounce']>
+    readonly useDebounceFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebounceFn']>
+    readonly useDebouncedRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDebouncedRefHistory']>
+    readonly useDeviceMotion: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDeviceMotion']>
+    readonly useDeviceOrientation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDeviceOrientation']>
+    readonly useDevicePixelRatio: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDevicePixelRatio']>
+    readonly useDevicesList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDevicesList']>
+    readonly useDevtoolsHook: UnwrapRef<typeof import('../../composables/useDevtoolsHook')['useDevtoolsHook']>
+    readonly useDisplayMedia: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDisplayMedia']>
+    readonly useDocumentVisibility: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDocumentVisibility']>
+    readonly useDraggable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDraggable']>
+    readonly useDropZone: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useDropZone']>
+    readonly useElementBounding: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementBounding']>
+    readonly useElementByPoint: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementByPoint']>
+    readonly useElementHover: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementHover']>
+    readonly useElementSize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementSize']>
+    readonly useElementVisibility: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useElementVisibility']>
+    readonly useError: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/error')['useError']>
+    readonly useEventBus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventBus']>
+    readonly useEventListener: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventListener']>
+    readonly useEventSource: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEventSource']>
+    readonly useEyeDropper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useEyeDropper']>
+    readonly useFavicon: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFavicon']>
+    readonly useFetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/fetch')['useFetch']>
+    readonly useFileDialog: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFileDialog']>
+    readonly useFileSystemAccess: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFileSystemAccess']>
+    readonly useFloor: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useFloor']>
+    readonly useFocus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFocus']>
+    readonly useFocusWithin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFocusWithin']>
+    readonly useFormGroup: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useFormGroup')['useFormGroup']>
+    readonly useFps: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFps']>
+    readonly useFullscreen: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useFullscreen']>
+    readonly useGamepad: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useGamepad']>
+    readonly useGeolocation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useGeolocation']>
+    readonly useHead: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useHead']>
+    readonly useHeadSafe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useHeadSafe']>
+    readonly useHydration: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/hydrate')['useHydration']>
+    readonly useIdle: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIdle']>
+    readonly useInfiniteScroll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useInfiniteScroll']>
+    readonly useInjectButtonGroup: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useButtonGroup')['useInjectButtonGroup']>
+    readonly useIntersectionObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIntersectionObserver']>
+    readonly useInterval: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useInterval']>
+    readonly useIntervalFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useIntervalFn']>
+    readonly useKeyModifier: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useKeyModifier']>
+    readonly useLastChanged: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useLastChanged']>
+    readonly useLazyAsyncData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useLazyAsyncData']>
+    readonly useLazyFetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/fetch')['useLazyFetch']>
+    readonly useLink: UnwrapRef<typeof import('../vue-router-stub')['useLink']>
+    readonly useLoadingIndicator: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/loading-indicator')['useLoadingIndicator']>
+    readonly useLocalStorage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useLocalStorage']>
+    readonly useMagicKeys: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMagicKeys']>
+    readonly useManualRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useManualRefHistory']>
+    readonly useMath: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMath']>
+    readonly useMax: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMax']>
+    readonly useMediaControls: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMediaControls']>
+    readonly useMediaQuery: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMediaQuery']>
+    readonly useMemoize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMemoize']>
+    readonly useMemory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMemory']>
+    readonly useMin: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useMin']>
+    readonly useModel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useModel']>
+    readonly useMounted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMounted']>
+    readonly useMouse: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMouse']>
+    readonly useMouseInElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMouseInElement']>
+    readonly useMousePressed: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMousePressed']>
+    readonly useMutationObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useMutationObserver']>
+    readonly useNavigatorLanguage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNavigatorLanguage']>
+    readonly useNetwork: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNetwork']>
+    readonly useNow: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useNow']>
+    readonly useNuxtApp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['useNuxtApp']>
+    readonly useNuxtData: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/asyncData')['useNuxtData']>
+    readonly useObjectUrl: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useObjectUrl']>
+    readonly useOffsetPagination: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useOffsetPagination']>
+    readonly useOnline: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useOnline']>
+    readonly usePageLeave: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePageLeave']>
+    readonly useParallax: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useParallax']>
+    readonly useParentElement: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useParentElement']>
+    readonly usePerformanceObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePerformanceObserver']>
+    readonly usePermission: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePermission']>
+    readonly usePointer: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointer']>
+    readonly usePointerLock: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointerLock']>
+    readonly usePointerSwipe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePointerSwipe']>
+    readonly usePopper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/usePopper')['usePopper']>
+    readonly usePrecision: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['usePrecision']>
+    readonly usePreferredColorScheme: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredColorScheme']>
+    readonly usePreferredContrast: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredContrast']>
+    readonly usePreferredDark: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredDark']>
+    readonly usePreferredLanguages: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredLanguages']>
+    readonly usePreferredReducedMotion: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePreferredReducedMotion']>
+    readonly usePrevious: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['usePrevious']>
+    readonly useProjection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useProjection']>
+    readonly useProvideButtonGroup: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useButtonGroup')['useProvideButtonGroup']>
+    readonly useRafFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useRafFn']>
+    readonly useRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useRefHistory']>
+    readonly useRequestEvent: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestEvent']>
+    readonly useRequestFetch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestFetch']>
+    readonly useRequestHeader: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestHeader']>
+    readonly useRequestHeaders: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/ssr')['useRequestHeaders']>
+    readonly useRequestURL: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/url')['useRequestURL']>
+    readonly useResizeObserver: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useResizeObserver']>
+    readonly useRound: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useRound']>
+    readonly useRoute: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['useRoute']>
+    readonly useRouter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/router')['useRouter']>
+    readonly useRuntimeConfig: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/nuxt')['useRuntimeConfig']>
+    readonly useScreenOrientation: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScreenOrientation']>
+    readonly useScreenSafeArea: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScreenSafeArea']>
+    readonly useScriptTag: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScriptTag']>
+    readonly useScroll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScroll']>
+    readonly useScrollLock: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useScrollLock']>
+    readonly useSeoMeta: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useSeoMeta']>
+    readonly useServerHead: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerHead']>
+    readonly useServerHeadSafe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerHeadSafe']>
+    readonly useServerSeoMeta: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@unhead+vue@1.8.9_vue@3.4.3/node_modules/@unhead/vue')['useServerSeoMeta']>
+    readonly useSessionStorage: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSessionStorage']>
+    readonly useShare: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useShare']>
+    readonly useShortcuts: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts')['useShortcuts']>
+    readonly useSlots: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useSlots']>
+    readonly useSorted: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSorted']>
+    readonly useSpeechRecognition: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSpeechRecognition']>
+    readonly useSpeechSynthesis: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSpeechSynthesis']>
+    readonly useState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/composables/state')['useState']>
+    readonly useStepper: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStepper']>
+    readonly useStorageAsync: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStorageAsync']>
+    readonly useStyleTag: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useStyleTag']>
+    readonly useSum: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useSum']>
+    readonly useSupported: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSupported']>
+    readonly useSwipe: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useSwipe']>
+    readonly useTemplateRefsList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTemplateRefsList']>
+    readonly useTextDirection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextDirection']>
+    readonly useTextSelection: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextSelection']>
+    readonly useTextareaAutosize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTextareaAutosize']>
+    readonly useThrottle: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottle']>
+    readonly useThrottleFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottleFn']>
+    readonly useThrottledRefHistory: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useThrottledRefHistory']>
+    readonly useTimeAgo: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeAgo']>
+    readonly useTimeout: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeout']>
+    readonly useTimeoutFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeoutFn']>
+    readonly useTimeoutPoll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimeoutPoll']>
+    readonly useTimer: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useTimer')['useTimer']>
+    readonly useTimestamp: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTimestamp']>
+    readonly useToNumber: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToNumber']>
+    readonly useToString: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToString']>
+    readonly useToast: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useToast')['useToast']>
+    readonly useToggle: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useToggle']>
+    readonly useTransition: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useTransition']>
+    readonly useTransitionState: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['useTransitionState']>
+    readonly useTrunc: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+math@10.7.1_vue@3.4.3/node_modules/@vueuse/math')['useTrunc']>
+    readonly useUI: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/composables/useUI')['useUI']>
+    readonly useUrlSearchParams: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useUrlSearchParams']>
+    readonly useUserMedia: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useUserMedia']>
+    readonly useVModel: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVModel']>
+    readonly useVModels: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVModels']>
+    readonly useVibrate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVibrate']>
+    readonly useVirtualList: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useVirtualList']>
+    readonly useWakeLock: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWakeLock']>
+    readonly useWebNotification: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebNotification']>
+    readonly useWebSocket: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebSocket']>
+    readonly useWebWorker: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebWorker']>
+    readonly useWebWorkerFn: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWebWorkerFn']>
+    readonly useWindowFocus: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowFocus']>
+    readonly useWindowScroll: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowScroll']>
+    readonly useWindowSize: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['useWindowSize']>
+    readonly watch: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watch']>
+    readonly watchArray: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchArray']>
+    readonly watchAtMost: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchAtMost']>
+    readonly watchDebounced: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchDebounced']>
+    readonly watchDeep: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchDeep']>
+    readonly watchEffect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchEffect']>
+    readonly watchIgnorable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchIgnorable']>
+    readonly watchImmediate: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchImmediate']>
+    readonly watchOnce: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchOnce']>
+    readonly watchPausable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchPausable']>
+    readonly watchPostEffect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchPostEffect']>
+    readonly watchSyncEffect: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['watchSyncEffect']>
+    readonly watchThrottled: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchThrottled']>
+    readonly watchTriggerable: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchTriggerable']>
+    readonly watchWithFilter: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['watchWithFilter']>
+    readonly whenever: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/@vueuse+core@10.7.1_vue@3.4.3/node_modules/@vueuse/core')['whenever']>
+    readonly withCtx: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withCtx']>
+    readonly withDirectives: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withDirectives']>
+    readonly withKeys: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withKeys']>
+    readonly withMemo: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withMemo']>
+    readonly withModifiers: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withModifiers']>
+    readonly withScopeId: UnwrapRef<typeof import('../../../../../node_modules/.pnpm/vue@3.4.3_typescript@5.3.3/node_modules/vue')['withScopeId']>
+  }
+}

+ 7 - 0
plugins/vite-plugin-tres/client/.nuxt/types/layouts.d.ts

@@ -0,0 +1,7 @@
+import { ComputedRef, MaybeRef } from 'vue'
+export type LayoutKey = string
+declare module "../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/composables" {
+  interface PageMeta {
+    layout?: MaybeRef<LayoutKey | false> | ComputedRef<LayoutKey | false>
+  }
+}

+ 7 - 0
plugins/vite-plugin-tres/client/.nuxt/types/middleware.d.ts

@@ -0,0 +1,7 @@
+import type { NavigationGuard } from 'vue-router'
+export type MiddlewareKey = string
+declare module "../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/composables" {
+  interface PageMeta {
+    middleware?: MiddlewareKey | NavigationGuard | Array<MiddlewareKey | NavigationGuard>
+  }
+}

+ 14 - 0
plugins/vite-plugin-tres/client/.nuxt/types/nitro-config.d.ts

@@ -0,0 +1,14 @@
+// Generated by nitro
+
+// App Config
+import type { Defu } from 'defu'
+
+
+
+type UserAppConfig = Defu<{}, []>
+
+declare module 'nitropack' {
+  interface AppConfig extends UserAppConfig {}
+}
+    
+export {}

+ 124 - 0
plugins/vite-plugin-tres/client/.nuxt/types/nitro-imports.d.ts

@@ -0,0 +1,124 @@
+declare global {
+  const __buildAssetsURL: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/paths')['buildAssetsURL']
+  const __publicAssetsURL: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/paths')['publicAssetsURL']
+  const appendCorsHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['appendCorsHeaders']
+  const appendCorsPreflightHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['appendCorsPreflightHeaders']
+  const appendHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['appendHeader']
+  const appendHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['appendHeaders']
+  const appendResponseHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['appendResponseHeader']
+  const appendResponseHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['appendResponseHeaders']
+  const assertMethod: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['assertMethod']
+  const cachedEventHandler: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['cachedEventHandler']
+  const cachedFunction: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['cachedFunction']
+  const callNodeListener: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['callNodeListener']
+  const clearResponseHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['clearResponseHeaders']
+  const clearSession: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['clearSession']
+  const createApp: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['createApp']
+  const createAppEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['createAppEventHandler']
+  const createError: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['createError']
+  const createEvent: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['createEvent']
+  const createRouter: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['createRouter']
+  const defaultContentType: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defaultContentType']
+  const defineAppConfig: typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/config')['defineAppConfig']
+  const defineCachedEventHandler: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['defineCachedEventHandler']
+  const defineCachedFunction: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['defineCachedFunction']
+  const defineEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defineEventHandler']
+  const defineLazyEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defineLazyEventHandler']
+  const defineNitroErrorHandler: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['defineNitroErrorHandler']
+  const defineNitroPlugin: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['defineNitroPlugin']
+  const defineNodeListener: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defineNodeListener']
+  const defineNodeMiddleware: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defineNodeMiddleware']
+  const defineRenderHandler: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['defineRenderHandler']
+  const defineRequestMiddleware: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defineRequestMiddleware']
+  const defineResponseMiddleware: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['defineResponseMiddleware']
+  const deleteCookie: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['deleteCookie']
+  const dynamicEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['dynamicEventHandler']
+  const eventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['eventHandler']
+  const fetchWithEvent: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['fetchWithEvent']
+  const fromNodeMiddleware: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['fromNodeMiddleware']
+  const fromPlainHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['fromPlainHandler']
+  const fromWebHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['fromWebHandler']
+  const getCookie: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getCookie']
+  const getHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getHeader']
+  const getHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getHeaders']
+  const getMethod: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getMethod']
+  const getProxyRequestHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getProxyRequestHeaders']
+  const getQuery: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getQuery']
+  const getRequestFingerprint: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestFingerprint']
+  const getRequestHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestHeader']
+  const getRequestHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestHeaders']
+  const getRequestHost: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestHost']
+  const getRequestIP: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestIP']
+  const getRequestPath: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestPath']
+  const getRequestProtocol: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestProtocol']
+  const getRequestURL: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestURL']
+  const getRequestWebStream: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRequestWebStream']
+  const getResponseHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getResponseHeader']
+  const getResponseHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getResponseHeaders']
+  const getResponseStatus: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getResponseStatus']
+  const getResponseStatusText: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getResponseStatusText']
+  const getRouteRules: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['getRouteRules']
+  const getRouterParam: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRouterParam']
+  const getRouterParams: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getRouterParams']
+  const getSession: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getSession']
+  const getValidatedQuery: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getValidatedQuery']
+  const getValidatedRouterParams: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['getValidatedRouterParams']
+  const handleCacheHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['handleCacheHeaders']
+  const handleCors: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['handleCors']
+  const isCorsOriginAllowed: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isCorsOriginAllowed']
+  const isError: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isError']
+  const isEvent: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isEvent']
+  const isEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isEventHandler']
+  const isMethod: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isMethod']
+  const isPreflightRequest: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isPreflightRequest']
+  const isStream: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isStream']
+  const isWebResponse: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['isWebResponse']
+  const lazyEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['lazyEventHandler']
+  const nitroPlugin: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['nitroPlugin']
+  const parseCookies: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['parseCookies']
+  const promisifyNodeListener: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['promisifyNodeListener']
+  const proxyRequest: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['proxyRequest']
+  const readBody: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['readBody']
+  const readFormData: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['readFormData']
+  const readMultipartFormData: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['readMultipartFormData']
+  const readRawBody: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['readRawBody']
+  const readValidatedBody: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['readValidatedBody']
+  const removeResponseHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['removeResponseHeader']
+  const sanitizeStatusCode: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sanitizeStatusCode']
+  const sanitizeStatusMessage: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sanitizeStatusMessage']
+  const sealSession: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sealSession']
+  const send: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['send']
+  const sendError: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sendError']
+  const sendNoContent: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sendNoContent']
+  const sendProxy: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sendProxy']
+  const sendRedirect: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sendRedirect']
+  const sendStream: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sendStream']
+  const sendWebResponse: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['sendWebResponse']
+  const serveStatic: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['serveStatic']
+  const setCookie: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['setCookie']
+  const setHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['setHeader']
+  const setHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['setHeaders']
+  const setResponseHeader: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['setResponseHeader']
+  const setResponseHeaders: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['setResponseHeaders']
+  const setResponseStatus: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['setResponseStatus']
+  const splitCookiesString: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['splitCookiesString']
+  const toEventHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['toEventHandler']
+  const toNodeListener: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['toNodeListener']
+  const toPlainHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['toPlainHandler']
+  const toWebHandler: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['toWebHandler']
+  const toWebRequest: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['toWebRequest']
+  const unsealSession: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['unsealSession']
+  const updateSession: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['updateSession']
+  const useAppConfig: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['useAppConfig']
+  const useBase: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['useBase']
+  const useEvent: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['useEvent']
+  const useNitroApp: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['useNitroApp']
+  const useRuntimeConfig: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['useRuntimeConfig']
+  const useSession: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['useSession']
+  const useStorage: typeof import('../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime')['useStorage']
+  const writeEarlyHints: typeof import('../../../../../node_modules/.pnpm/h3@1.9.0/node_modules/h3')['writeEarlyHints']
+}
+export { defineCachedFunction, defineCachedEventHandler, cachedFunction, cachedEventHandler, useRuntimeConfig, useStorage, useNitroApp, defineNitroPlugin, nitroPlugin, defineRenderHandler, getRouteRules, useAppConfig, useEvent, defineNitroErrorHandler } from '../../../../../node_modules/.pnpm/nitropack@2.8.1/node_modules/nitropack/dist/runtime';
+export { appendCorsHeaders, appendCorsPreflightHeaders, appendHeader, appendHeaders, appendResponseHeader, appendResponseHeaders, assertMethod, callNodeListener, clearResponseHeaders, clearSession, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineLazyEventHandler, defineNodeListener, defineNodeMiddleware, defineRequestMiddleware, defineResponseMiddleware, deleteCookie, dynamicEventHandler, eventHandler, fetchWithEvent, fromNodeMiddleware, fromPlainHandler, fromWebHandler, getCookie, getHeader, getHeaders, getMethod, getProxyRequestHeaders, getQuery, getRequestFingerprint, getRequestHeader, getRequestHeaders, getRequestHost, getRequestIP, getRequestPath, getRequestProtocol, getRequestURL, getRequestWebStream, getResponseHeader, getResponseHeaders, getResponseStatus, getResponseStatusText, getRouterParam, getRouterParams, getSession, getValidatedQuery, getValidatedRouterParams, handleCacheHeaders, handleCors, isCorsOriginAllowed, isError, isEvent, isEventHandler, isMethod, isPreflightRequest, isStream, isWebResponse, lazyEventHandler, parseCookies, promisifyNodeListener, proxyRequest, readBody, readFormData, readMultipartFormData, readRawBody, readValidatedBody, removeResponseHeader, sanitizeStatusCode, sanitizeStatusMessage, sealSession, send, sendError, sendNoContent, sendProxy, sendRedirect, sendStream, sendWebResponse, serveStatic, setCookie, setHeader, setHeaders, setResponseHeader, setResponseHeaders, setResponseStatus, splitCookiesString, toEventHandler, toNodeListener, toPlainHandler, toWebHandler, toWebRequest, unsealSession, updateSession, useBase, useSession, writeEarlyHints } from 'h3';
+export { buildAssetsURL as __buildAssetsURL, publicAssetsURL as __publicAssetsURL } from '../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/paths';
+export { defineAppConfig } from '../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/config';

+ 26 - 0
plugins/vite-plugin-tres/client/.nuxt/types/nitro-nuxt.d.ts

@@ -0,0 +1,26 @@
+
+/// <reference path="./schema.d.ts" />
+
+import type { RuntimeConfig } from 'nuxt/schema'
+import type { H3Event } from 'h3'
+import type { NuxtIslandContext, NuxtIslandResponse, NuxtRenderHTMLContext } from 'nuxt/dist/core/runtime/nitro/renderer'
+
+declare module 'nitropack' {
+  interface NitroRuntimeConfigApp {
+    buildAssetsDir: string
+    cdnURL: string
+  }
+  interface NitroRuntimeConfig extends RuntimeConfig {}
+  interface NitroRouteConfig {
+    ssr?: boolean
+    experimentalNoScripts?: boolean
+  }
+  interface NitroRouteRules {
+    ssr?: boolean
+    experimentalNoScripts?: boolean
+  }
+  interface NitroRuntimeHooks {
+    'render:html': (htmlContext: NuxtRenderHTMLContext, context: { event: H3Event }) => void | Promise<void>
+    'render:island': (islandResponse: NuxtIslandResponse, context: { event: H3Event, islandContext: NuxtIslandContext }) => void | Promise<void>
+  }
+}

+ 11 - 0
plugins/vite-plugin-tres/client/.nuxt/types/nitro-routes.d.ts

@@ -0,0 +1,11 @@
+// Generated by nitro
+import type { Serialize, Simplify } from 'nitropack'
+declare module 'nitropack' {
+  type Awaited<T> = T extends PromiseLike<infer U> ? Awaited<U> : T
+  interface InternalApi {
+    '/__nuxt_error': {
+      'default': Simplify<Serialize<Awaited<ReturnType<typeof import('../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/core/runtime/nitro/renderer').default>>>>
+    }
+  }
+}
+export {}

+ 3 - 0
plugins/vite-plugin-tres/client/.nuxt/types/nitro.d.ts

@@ -0,0 +1,3 @@
+/// <reference path="./nitro-routes.d.ts" />
+/// <reference path="./nitro-config.d.ts" />
+/// <reference path="./nitro-imports.d.ts" />

+ 33 - 0
plugins/vite-plugin-tres/client/.nuxt/types/plugins.d.ts

@@ -0,0 +1,33 @@
+// Generated by Nuxt'
+import type { Plugin } from '#app'
+
+type Decorate<T extends Record<string, any>> = { [K in keyof T as K extends string ? `$${K}` : never]: T[K] }
+
+type InjectionType<A extends Plugin> = A extends Plugin<infer T> ? Decorate<T> : unknown
+
+type NuxtAppInjections = 
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/plugins/check-outdated-build.client").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/plugins/revive-payload.server").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/plugins/revive-payload.client").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/head/runtime/plugins/unhead").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/plugins/router").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/pages/runtime/plugins/prefetch.client").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/@nuxt+ui@2.11.1_nuxt@3.9.0_rollup@3.29.4_vite@5.0.10_vue@3.4.3/node_modules/@nuxt/ui/dist/runtime/plugins/colors").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/plugin.server").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/runtime/plugin.client").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/plugins/chunk-reload.client").default> &
+  InjectionType<typeof import("../../../../../node_modules/.pnpm/nuxt@3.9.0_eslint@8.56.0_rollup@3.29.4_typescript@5.3.3_vite@5.0.10/node_modules/nuxt/dist/app/plugins/check-if-layout-used").default>
+
+declare module '#app' {
+  interface NuxtApp extends NuxtAppInjections { }
+
+  interface NuxtAppLiterals {
+    pluginName: 'nuxt:revive-payload:client' | 'nuxt:head' | 'nuxt:router' | 'nuxt:revive-payload:server' | 'nuxt:global-components' | 'nuxt:prefetch' | 'nuxt:chunk-reload' | 'nuxt:checkIfLayoutUsed'
+  }
+}
+
+declare module 'vue' {
+  interface ComponentCustomProperties extends NuxtAppInjections { }
+}
+
+export { }

+ 32 - 0
plugins/vite-plugin-tres/client/.nuxt/types/schema.d.ts

@@ -0,0 +1,32 @@
+import { NuxtModule, RuntimeConfig } from 'nuxt/schema'
+declare module 'nuxt/schema' {
+  interface NuxtConfig {
+    ["unocss"]?: typeof import("/Users/alvarosabu/Projects/tres/core/node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist/index").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["vueuse"]?: typeof import("/Users/alvarosabu/Projects/tres/core/node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt/index").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["colorMode"]?: typeof import("/Users/alvarosabu/Projects/tres/core/node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/module").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["devtoolsUIKit"]?: typeof import("@nuxt/devtools-ui-kit").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["icon"]?: typeof import("nuxt-icon").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["tailwindcss"]?: typeof import("@nuxtjs/tailwindcss").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["ui"]?: typeof import("@nuxt/ui").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["devtools"]?: typeof import("/Users/alvarosabu/.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools/module").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    ["telemetry"]?: typeof import("@nuxt/telemetry").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
+    modules?: (undefined | null | false | NuxtModule | string | [NuxtModule | string, Record<string, any>] | ["/Users/alvarosabu/Projects/tres/core/node_modules/.pnpm/@unocss+nuxt@0.58.3_postcss@8.4.32_rollup@3.29.4_vite@5.0.10_webpack@5.89.0/node_modules/@unocss/nuxt/dist/index", Exclude<NuxtConfig["unocss"], boolean>] | ["/Users/alvarosabu/Projects/tres/core/node_modules/.pnpm/@vueuse+nuxt@10.7.1_nuxt@3.9.0_rollup@3.29.4_vue@3.4.3/node_modules/@vueuse/nuxt/index", Exclude<NuxtConfig["vueuse"], boolean>] | ["/Users/alvarosabu/Projects/tres/core/node_modules/.pnpm/@nuxtjs+color-mode@3.3.2_rollup@3.29.4/node_modules/@nuxtjs/color-mode/dist/module", Exclude<NuxtConfig["colorMode"], boolean>] | ["@nuxt/devtools-ui-kit", Exclude<NuxtConfig["devtoolsUIKit"], boolean>] | ["nuxt-icon", Exclude<NuxtConfig["icon"], boolean>] | ["@nuxtjs/tailwindcss", Exclude<NuxtConfig["tailwindcss"], boolean>] | ["@nuxt/ui", Exclude<NuxtConfig["ui"], boolean>] | ["/Users/alvarosabu/.nvm/versions/node/v18.14.1/lib/node_modules/@nuxt/devtools/module", Exclude<NuxtConfig["devtools"], boolean>] | ["@nuxt/telemetry", Exclude<NuxtConfig["telemetry"], boolean>])[],
+  }
+  interface RuntimeConfig {
+   app: {
+      baseURL: string,
+
+      buildAssetsDir: string,
+
+      cdnURL: string,
+   },
+  }
+  interface PublicRuntimeConfig {
+
+  }
+}
+declare module 'vue' {
+        interface ComponentCustomProperties {
+          $config: RuntimeConfig
+        }
+      }

+ 5 - 0
plugins/vite-plugin-tres/client/.nuxt/types/vue-shim.d.ts

@@ -0,0 +1,5 @@
+declare module '*.vue' {
+  import { DefineComponent } from 'vue'
+  const component: DefineComponent<{}, {}, any>
+  export default component
+}

+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/ui.colors.d.ts

@@ -0,0 +1 @@
+declare module '#ui-colors' { const defaultExport: ["red","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose","primary"]; export default defaultExport; }

+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/ui.colors.mjs

@@ -0,0 +1 @@
+export default ["red","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose","primary"];

+ 1 - 0
plugins/vite-plugin-tres/client/.nuxt/vue-router-stub.d.ts

@@ -0,0 +1 @@
+export * from 'vue-router'

+ 1 - 0
plugins/vite-plugin-tres/client/.nuxtrc

@@ -0,0 +1 @@
+imports.autoImport=true

+ 14 - 0
plugins/vite-plugin-tres/client/.output/nitro.json

@@ -0,0 +1,14 @@
+{
+  "date": "2023-12-12T16:39:09.058Z",
+  "preset": "static",
+  "framework": {
+    "name": "nuxt",
+    "version": "3.8.2"
+  },
+  "versions": {
+    "nitro": "2.8.1"
+  },
+  "commands": {
+    "preview": "npx serve ./public"
+  }
+}

+ 6 - 0
plugins/vite-plugin-tres/client/app.vue

@@ -0,0 +1,6 @@
+<template>
+  Awiwi
+<!--   <NuxtLayout>
+    <NuxtPage />
+  </NuxtLayout> -->
+</template>

+ 81 - 0
plugins/vite-plugin-tres/client/components/Graph.vue

@@ -0,0 +1,81 @@
+<script setup lang="ts">
+import { computed, ref, watchEffect } from 'vue'
+
+const props = withDefaults(defineProps<{
+  points: Array<number> // Array of y-values
+  value: number
+  unit: string
+  label: string
+  color: string
+}>(),
+{
+  points: () => [],
+  value: 0,
+  unit: '',
+  label: '',
+  color: 'green',
+})
+
+const width = 160
+const height = 40
+const strokeWidth = 2
+
+// Determine the maximum value for scaling the graph
+const maxValue = ref(140)
+
+// Update maxValue to accommodate the range of y-values in points
+watchEffect(() => {
+  const highestValue = Math.max(...props.points, 30) // Ensure at least 30
+  maxValue.value = Math.max(highestValue, maxValue.value)
+})
+
+const pointsF = computed(() => props.points.map(
+  (point, index) =>
+    `${index * strokeWidth},${height - (point * height / maxValue.value)}`,
+).join(' '))  
+</script>
+
+<template>
+  <div
+    class="
+      graph
+      relative
+      p-1
+      rounded
+      text-right
+      text-xs 
+      outline-none
+      border-none
+      font-sans
+    "
+  >
+    <div class="absolute bottom-0.5 right-0.5 font-mono text-xs">
+      {{ Math.round(value) }} {{ unit }}
+    </div>
+    <svg
+      width="100%"
+      :height="height"
+      xmlns="http://www.w3.org/2000/svg"
+    >
+      <polyline
+        :points="pointsF"
+        fill="none"
+        :stroke="color"
+        :stroke-width="strokeWidth"
+        stroke-linecap="round"
+        stroke-linejoin="round"
+      />
+    </svg>
+  </div>
+</template>
+
+<style>
+.graph {
+  background-color: rgba(var(--nui-c-context), 0.1);
+  color: rgba(var(--nui-c-context), 1);
+}
+
+.graph polyline {
+  stroke: rgba(var(--nui-c-context), 1);
+}
+</style>

+ 28 - 0
plugins/vite-plugin-tres/client/components/ModuleAuthorNote.vue

@@ -0,0 +1,28 @@
+<script setup lang="ts">
+
+</script>
+
+<template>
+  <NTip
+    n="teal"
+    class="py-4"
+  >
+    <p class="font-bold">
+      Note for module authors:
+    </p>
+    Nuxt DevTools is in early preview and the API is subject to change.
+    Which means the setup in this template is only presenting the current state of the API.
+    We suggest following closely to the changes in the <NLink
+      href="https://github.com/nuxt/devtools"
+      target="_blank"
+    >
+      nuxt/devtools
+    </NLink> repository.<br>
+    The UI components are coming from <NLink
+      href="https://github.com/nuxt/devtools/tree/main/packages/devtools-ui-kit"
+      target="_blank"
+    >
+      @nuxt/devtools-ui-kit
+    </NLink>.
+  </NTip>
+</template>

+ 31 - 0
plugins/vite-plugin-tres/client/components/Pane.vue

@@ -0,0 +1,31 @@
+<script setup lang="ts">
+defineProps<{
+  title: string
+}>()
+</script>
+
+<template>
+  <div
+    class="relative
+    px-4
+    py-6
+    border
+    border-solid
+    border-gray-200
+    rounded
+    my-4"
+  >
+    <span
+      class="absolute
+      bg-white
+      text-xs
+      dark:bg-[#151515]
+      text-gray-400
+      px-2
+      rounded
+      -top-2
+      left-2"
+    >{{ title }}</span>
+    <slot />
+  </div>
+</template>

+ 100 - 0
plugins/vite-plugin-tres/client/components/PerformanceMonitor.vue

@@ -0,0 +1,100 @@
+<script setup lang="ts">
+import { useDevtoolsHook } from '../composables/useDevtoolsHook'
+import { bytesToKB } from '../utils'
+
+const { fps, memory, renderer } = useDevtoolsHook()
+</script>
+
+<template>
+  <div class="grid grid-cols-2 gap-4">
+    <NCard
+      class="col-span-1"
+      n="green"
+    >
+      <Graph
+        :points="fps.accumulator"
+        :value="fps.value"
+        color="green"
+        n="green"
+        unit="FPS"
+        label="FPS"
+      />
+    </NCard>
+    <NCard
+      class="col-span-1"
+      n="green"
+    >
+      <Graph
+        :points="memory.accumulator"
+        :value="memory.currentMem"
+        color="yellow"
+        n="yellow"
+        unit="MB"
+        label="memory"
+      />
+    </NCard>
+    <Pane title="Memory ">
+      <div class="flex p4 justify-around w-full">
+        <div class="flex flex-col items-center gap-2">
+          <div class="flex items-center font-mono gap-2">
+            {{ renderer.info?.memory?.geometries || 0 }}
+            <i class="i-iconoir-box-3d-three-points" />
+          </div>
+          <span class="text-xs text-gray-500">Geometries</span>
+        </div>
+        <div class="flex flex-col items-center gap-2">
+          <div class="flex items-center font-mono gap-2">
+            {{ renderer.info?.memory?.textures || 0 }}
+            <i class="i-iconoir-select-face-3d" />
+          </div>
+          <span class="text-xs text-gray-500">Textures</span>
+        </div>
+      </div>
+      <div class="p4">
+        <NTip class="text-sm">
+          <Icon
+            class="mr2"
+            name="carbon:information"
+          />Memory allocated by objects is aprox <strong>{{ bytesToKB(memory.allocatedMem) }} KB </strong>
+        </NTip>
+      </div>
+    </Pane>
+    <Pane title="Render">
+      <div class="grid grid-cols-2 p4 justify-around w-full">
+        <div class="flex flex-col items-center gap-2 mb4">
+          <div class="flex items-center font-mono gap-2">
+            {{ renderer?.info?.render?.calls || 0 }}
+            <i class="i-iconoir-comp-align-left" />
+          </div>
+          <span class="text-xs text-gray-500">Calls</span>
+        </div>
+        <div class="flex flex-col items-center gap-2 mb4">
+          <div class="flex items-center font-mono gap-2">
+            {{ renderer?.info?.render?.triangles || 0 }}
+            <i class="i-iconoir-triangle" />
+          </div>
+          <span class="text-xs text-gray-500">Triangles</span>
+        </div>
+        <div class="flex flex-col items-center gap-2 mb4">
+          <div class="flex items-center font-mono gap-2">
+            {{ renderer?.info?.render?.points || 0 }}
+            <i class="i-iconoir-one-point-circle" />
+          </div>
+          <span class="text-xs text-gray-500">Points</span>
+        </div>
+        <div class="flex flex-col items-center gap-2 mb4">
+          <div class="flex items-center font-mono gap-2">
+            {{ renderer?.info?.render?.lines || 0 }}
+            <i class="i-iconoir-linear" />
+          </div>
+          <span class="text-xs text-gray-500">Lines</span>
+        </div>
+      </div>
+    </Pane>
+  </div>
+  <div class="">
+    <Pane title="Programs">
+      <ProgramsModule />
+    </Pane>
+  </div>
+</template>

+ 311 - 0
plugins/vite-plugin-tres/client/components/SceneGraphItem.vue

@@ -0,0 +1,311 @@
+<script setup lang="ts">
+import type { SceneGraphObject } from '../types'
+
+withDefaults(defineProps<{
+  item: SceneGraphObject
+  depth?: number
+}>(), {
+  depth: 0,
+})
+
+const isExpanded = ref(false)
+
+function roundNumber(num: number) {
+  return Math.round((num + Number.EPSILON) * 100) / 100
+}
+</script>
+
+<template>
+  <div
+    :class="{ 'text-sm text-gray-400 font-mono': depth > 0 }"
+  >
+    <div
+      class="flex gap-2 items-end cursor-pointer pt2 mb2"
+      @click="isExpanded = !isExpanded"
+    >
+      <span
+        v-if="depth > 0"
+        class="h-1 border-b border-gray-300 w-4"
+      />
+      <div class="flex gap-2 items-center -mb2.5">
+        <Icon :name="item.icon" />
+        <!-- <i :class="item.icon" /> -->{{ item.type }} <UBadge
+          v-if="item.name "
+          variant="soft"
+        >
+          {{ item.name }}
+        </UBadge>
+        <template v-if="item.type.includes('Light') && !isExpanded">
+          <UBadge
+            color="gray"
+            variant="soft"
+          > 
+            <span
+              class="w4 h4 rounded-full mr-2 border border-gray-200"
+              :style="{ backgroundColor: `#${item.color}` }"
+            />
+            #{{ item.color }}
+          </UBadge>
+          <UBadge
+            color="green"
+            variant="soft"
+          > 
+            {{ item.intensity }}
+          </UBadge>
+        </template>
+        <template v-if="item.type.includes('Camera') && !isExpanded">
+          <UTooltip
+            text="X"
+          >
+            <UBadge
+              color="gray"
+              variant="soft"
+            >
+              {{ roundNumber(item.position.x) }}
+            </UBadge>
+          </UTooltip>
+          <UTooltip
+            text="Y"
+          >
+            <UBadge
+              color="gray"
+              variant="soft"
+            >
+              {{ roundNumber(item.position.y) }}
+            </UBadge>
+          </UTooltip>
+          <UTooltip
+            text="Z"
+          >
+            <UBadge
+              color="gray"
+              variant="soft"
+            >
+              {{ roundNumber(item.position.z) }}
+            </UBadge>
+          </UTooltip>
+        </template>
+      </div>
+    </div>
+    <div
+      v-if="isExpanded || depth === 0"
+      :class="{ 'border-l border-gray-300': item.children.length > 0, 'ml2.5': depth === 0, 'ml6.5': depth > 0 }"
+    >
+      <template v-if="item.children.length > 0">
+        <SceneGraphItem
+          v-for="(child, index) in item.children"
+          :key="index"
+          :depth="depth + 1"
+          :item="child"
+        />
+      </template>
+      <template v-else>
+        <div class="p4 text-gray-400 text-xs font-mono">
+          <div
+            v-if="item.geometry"
+            class="mb-2 flex items-center gap-2"
+          >
+            <strong>Geometry</strong>
+            <UBadge
+              color="gray"
+              variant="soft"
+            >
+              <i class="i-iconoir-box-3d-three-points mr2" />
+              <a
+                :href="`https://threejs.org/docs/#api/en/geometries/${item.geometry.type}`"
+                target="_blank"
+              >
+                {{ item.geometry.type.replace('Geometry', '') }}
+              </a> 
+            </UBadge>
+          </div>
+          <div
+            v-if="item.material"
+            class="mb-2 flex items-center gap-2"
+          >
+            <strong>Material</strong>
+   
+            <UBadge
+              color="gray"
+              variant="soft"
+            > 
+              <i class="i-iconoir-select-face-3d mr2" />
+              <a
+                :href="`https://threejs.org/docs/#api/en/materials/${item.material.type}`"
+                target="_blank"
+              >
+                {{ item.material?.type.replace('Material', '') }}
+              </a> 
+            </UBadge>
+
+            <UBadge
+              color="gray"
+              variant="soft"
+            > 
+              <span
+                class="w4 h4 rounded-full mr-2 border border-gray-200"
+                :style="{ backgroundColor: `#${item.material.color.getHexString()}` }"
+              />
+              #{{ item.material.color.getHexString() }}
+            </UBadge>
+          </div>
+          <div
+            v-if="item.color"
+            class="mb-2 flex items-center gap-2"
+          >
+            <strong>Color</strong>
+            <UTooltip
+              text="Color"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              > 
+                <span
+                  class="w4 h4 rounded-full mr-2 border border-gray-200"
+                  :style="{ backgroundColor: `#${item.color}` }"
+                />
+                #{{ item.color }}
+              </UBadge>
+            </UTooltip>
+          </div>
+          <div
+            v-if="item.color"
+            class="mb-2 flex items-center gap-2"
+          >
+            <strong>Intensity</strong>
+            <UTooltip
+              text="Intensity"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              > 
+                {{ item.intensity }}
+              </UBadge>
+            </UTooltip>
+          </div>
+          <div class="flex items-center mb2 gap-2">
+            <UTooltip
+              text="Position"
+            >
+              <i
+                class="i-iconoir-axes mr1"
+              />
+            </UTooltip>
+            
+            <UTooltip
+              text="X"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.position.x) }}
+              </UBadge>
+            </UTooltip>
+            <UTooltip
+              text="Y"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.position.y) }}
+              </UBadge>
+            </UTooltip>
+            <UTooltip
+              text="Z"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.position.z) }}
+              </UBadge>
+            </UTooltip>
+          </div>
+          <div class="flex items-center mb2 gap-2">
+            <UTooltip
+              text="Rotation"
+            >
+              <i class="i-carbon-rotate-clockwise mr-1" />
+            </UTooltip>
+            
+            <UTooltip
+              text="X"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.rotation.x) }}
+              </UBadge>
+            </UTooltip>
+            <UTooltip
+              text="Y"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.rotation.y) }}
+              </UBadge>
+            </UTooltip>
+            <UTooltip
+              text="Z"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.rotation.z) }}
+              </UBadge>
+            </UTooltip>
+          </div>
+          <div
+            v-if="item.scale"
+            class="flex items-center mb2 gap-2"
+          >
+            <UTooltip
+              text="Scale"
+            >
+              <i class="i-iconoir-ellipse-3d-three-points mr-1" />
+            </UTooltip>
+            
+            <UTooltip
+              text="X"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.scale?.x) }}
+              </UBadge>
+            </UTooltip>
+            <UTooltip
+              text="Y"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.scale?.y) }}
+              </UBadge>
+            </UTooltip>
+            <UTooltip
+              text="Z"
+            >
+              <UBadge
+                color="gray"
+                variant="soft"
+              >
+                {{ roundNumber(item.scale?.z) }}
+              </UBadge>
+            </UTooltip>
+          </div>
+        </div>
+      </template>
+    </div>
+  </div>
+</template>

+ 23 - 0
plugins/vite-plugin-tres/client/components/programs-module/index.vue

@@ -0,0 +1,23 @@
+<script setup lang="ts">
+const { renderer } = useDevtoolsHook()
+
+const icons: Record<string, string> = {
+  shaderMaterial: 'i-file-icons-vertexshader',
+}
+
+const programs = computed(() => renderer.info.programs.map(
+  item => ({
+    ...item,
+    icon: icons[item.type] || 'i-file-icons-vertexshader',
+    uniforms: item.getUniforms(),
+    attributes: item.getAttributes(),
+  })))
+</script>
+
+<template>
+  <ProgramsModuleItem
+    v-for="item in programs"
+    :key="item.id"
+    :item="item"
+  />
+</template>

+ 58 - 0
plugins/vite-plugin-tres/client/components/programs-module/item.vue

@@ -0,0 +1,58 @@
+<script setup lang="ts">
+import type { ProgramObject } from '~/types'
+
+withDefaults(defineProps<{
+  item: ProgramObject
+  depth?: number
+}>(), {
+  depth: 0,
+})
+
+const isExpanded = ref(false)
+</script>
+
+<template>
+  <div
+    class="text-sm text-gray-400 font-mono"
+  >
+    <div
+      class="flex gap-2 items-end cursor-pointer pt2 mb2"
+      @click="isExpanded = !isExpanded"
+    >
+      <span
+        v-if="depth > 0"
+        class="h-1 border-b border-gray-300 w-4"
+      />
+      <div class="flex gap-2 items-center -mb2.5">
+        <i :class="item.icon" />
+        <!-- <Icon :name="item.icon" /> -->
+        <!-- <i :class="item.icon" /> -->{{ item.type }} <UBadge
+          v-if="item.name "
+          variant="soft"
+        >
+          {{ item.name }}
+        </UBadge>
+      </div>
+    </div>
+    <div
+      v-if="isExpanded"
+    >
+      <div class="p4 text-gray-400 text-xs font-mono">
+        <p class="text-xs font-bold text-gray-600 mb2">
+          Uniforms
+        </p>
+        <div
+          v-for="[key, value] in Object.entries(item.uniforms.map)"
+          :key="key"
+        >
+          {{ key }} <UBadge
+            color="gray"
+            variant="soft"
+          >
+            {{ value?.cache[value?.cache.length - 1] }}
+          </UBadge>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>

+ 200 - 0
plugins/vite-plugin-tres/client/composables/useDevtoolsHook.ts

@@ -0,0 +1,200 @@
+import type { TresContext, TresObject } from '@tresjs/core'
+import type { Scene, WebGLRenderer } from 'three'
+import type { SceneGraphObject } from '../types'
+
+interface FPSState {
+  value: number
+  accumulator: number[]
+  lastLoggedTime: number
+  logInterval: number
+}
+
+interface MemoryState {
+  currentMem: number
+  averageMem: number
+  maxMemory: number
+  allocatedMem: number
+  accumulator: number[]
+  lastLoggedTime: number
+  logInterval: number
+}
+
+interface RendererState {
+  info: {
+    render: {
+      frame: number
+      calls: number
+      triangles: number
+      points: number
+      lines: number
+    }
+    memory: {
+      geometries: number
+      textures: number
+    }
+    programs: WebGLProgram[]
+  }
+}
+
+interface DevtoolsHookReturn {
+  scene: {
+    objects: number
+    graph: Record<string, unknown>
+    value: Scene | undefined
+  }
+  fps: FPSState
+  memory: MemoryState
+  renderer: RendererState
+}
+
+const scene = reactive<{
+  objects: number
+  graph: Record<string, unknown>
+  value: Scene | undefined
+}>({
+  objects: 0,
+  graph: {},
+  value: undefined,
+})
+
+const gl = {
+  fps: reactive<FPSState>({
+    value: 0,
+    accumulator: [],
+    lastLoggedTime: Date.now(),
+    logInterval: 1000,
+  }),
+  memory: reactive<MemoryState>({
+    currentMem: 0,
+    averageMem: 0,
+    maxMemory: 0,
+    allocatedMem: 0,
+    accumulator: [],
+    lastLoggedTime: Date.now(),
+    logInterval: 1000,
+  }),
+  renderer: reactive<RendererState>({
+    info: {
+      render: {
+        frame: 0,
+        calls: 0,
+        triangles: 0,
+        points: 0,
+        lines: 0,
+      },
+      memory: {
+        geometries: 0,
+        textures: 0,
+      },
+      programs: [],
+    },
+  }),
+}
+
+const icons: Record<string, string> = {
+  scene: 'i-carbon-web-services-container',
+  perspectivecamera: 'i-carbon-video',
+  mesh: 'i-carbon-cube',
+  group: 'i-carbon-group-objects',
+  ambientlight: 'i-carbon-light',
+  directionallight: 'i-carbon-light',
+  spotlight: 'i-iconoir-project-curve-3d',
+  position: 'i-iconoir-axes',
+  rotation: 'i-carbon-rotate-clockwise',
+  scale: 'i-iconoir-ellipse-3d-three-points',
+  bone: 'i-ph-bone',
+  skinnedmesh: 'carbon:3d-print-mesh',
+}
+
+function createNode(object: TresObject) {
+  const node: SceneGraphObject = {
+    name: object.name,
+    type: object.type,
+    icon: icons[object.type.toLowerCase()] || 'i-carbon-cube',
+    position: {
+      x: object.position.x,
+      y: object.position.y,
+      z: object.position.z,
+    },
+    rotation: {
+      x: object.rotation.x,
+      y: object.rotation.y,
+      z: object.rotation.z,
+    },
+    children: [],
+  }
+
+  if (object.type === 'Mesh') {
+    node.material = object.material
+    node.geometry = object.geometry
+    node.scale = {
+      x: object.scale.x,
+      y: object.scale.y,
+      z: object.scale.z,
+    }
+  }
+
+  if (object.type.includes('Light')) {
+    node.color = object.color.getHexString()
+    node.intensity = object.intensity
+  }
+  return node
+}
+
+function getSceneGraph(scene: TresObject) {
+  
+  function buildGraph(object: TresObject, node: SceneGraphObject) {
+    object.children.forEach((child: TresObject) => {
+      const childNode = createNode(child)
+      node.children.push(childNode)
+      buildGraph(child, childNode)
+    })
+  }
+
+  const root = createNode(scene)
+  buildGraph(scene, root)
+
+  return root
+}
+
+function countObjectsInScene(scene: Scene) {
+  let count = 0
+
+  scene.traverse((object) => {
+    // Check if the object is a 3D object
+    if (object.isObject3D) {
+      count++
+    }
+  })
+
+  return count
+}
+
+export function useDevtoolsHook(): DevtoolsHookReturn {
+  // Connect with Core
+  const tresGlobalHook = {
+    cb(context: TresContext) {
+      scene.value = context.scene.value
+      scene.objects = countObjectsInScene(context.scene.value)
+      Object.assign(gl.renderer.info.render, context.renderer.value.info.render)
+      Object.assign(gl.renderer.info.memory, context.renderer.value.info.memory)
+      gl.renderer.info.programs = [...context.renderer.value.info.programs as WebGLProgram[]]
+      Object.assign(gl.fps, context.perf.fps)
+      gl.fps.accumulator = [...context.perf.fps.accumulator]
+      Object.assign(gl.memory, context.perf.memory)
+      gl.memory.accumulator = [...context.perf.memory.accumulator]
+      scene.graph = getSceneGraph(context.scene.value as unknown as TresObject)
+      /* 
+      console.log('Devtools hook updated', context.renderer.value.info.render.triangles) */
+    },
+  }
+
+  window.parent.parent.__TRES__DEVTOOLS__ = tresGlobalHook
+
+  return {
+    scene,
+    fps: gl.fps,
+    memory: gl.memory,
+    renderer: gl.renderer,
+  }
+}

+ 6 - 0
plugins/vite-plugin-tres/client/global.d.ts

@@ -0,0 +1,6 @@
+interface Window {
+  __TRES__DEVTOOLS__?: {
+    cb: Function;
+    // You can add other properties of __TRES__DEVTOOLS__ here if needed
+  };
+}

+ 26 - 0
plugins/vite-plugin-tres/client/nuxt.config.ts

@@ -0,0 +1,26 @@
+import { resolve } from 'pathe'
+
+export default defineNuxtConfig({
+  ssr: false,
+  modules: [
+    '@nuxt/devtools-ui-kit',
+    '@unocss/nuxt',
+    '@nuxt/ui',
+    'nuxt-icon',
+  ],
+  nitro: {
+    output: {
+      publicDir: resolve(__dirname, '../dist/client'),
+    },
+  },
+  nuxtIcon: {
+    size: '30px', // default <Icon> size applied
+    class: 'icon', // default <Icon> class applied
+    aliases: {
+      mesh: 'carbon:cube',
+    },
+  },
+  /* app: {
+    baseURL: '/__tres_devtools',
+  }, */
+})

+ 5 - 0
plugins/vite-plugin-tres/client/package.json

@@ -0,0 +1,5 @@
+{
+  "name": "@tresjs/devtools-client",
+  "type": "module",
+  "private": true
+}

+ 98 - 0
plugins/vite-plugin-tres/client/pages/index.vue

@@ -0,0 +1,98 @@
+<!-- eslint-disable max-len -->
+<script setup lang="ts">
+import { useDevtoolsClient } from '@nuxt/devtools-kit/iframe-client'
+
+const client = useDevtoolsClient()
+
+// Scene Graph
+const { scene, memory, fps } = useDevtoolsHook()
+</script>
+
+<template>
+  <div class="relative n-bg-base flex flex-col h-screen">
+    <header
+      class="p4 flex items-center justify-between hover:bg-active"
+      border="b base"
+    >
+      <div class="flex items-center gap-4">
+        <img
+        
+          src="/logo.svg"
+          alt="tres logo"
+        >
+        <h2 class="text-xl opacity-60 font-bold">
+          TresJS DevTools
+        </h2>
+      </div>  
+      <div class="flex items-center gap-2">
+        <UButton
+          variant="ghost"
+          color="white"
+          size="sm"
+          icon="i-carbon-document"
+          target="_blank"
+          to="https://docs.tresjs.org/"
+        />
+        <UButton
+          variant="ghost"
+          color="white"
+          size="sm"
+          icon="i-iconoir-github"
+          target="_blank"
+          to="https://github.com/Tresjs/nuxt"
+        />
+        <UButton
+          variant="solid"
+          color="white"
+          size="sm"
+          target="_blank"
+          class="ml2"
+          to="https://github.com/Tresjs/nuxt/issues/new?labels=enhancement&template=feature_request.yml"
+        >
+          Request feature
+        </UButton>
+      </div>
+    </header>
+ 
+    <div
+      v-if="client && scene.objects > 0"
+      class="flex flex-col gap-2"
+    >
+      <NSectionBlock
+        icon="i-iconoir-movie"
+        text="Scene Graph"
+        :description="`Total Objects ${scene.objects}`"
+      >
+        <SceneGraphItem :item="scene.graph" />
+      </NSectionBlock>
+      <NSectionBlock
+        icon="i-iconoir-dashboard-speed"
+        text="Performance"
+      >
+        <template #actions>
+          <NBadge n="green">
+            FPS: {{ fps.value }}
+          </NBadge>
+          <NBadge
+            n="yellow"
+          >
+            Memory: {{ Math.round(memory?.currentMem) }}MB
+          </NBadge>
+        </template>
+        <template #default>
+          <PerformanceMonitor />
+        </template>
+      </NSectionBlock>
+    </div>
+    <div v-else-if="scene.objects === 0">
+      <div class="p4 h-full">
+        <NLoading />
+      </div>
+    </div>
+    <div v-else>
+      <NTip n="yellow">
+        Failed to connect to the client. Did you open this page inside Nuxt DevTools?
+      </NTip>
+    </div>
+  </div>
+</template>

+ 5 - 0
plugins/vite-plugin-tres/client/pnpm-lock.yaml

@@ -0,0 +1,5 @@
+lockfileVersion: '6.0'
+
+settings:
+  autoInstallPeers: true
+  excludeLinksFromLockfile: false

+ 5 - 0
plugins/vite-plugin-tres/client/public/logo-dark.svg

@@ -0,0 +1,5 @@
+<svg width="44" height="10" viewBox="0 0 44 10" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M5.14255 1.42916C5.53095 0.781817 6.46913 0.781816 6.85753 1.42915L11.0913 8.4855C11.4913 9.15203 11.0111 10 10.2338 10H1.76623C0.988935 10 0.508822 9.15203 0.908736 8.4855L5.14255 1.42916Z" fill="#82DBC5"/>
+<rect x="19" y="1" width="9" height="9" rx="1" fill="#f2f2f2"/>
+<circle cx="39.5" cy="5.5" r="4.5" fill="#EFAC35"/>
+</svg>

+ 5 - 0
plugins/vite-plugin-tres/client/public/logo.svg

@@ -0,0 +1,5 @@
+<svg width="44" height="10" viewBox="0 0 44 10" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M5.14255 1.42916C5.53095 0.781817 6.46913 0.781816 6.85753 1.42915L11.0913 8.4855C11.4913 9.15203 11.0111 10 10.2338 10H1.76623C0.988935 10 0.508822 9.15203 0.908736 8.4855L5.14255 1.42916Z" fill="#82DBC5"/>
+<rect x="19" y="1" width="9" height="9" rx="1" fill="#4F4F4F"/>
+<circle cx="39.5" cy="5.5" r="4.5" fill="#EFAC35"/>
+</svg>

+ 65 - 0
plugins/vite-plugin-tres/client/types/index.ts

@@ -0,0 +1,65 @@
+import type { BufferGeometry, Material, Scene, WebGLRenderer } from 'three'
+
+export interface SceneGraphObject {
+  name: string
+  type: string
+  icon: string
+  position: {
+    x: number
+    y: number
+    z: number
+  }
+  rotation: {
+    x: number
+    y: number
+    z: number
+  }
+  scale?: {
+    x: number
+    y: number
+    z: number
+  }
+  color?: string
+  intensity?: number
+  material?: Material
+  geometry?: BufferGeometry
+  children: SceneGraphObject[]
+  [key: string]: any
+}
+
+export interface MemoryUsageData {
+  currentMem: number
+  averageMem: number
+  allocatedMem: number
+  maxMemory: number
+  accumulator: number[]
+  lastLoggedTime: number
+  logInterval: number
+}
+
+export interface FpsData {
+  value: number
+  accumulator: number[]
+  lastLoggedTime: number
+  logInterval: number
+}
+
+// Define the structure of the performance data
+export interface PerfData {
+  fps: FpsData
+  memory: MemoryUsageData // Adjust 'any' to a more specific type as needed
+  gl: WebGLRenderer | undefined
+  scene: Scene | undefined
+}
+
+export interface ProgramObject {
+  type: string
+  name: string
+  id: number
+  vertexShader: string
+  fragmentShader: string
+  uniforms: Record<string, unknown>
+  attributes: Record<string, unknown>
+  program: WebGLProgram
+  usedTimes: number
+}

+ 1 - 0
plugins/vite-plugin-tres/client/utils/index.ts

@@ -0,0 +1 @@
+export * from './perf'

+ 34 - 0
plugins/vite-plugin-tres/client/utils/perf.ts

@@ -0,0 +1,34 @@
+import type { TresObject } from '@tresjs/core'
+import type { Scene } from 'three'
+
+export function calculateMemoryUsage(object: TresObject | Scene) {
+  let totalMemory = 0
+
+  object.traverse((node: TresObject) => {
+    if (node.isMesh && node.geometry) {
+      const geometry = node.geometry
+      const verticesMemory = geometry.attributes.position.count * 3 * Float32Array.BYTES_PER_ELEMENT
+      const facesMemory = geometry.index ? geometry.index.count * Uint32Array.BYTES_PER_ELEMENT : 0
+      const normalsMemory 
+        = geometry.attributes.normal ? geometry.attributes.normal.count * 3 * Float32Array.BYTES_PER_ELEMENT : 0
+      const uvsMemory = geometry.attributes.uv ? geometry.attributes.uv.count * 2 * Float32Array.BYTES_PER_ELEMENT : 0
+
+      const geometryMemory = verticesMemory + facesMemory + normalsMemory + uvsMemory
+      totalMemory += geometryMemory
+    }
+  })
+
+  return totalMemory
+}
+
+export function bytesToKB(bytes: number): string {
+  return (bytes / 1024).toFixed(2)
+}
+
+export function bytesToMB(bytes: number): string {
+  return (bytes / 1024 / 1024).toFixed(2)
+}
+
+export function bytesToGB(bytes: number): string {
+  return (bytes / 1024 / 1024 / 1024).toFixed(2)
+}

+ 63 - 0
plugins/vite-plugin-tres/package.json

@@ -0,0 +1,63 @@
+{
+  "name": "@tresjs/devtools",
+  "sideEffects": false,
+  "exports": {
+    ".": {
+      "types": "./dist/index.d.ts",
+      "import": "./dist/index.mjs",
+      "require": "./dist/index.cjs"
+    }
+  },
+  "main": "./dist/index.cjs",
+  "module": "./dist/index.mjs",
+  "types": "./dist/index.d.ts",
+  "files": [
+    "dist"
+  ],
+  "scripts": {
+    "build": "unbuild",
+    "build-post": "vite build",
+    "stub": "unbuild --stub",
+    "dev": "nr stub && vite",
+    "update-post": "vite build",
+    "client:dev": "nuxi dev client --port 3333"
+  },
+  "peerDependencies": {
+    "three": ">=0.133"
+  },
+  "dependencies": {
+    "@nuxt/devtools-kit": "^1.0.5",
+    "@nuxt/kit": "^3.8.2",
+    "@nuxt/ui": "^2.11.1",
+    "@tresjs/core": "3.6.0-next.0",
+    "@tresjs/nuxt": "2.0.1-next.0",
+    "@types/three": "^0.159.0",
+    "@unocss/nuxt": "^0.58.0",
+    "@vueuse/core": "^10.7.1",
+    "sirv": "^2.0.4",
+    "vue": "^3.4.3",
+    "vue-router": "^4.2.5"
+  },
+  "devDependencies": {
+    "@alvarosabu/eslint-config-vue": "^0.4.0",
+    "@iconify-json/carbon": "^1.1.26",
+    "@iconify-json/file-icons": "^1.1.8",
+    "@iconify-json/iconoir": "^1.1.37",
+    "@iconify-json/ph": "^1.1.9",
+    "@nuxt/eslint-config": "^0.2.0",
+    "@nuxt/module-builder": "^0.5.4",
+    "@nuxt/schema": "^3.8.2",
+    "@nuxt/test-utils": "^3.8.1",
+    "@nuxt/devtools-ui-kit": "^1.0.6",
+    "@vitejs/plugin-vue": "^5.0.2",
+    "eslint": "^8.55.0",
+    "nuxt": "^3.9.0",
+    "nuxt-icon": "^0.6.7",
+    "unbuild": "^2.0.0",
+    "unocss": "^0.58.3",
+    "unplugin-auto-import": "^0.17.3",
+    "unplugin-vue-components": "^0.26.0",
+    "vite": "^5.0.10",
+    "three": "^0.160.0"
+  }
+}

+ 5 - 0
plugins/vite-plugin-tres/public/logo-dark.svg

@@ -0,0 +1,5 @@
+<svg width="44" height="10" viewBox="0 0 44 10" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M5.14255 1.42916C5.53095 0.781817 6.46913 0.781816 6.85753 1.42915L11.0913 8.4855C11.4913 9.15203 11.0111 10 10.2338 10H1.76623C0.988935 10 0.508822 9.15203 0.908736 8.4855L5.14255 1.42916Z" fill="#82DBC5"/>
+<rect x="19" y="1" width="9" height="9" rx="1" fill="#f2f2f2"/>
+<circle cx="39.5" cy="5.5" r="4.5" fill="#EFAC35"/>
+</svg>

+ 5 - 0
plugins/vite-plugin-tres/public/logo.svg

@@ -0,0 +1,5 @@
+<svg width="44" height="10" viewBox="0 0 44 10" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M5.14255 1.42916C5.53095 0.781817 6.46913 0.781816 6.85753 1.42915L11.0913 8.4855C11.4913 9.15203 11.0111 10 10.2338 10H1.76623C0.988935 10 0.508822 9.15203 0.908736 8.4855L5.14255 1.42916Z" fill="#82DBC5"/>
+<rect x="19" y="1" width="9" height="9" rx="1" fill="#4F4F4F"/>
+<circle cx="39.5" cy="5.5" r="4.5" fill="#EFAC35"/>
+</svg>

+ 48 - 0
plugins/vite-plugin-tres/src/index.ts

@@ -0,0 +1,48 @@
+import { existsSync } from 'node:fs';
+import { dirname, resolve } from 'node:path'
+import { fileURLToPath } from 'node:url'
+import sirv from 'sirv'
+import type { Plugin, ViteDevServer } from 'vite'
+
+export interface TresDevtoolOptions {
+  // Options
+}
+
+const DEVTOOLS_UI_ROUTE = '/__tres_devtools'
+const DEVTOOLS_UI_LOCAL_PORT = 3333
+  
+export default function TresDevtools(ctx: TresDevtoolOptions): Plugin {
+  async function configureServer(server: ViteDevServer) {
+    const __dirname = dirname(fileURLToPath(import.meta.url))
+    const clientPath = resolve('./client')
+
+    const devtoolsPath = resolve(__dirname, '../client/')
+
+    const isProductionBuild = existsSync(clientPath)
+
+    console.log(`[tres-devtools] isProductionBuild: ${isProductionBuild}`)
+
+    if (isProductionBuild) {
+      server.middlewares.use(DEVTOOLS_UI_ROUTE, sirv(devtoolsPath, {
+        single: true,
+        dev: true,
+      }))
+    } else {
+      server.config.server.proxy = {
+        [DEVTOOLS_UI_ROUTE]: {
+          target: `http://localhost:${DEVTOOLS_UI_LOCAL_PORT}`,
+          changeOrigin: true,
+          followRedirects: true,
+          rewrite: path => path.replace(DEVTOOLS_UI_ROUTE, ''),
+        },
+      }
+      console.log(`[tres-devtools] Proxying ${DEVTOOLS_UI_ROUTE} to http://localhost:${DEVTOOLS_UI_LOCAL_PORT}`)
+    }
+
+  }
+
+  return {
+    name: 'tres-devtools',
+    configureServer,
+  } as Plugin
+}

+ 33 - 0
plugins/vite-plugin-tres/vite.config.ts

@@ -0,0 +1,33 @@
+/* import { defineConfig } from 'vite'
+import Vue from '@vitejs/plugin-vue'
+import Components from 'unplugin-vue-components/vite'
+import AutoImport from 'unplugin-auto-import/vite'
+import UnoCSS from 'unocss/vite'
+import { unoConfig } from '@vue/devtools-ui/theme'
+
+export default defineConfig(({ command }) => ({
+  base: command === 'build' ? '/__tres_vue_devtools/' : '/',
+  server: {
+    port: 3333,
+    host: 'localhost',
+  },
+  plugins: [
+    UnoCSS(unoConfig),
+    Vue(),
+    Components({
+      dirs: 'client/components',
+      dts: 'client/components.d.ts',
+    }),
+    AutoImport({
+      imports: [
+        'vue',
+        'vue-router',
+        '@vueuse/core',
+      ],
+      dts: 'client/auto-imports.d.ts',
+    }),
+  ],
+  build: {
+    outDir: 'dist/client',
+  },
+})) */

文件差異過大導致無法顯示
+ 282 - 229
pnpm-lock.yaml


+ 2 - 0
pnpm-workspace.yaml

@@ -1,3 +1,5 @@
 packages:
   - docs
   - playground
+  - 'plugins/*'
+  - plugins/vite-plugin-tres/client-nuxt/

+ 22 - 7
src/devtools/plugin.ts

@@ -1,7 +1,7 @@
 import type {
-  App as DevtoolsApp } from '@vue/devtools-api'
+  App as DevtoolsApp,  } from '@vue/devtools-api'
 import {
-  setupDevtoolsPlugin,
+  addCustomTab
 } from '@vue/devtools-api'
 import { reactive } from 'vue'
 import type { Mesh, Object3D } from 'three'
@@ -99,14 +99,14 @@ function buildGraph(object: TresObject, node: SceneGraphObject) {
   })
 }
 
-const componentStateTypes: string[] = []
-const INSPECTOR_ID = 'tres:inspector'
+const DEVTOOLS_UI_ROUTE = '/__tres_devtools'
 
 const state = reactive({
   sceneGraph: null as SceneGraphObject | null,
 })
 export function registerTresDevtools(app: DevtoolsApp, tres: TresContext) {
-  setupDevtoolsPlugin(
+  // Legacy Chrome one
+  /* setupDevtoolsPlugin(
     {
       id: 'dev.esm.tres',
       label: 'TresJS 🪐',
@@ -169,7 +169,7 @@ export function registerTresDevtools(app: DevtoolsApp, tres: TresContext) {
                 },
               ],
             },
-          ] */
+          ] 
         }
       })
       let highlightMesh: Mesh | null = null
@@ -288,5 +288,20 @@ export function registerTresDevtools(app: DevtoolsApp, tres: TresContext) {
         }
       })
     },
-  )
+  ) */
+
+  addCustomTab({
+    // unique identifier
+    name: 'tres-vue-devtools',
+    // title to display in the tab
+    title: 'TresJS',
+    // any icon from Iconify, or a URL to an image
+    icon: 'https://raw.githubusercontent.com/Tresjs/tres/main/public/favicon.svg',
+    // iframe view
+    view: {
+      type: 'iframe',
+      src: DEVTOOLS_UI_ROUTE,
+    },
+    category: 'advanced',
+  })
 }

部分文件因文件數量過多而無法顯示