Back to Plate

Slate v2 `interfaces.ts` Dissection Plan

docs/plans/2026-04-10-slate-v2-interfaces-dissection-plan.md

53.0.62.3 KB
Original Source

Slate v2 interfaces.ts Dissection Plan

Goal

Stop treating interfaces.ts as the secret real owner of the public namespace surface.

Done

Remaining

Rule

  • public namespace paths should be real owners
  • interfaces.ts can stay as an explicit export surface, but not as the hidden home of the namespace logic
  • do not resurrect dead type shards just to reduce line count

Verification

Green in this turn:

sh
yarn exec tsc --noEmit --skipLibCheck --target es2022 --module esnext --moduleResolution bundler packages/slate/src/interfaces.ts packages/slate/src/interfaces/path.ts packages/slate/src/interfaces/point.ts packages/slate/src/interfaces/range.ts packages/slate/src/interfaces/location.ts packages/slate/src/interfaces/path-ref.ts packages/slate/src/interfaces/point-ref.ts packages/slate/src/interfaces/range-ref.ts packages/slate/src/interfaces/text.ts packages/slate/src/interfaces/element.ts packages/slate/src/interfaces/operation.ts packages/slate/src/interfaces/scrubber.ts packages/slate/src/interfaces/index.ts packages/slate/src/editor.ts packages/slate/src/index.ts packages/slate/src/range-ref-transform.ts packages/slate/src/create-editor.ts packages/slate/src/core.ts