docs/plans/2026-04-15-slate-v2-custom-types-recovery.md
Recover site/examples/ts/custom-types.d.ts toward the legacy same-path contract,
repair any package typing drift that blocks that recovery, and only then clean up
the example fallout caused by the restored declaration path.
custom-types files and same-path drift rulessite/examples/ts/custom-types.d.ts as the source file path./custom-types to ./custom-types.dslate-react EditableTextBlocks declaration drift where neededdeclare module 'slate' block and fix the resulting example falloutdeclare module 'slate' block is not currently viable;
that was true until the current-only example element shapes were added back to
the same-path declaration file.packages/slate-react/dist/src/*.d.ts, so package type fixes are
invisible to site/tsconfig.json until declaration output changes too.Node.isElement / Node.isText were typed too narrowly for the
Editor.nodes(...) callback shape. That was package drift, not example drift.custom-types.d.ts, including chip, quote, ordered-list,
check-list, dynamic link:*, dynamic format:*, annotations, and table-cell
metadata like cellId.custom-types.d.tscustom-types.d.ts back under site/examples/ts/./custom-typesEditableTextBlocks declaration output to carry the generic
renderElement surface through the dist types the site consumescheck-lists.tsx to a stable source-close state under the recovered
declaration pathdeclare module 'slate' blockslate Node.isElement / Node.isText typing in source + distsite/tsconfig.json, package slate tsc,
package slate-react tsc, and file-level Biome