18

In layout.server.ts I try to

import type { LayoutServerLoad } from './$types';

but the type can't be found:

'"./$types"' has no exported member named 'LayoutServerLoad'. Did you mean 'LayoutServerData'?

What do I need to do to get the type LayoutServerLoad (or PageLoad or PageServerLoad ...) in ./$types?

Paolo
  • 20,112
  • 21
  • 72
  • 113
Nausika
  • 495
  • 7
  • 13

2 Answers2

23
  • The file has to be called +layout.server.ts (or for another load action, one of the other fixed names, see docs)
  • The Vite dev server has to be running, which watches the files and generates the types when a file is changed
  • (The tsconfig.json has to extend .svelte-kit\tsconfig.json, which defines rootDirs, so the generated types are resolved. This should already be the case, judging by the suggestion for LayoutServerData.)
H.B.
  • 166,899
  • 29
  • 327
  • 400
1

For me, just an "npm update" worked.