\n\nWhere I use config then, it shows me typing error.\nWhen I switch to the legacy tsconfig, typing issue are gone.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\nTypecheck summary: \n\n\n\napp/layouts/default.vue:35:33 - error TS2339: Property 'title' does not exist on type '{}'.\n\n35 title: appConfig.information?.title,\n ~~~~~\n\napp/layouts/default.vue:36:39 - error TS2339: Property 'description' does not exist on type '{}'.\n\n36 description: appConfig.information?.description,\n ~~~~~~~~~~~\n\napp/layouts/default.vue:39:36 - error TS2339: Property 'socials' does not exist on type '{}'.\n\n39 github: appConfig.information?.socials?.github,\n ~~~~~~~\n\napp/layouts/default.vue:40:38 - error TS2339: Property 'socials' does not exist on type '{}'.\n\n40 linkedin: appConfig.information?.socials?.linkedin,\n ~~~~~~~\n\napp/layouts/default.vue:41:40 - error TS2339: Property 'birthdate' does not exist on type '{}'.\n\n41 isBirthday: appConfig.information?.birthdate ? isBirthday(appConfig.information?.birthdate) : false,\n ~~~~~~~~~\n\napp/layouts/default.vue:41:86 - error TS2339: Property 'birthdate' does not exist on type '{}'.\n\n41 isBirthday: appConfig.information?.birthdate ? isBirthday(appConfig.information?.birthdate) : false,\n ~~~~~~~~~\n\napp/layouts/default.vue:44:27 - error TS2339: Property 'icons' does not exist on type '{}'.\n\n44 normal: appConfig.ui?.icons?.normal as string[] ?? [],\n ~~~~~\n\napp/layouts/default.vue:45:29 - error TS2339: Property 'icons' does not exist on type '{}'.\n\n45 birthday: appConfig.ui?.icons?.birthday as string[] ?? [],\n ~~~~~\n\napp/middleware/title.global.ts:5:28 - error TS2571: Object is of type 'unknown'.\n\n5 const appConfigTitle = useAppConfig().information.title;\n ~~~~~~~~~~~~~~~~~~~~~~~~~~\n\napp/pages/index.vue:14:62 - error TS2339: Property 'messages' does not exist on type '{}'.\n\n14 const messages = useState('randomIndex', () => appConfig.ui?.messages?.sort(() => Math.random() - 0.5))\n ~~~~~~~~\n\nnuxt.schema.ts:3:16 - error TS2304: Cannot find name 'defineNuxtSchema'.\n\n3 export default defineNuxtSchema({\n ~~~~~~~~~~~~~~~~\n\nnuxt.schema.ts:3:16 - error TS2304: Cannot find name 'defineNuxtSchema'.\n\n3 export default defineNuxtSchema({\n ~~~~~~~~~~~~~~~~\n\nnuxt.schema.ts:3:16 - error TS2304: Cannot find name 'defineNuxtSchema'.\n\n3 export default defineNuxtSchema({\n ~~~~~~~~~~~~~~~~\n```",[3040,3043],{"name":3041,"color":3042},"pending triage","E99695",{"name":3044,"color":3045},"possible regression","B90A42",32768,"useAppConfig lose types from nuxt schema with new tsconfig","2025-07-25T22:51:01Z","https://github.com/nuxt/nuxt/issues/32768",0.6640028,{"description":3052,"labels":3053,"number":3061,"owner":3031,"repository":3062,"state":3032,"title":3063,"updated_at":3064,"url":3065,"score":3066},"### Environment\n\n- Operating System: Darwin\n- Node Version: v23.11.0\n- Nuxt Version: 3.17.3\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: npm@10.9.2\n- Builder: -\n- User Config: devtools, typescript, css, compatibilityDate, devServer, vite, runtimeConfig, app, ui, scripts, modules, sentry, sourcemap\n- Runtime Modules: @nuxt/ui@3.1.2, @pinia/nuxt@0.11.0, pinia-plugin-persistedstate/nuxt@4.3.0, @sentry/nuxt/module@9.19.0, @nuxt/scripts@0.11.7, @nuxt/eslint@1.4.0\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.1.2\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/r7ryl3\n\n### Description\n\nI recently upgrade to NuxtUI 3.1.2 (from 3.0.1) and It's impossible (or I don't know) how to deal with custom type for `InputMenu`, I got some types issues on `label-key`, `v-model`, `items`, `slots` as you can see in my reproduction.\n\n### Additional context\n\n\n\n### Logs\n\n```shell-script\n\n```",[3054,3055,3058],{"name":3025,"color":3026},{"name":3056,"color":3057},"v3","49DCB8",{"name":3059,"color":3060},"triage","ffffff",4182,"ui","Custom type with InputMenu","2025-05-19T12:22:28Z","https://github.com/nuxt/ui/issues/4182",0.6642571,{"description":3068,"labels":3069,"number":3072,"owner":3031,"repository":3031,"state":3073,"title":3074,"updated_at":3075,"url":3076,"score":3077},"### Environment\n\n------------------------------\n- Operating System: Linux\n- Node Version: v18.20.3\n- Nuxt Version: 3.14.1592\n- CLI Version: 3.16.0\n- Nitro Version: 2.10.4\n- Package Manager: npm@10.2.3\n- Builder: -\n- User Config: default\n- Runtime Modules: -\n- Build Modules: -\n------------------------------\n\n### Reproduction\n\nhttps://stackblitz.com/edit/github-qagkk8\n\n### Describe the bug\n\nHello, \n\nI'm running into an issue where typechecking is no longer working in `nuxt@3.14.1592`. \n\nTo reproduce the issue: \n\n1. In the minimal reproduction stackblitz, open the the terminal \n2. Execute `npm install` (to trigger `nuxt prepare`) \n3. Run the command `npm run check-types` (which is just a wrapper for `nuxt typecheck`) \n\n**Result**: The built-in Nuxt 3 typechecking functionality is broken. When the command from (3) is run, an error is thrown that the search string `\"/supportedTSExtensions = .*(?=;)/\"` is not found. \n\n**Desired behaviour**: I'd like to fix the issue so that typechecking works again. We use this in CI, and it's an important alarm bell for us. \n\n### Additional context\n\n\n\n\n\n### Logs\n\n```shell-script\n'Search string not found: \"/supportedTSExtensions = .*(?=;)/\"'\n\n ERROR Command failed with exit code 1: npx -p vue-tsc -p typescript vue-tsc --noEmit 11:35:21 AM\n\n at new ExecaError (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/chunks/index3.mjs:1188:1)\n at getFinalError (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/chunks/index3.mjs:1158:9)\n at makeError (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/chunks/index3.mjs:3638:16)\n at getAsyncResult (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/chunks/index3.mjs:7867:4)\n at handlePromise (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/chunks/index3.mjs:7850:17)\n at async Object.run (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/chunks/typecheck.mjs:112:9)\n at async runCommand$1 (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/shared/nuxi.f8a4d1b7.mjs:1679:16)\n at async runCommand$1 (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/shared/nuxi.f8a4d1b7.mjs:1670:11)\n at async runMain$1 (/home/.npm/_npx/b95349761371180e/node_modules/nuxi/dist/shared/nuxi.f8a4d1b7.mjs:1808:7)\n```",[3070,3071],{"name":3041,"color":3042},{"name":3044,"color":3045},30154,"closed","Built-in typechecking fails on `nuxt@3.14.1592`","2024-12-05T17:50:54Z","https://github.com/nuxt/nuxt/issues/30154",0.6340302,{"description":3079,"labels":3080,"number":3084,"owner":3031,"repository":3062,"state":3073,"title":3085,"updated_at":3086,"url":3087,"score":3088},"### Environment\n\n- Operating System: Linux\n- Node Version: v22.13.1\n- Nuxt Version: 3.16.0\n- CLI Version: 3.23.0\n- Nitro Version: 2.11.6\n- Package Manager: npm@11.1.0\n- Builder: -\n- User Config: app, build, colorMode, compatibilityDate, debug, devtools, future, hooks, i18n, icon, imports, modules, nitro, routeRules, runtimeConfig, security, ssr, sourcemap, css, telemetry, vite\n- Runtime Modules: @nuxt/eslint@1.2.0, @pinia/nuxt@0.10.1, @vueuse/nuxt@13.0.0, @nuxtjs/i18n@9.3.1, nuxt-security@2.2.0, @nuxt/ui@3.0.0\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.0.0\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/wonderful-violet-jrsqy9\n\n### Description\n\nI get a type error when using an array of strings for the `variant` key inside of `compoundVariants´:\n\n```ts\nexport default defineAppConfig({\n ui: {\n colors: {\n primary: \"green\",\n neutral: \"slate\",\n },\n select: {\n compoundVariants: [\n {\n color: \"primary\",\n variant: [\"outline\", \"subtle\"],\n class: \"data-[state='open']:ring\",\n },\n ],\n },\n },\n});\n```\n\n```\napp/app.config.ts:11:11 - error TS2322: Type 'string[]' is not assignable to type 'string'.\n\n11 variant: [\"outline\", \"subtle\"],\n ~~~~~~~\n```\n\nIt does work tho, so its only a type issue I think.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3081,3082,3083],{"name":3025,"color":3026},{"name":3056,"color":3057},{"name":3059,"color":3060},3579,"Type error in app config `compoundVariants`","2025-05-02T15:06:25Z","https://github.com/nuxt/ui/issues/3579",0.6370444,{"description":3090,"labels":3091,"number":3097,"owner":3031,"repository":3031,"state":3073,"title":3098,"updated_at":3099,"url":3100,"score":3101},"### Environment\r\n\r\n- Operating System: Linux\r\n- Node Version: v20.10.0\r\n- Nuxt Version: 3.9.3\r\n- CLI Version: 3.10.0\r\n- Nitro Version: 2.8.1\r\n- Package Manager: pnpm@8.14.0\r\n- Builder: -\r\n- User Config: -\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n\r\n### Reproduction\r\n\r\n[demo](https://codesandbox.io/p/devbox/wonderful-oskar-z7rr65?layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522clrt0vr5c00073b6h4l4ue82f%2522%252C%2522sizes%2522%253A%255B70%252C30%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522clrt0vr5b00023b6hj2wwll5v%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522clrt0yt4800dx3b6hdwcuoy3f%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522clrt0vr5c00063b6h9e9z391w%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clrt0vr5b00023b6hj2wwll5v%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clrt0vr5b00013b6h9x3gkevn%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Findex.html%2522%257D%255D%252C%2522id%2522%253A%2522clrt0vr5b00023b6hj2wwll5v%2522%252C%2522activeTabId%2522%253A%2522clrt0vr5b00013b6h9x3gkevn%2522%257D%252C%2522clrt0vr5c00063b6h9e9z391w%2522%253A%257B%2522id%2522%253A%2522clrt0vr5c00063b6h9e9z391w%2522%252C%2522activeTabId%2522%253A%2522clrt0zjd200hv3b6h7ozvll8j%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clrt0vr5c00053b6h45r2zyzk%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TASK_PORT%2522%252C%2522taskId%2522%253A%2522start%2522%252C%2522port%2522%253A5000%252C%2522path%2522%253A%2522%252F%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A3000%252C%2522id%2522%253A%2522clrt0zjd200hv3b6h7ozvll8j%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522path%2522%253A%2522%252F%2522%257D%255D%257D%252C%2522clrt0yt4800dx3b6hdwcuoy3f%2522%253A%257B%2522id%2522%253A%2522clrt0yt4800dx3b6hdwcuoy3f%2522%252C%2522activeTabId%2522%253A%2522clrt10fs700ny3b6hmq1omaw2%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clrt0ysad00dt3b6hxki1re00%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TERMINAL%2522%252C%2522shellId%2522%253A%2522clrt0ytau0064dph85umiep45%2522%257D%252C%257B%2522id%2522%253A%2522clrt10fs700ny3b6hmq1omaw2%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TERMINAL%2522%252C%2522shellId%2522%253A%2522clrt10fxo0073dph8gsf9fqy8%2522%257D%255D%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D)\r\n\r\n### Describe the bug\r\n\r\nlayer have tsconfig:\r\n```\r\n{\r\n // https://v3.nuxtjs.org/concepts/typescript\r\n \"extends\": \"./.nuxt/tsconfig.json\"\r\n}\r\n\r\n```\r\nwhen i have error.vue file in layer, will show error:\r\n\r\n\r\n\r\n### Additional context\r\n\r\nOriginal discussion here: https://github.com/nuxt/nuxt/issues/13367#issuecomment-1909631706\r\n\r\n### Logs\r\n\r\n_No response_",[3092,3093,3094],{"name":3019,"color":3020},{"name":3041,"color":3042},{"name":3095,"color":3096},"layers","006B75",25433,"failed to resolve \"extends\":\"./.nuxt/tsconfig.json\" ","2025-03-24T23:09:56Z","https://github.com/nuxt/nuxt/issues/25433",0.64364123,{"description":3103,"labels":3104,"number":3111,"owner":3031,"repository":3031,"state":3073,"title":3112,"updated_at":3113,"url":3114,"score":3115},"### Environment\r\n\r\n- Operating System: Linux\r\n- Node Version: v16.20.0\r\n- Nuxt Version: 3.7.3\r\n- CLI Version: 3.8.3\r\n- Nitro Version: 2.6.3\r\n- Package Manager: npm@9.4.2\r\n- Builder: -\r\n- User Config: typescript\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n\r\n### Reproduction\r\n\r\nNuxt 3.7.2- works\r\nhttps://stackblitz.com/edit/github-ajlxyx-zupgpe?file=package.json,index.d.ts\r\n\r\nNuxt 3.7.3 - doesn't work\r\nhttps://stackblitz.com/edit/github-ajlxyx?file=app.config.ts,app.vue,package.json\r\n\r\n### Describe the bug\r\n\r\nTry to run `npx nuxi typecheck`. `useAppConfig()` doesn't get types from `index.d.ts` in Nuxt 3.7.3.\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3105,3106,3107,3110],{"name":3019,"color":3020},{"name":3041,"color":3042},{"name":3108,"color":3109},"🔨 p3-minor","FBCA04",{"name":3044,"color":3045},23207,"Manually typing App Config doesn't work","2025-05-29T21:32:27Z","https://github.com/nuxt/nuxt/issues/23207",0.6455531,{"description":3117,"labels":3118,"number":3124,"owner":3031,"repository":3031,"state":3073,"title":3125,"updated_at":3126,"url":3127,"score":3128},"### Environment\r\n\r\n- Operating System: Darwin\r\n- Node Version: v20.11.0\r\n- Nuxt Version: 3.10.2\r\n- CLI Version: 3.10.1\r\n- Nitro Version: 2.8.1\r\n- Package Manager: npm@10.2.4\r\n- Builder: -\r\n- User Config: `devServer`, `nitro`, `routeRules`, `components`, `build`, `modules`, `primevue`, `experimental`, `typescript`, `devtools`\r\n- Runtime Modules: `@vueuse/nuxt@10.8.0`, `nuxt-svgo@4.0.0`, `nuxt-primevue@0.3.0`, `@nuxt/image@1.3.0`, `@pinia/nuxt@0.5.1`\r\n- Build Modules: -\r\n\r\n### Reproduction\r\n\r\n✅ `3.9.3`: https://stackblitz.com/edit/nuxt-3-9-3-typecheck \r\n❌ `3.10.3`: https://stackblitz.com/edit/nuxt-3-10-typecheck \r\n\r\n### Describe the bug\r\n\r\nAfter upgrading Nuxt from `v3.9.3` to `v3.10.2` some typings are not detected anymore. It looks like it's related to third-party packages with `exports` config in the `package.json`. I discovered that `moduleResolution` has been changed in the automatically generated `tsconfig.json` file.\r\n\r\n### Additional context\r\n\r\nSetting `moduleResolution` as `Node` should fix the problem. In the Nuxt `3.10` it was changed to `Bundler`, which looks like a breaking change in some cases.\r\n\r\nIn our case, we have a multifile/multitype package that stopped working during type-checking (the build is okay). I tried to set `moduleResolution` to `Node` back in Nuxt 3.10 and it seems like the type-checking issue has been fixed.\r\n\r\n```json5\r\n{\r\n // https://nuxt.com/docs/guide/concepts/typescript\r\n \"extends\": \"./.nuxt/tsconfig.json\",\r\n\r\n \"compilerOptions\": {\r\n \"moduleResolution\": \"Node\"\r\n }\r\n}\r\n```\r\n\r\n#25230 can be related, but I'm unsure because the Nuxt version there is `3.9`.\r\n\r\n### Logs\r\n\r\n_No response_",[3119,3120,3123],{"name":3019,"color":3020},{"name":3121,"color":3122},"3.x","29bc7f",{"name":3041,"color":3042},25929,"Typechecking issue after Nuxt upgrading 3.9 -> 3.10","2024-03-08T11:49:58Z","https://github.com/nuxt/nuxt/issues/25929",0.6525678,{"description":3130,"labels":3131,"number":3133,"owner":3031,"repository":3031,"state":3073,"title":3134,"updated_at":3135,"url":3136,"score":3137},"### Environment\n\n------------------------------\r\n- Operating System: Linux\r\n- Node Version: v18.18.0\r\n- Nuxt Version: 3.11.2\r\n- CLI Version: 3.11.1\r\n- Nitro Version: -\r\n- Package Manager: pnpm@8.15.3\r\n- Builder: -\r\n- User Config: devtools, modules, ui, colorMode\r\n- Runtime Modules: @nuxt/ui@2.15.2\r\n- Build Modules: -\r\n------------------------------\n\n### Reproduction\n\nhttps://stackblitz.com/edit/github-yurofm?file=package.json,nuxt.config.ts\n\n### Describe the bug\n\nWhen using a module, for example `@nuxt/ui`, and installing dependencies with `pnpm`, the extended type for NuxtConfig is not being picked up by Typescript (both `tsc` and `vue-tsc`). This leads to a type error in `nuxt.config.ts`: \r\n```\r\nnuxt.config.ts:5:3 - error TS2353: Object literal may only specify known properties, and 'ui' does not exist in type 'InputConfig\u003CNuxtConfig, ConfigLayerMeta>'.\r\n\r\n5 ui: {\r\n ~~\r\n\r\nFound 1 error in nuxt.config.ts:5\r\n```\r\n\r\nAdditionally, I found that:\r\n- the extended interface is present in `.nuxt/schema.d.ts`\r\n- removing `node_modules` and reinstalling with `npm` will fix the error\r\n- type casting the input parameter of `defineNuxtConfig` as `InputConfig\u003CNuxtConfig>` will circumvent the issue, but requires me to add `c12` as a dependency\n\n### Additional context\n\nThis is my first project using `pnpm`, but I decided to give it a go after I saw `nuxt` itself uses it. Because of that I was also surprised I did not find any other issues mentioning this. So perhaps this is a misconfiguration on my end, and people here know the answer straight away. But I decided to open a bug since I could easily reproduce the issue with Stackblitz.\n\n### Logs\n\n_No response_",[3132],{"name":3041,"color":3042},26921,"Typescript not picking up extended NuxtConfig interface when installing with pnpm","2024-09-04T14:52:29Z","https://github.com/nuxt/nuxt/issues/26921",0.6555034,{"labels":3139,"number":3142,"owner":3031,"repository":3031,"state":3073,"title":3143,"updated_at":3144,"url":3145,"score":3146},[3140,3141],{"name":3121,"color":3122},{"name":3025,"color":3026},11911,"type augmentation issues","2023-01-19T15:49:25Z","https://github.com/nuxt/nuxt/issues/11911",0.65583944,["Reactive",3148],{},["Set"],["ShallowReactive",3151],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f0IOAcudSyLiNBMXeVrILHsrBDxow1COkPDYy49dyPFU":-1},"/nuxt/nuxt/23791"]