Svelte 5 – an object could not be cloned

After I switched to Svelte 5 syntax I am getting this error when I pass a reactive variable to a function

let details = $state({
  user: '',
  pass: ''
 })

 ...
 await login(details) // <- error

but works if I destructure the state var

 await login({...details})

Why is destructuring needed in Svelte 5 but not 4, and why is it not mentioned in the migration guide?