Gotchas
Sadly, SyncedStore has a ton of gotchas that, due to the nature of the types that it has, TypeScript can’t catch.
Array items don’t exist after being removed
let normalArray = [{ a: "a" }, { b: "b" }, { c: "c" }];
const item = normalArray[1]; // is {b:'b'}
normalArray.splice(2);
item; // is still {b:'b'}
while in SyncedStore land…
const anormalArray = $store.array;
const item = anormalArray[1]; // is {b:'b'}
anormalArray.splice(2);
item; // is undefined :(
Workaround by creating a new object:
const item = { ...anormalArray[1] };
// although if you have object or array children it may still break...