Today, nearing release of 1.0, the SvelteKit Docs added an example hand-rolled Service Worker Implementation and also points to Vite Plugin PWA, but I personally prefer to use Workbox Modules myself to not write the low-level bits myself but still own the logic.
Right on time, because I just released my article on how to do it:
Create an offline-first and installable PWA with SvelteKit and workbox-precaching
https://www.sarcevic.dev/offline-first-installable-pwa-sveltekit-workbox-precaching