Repro branch
repro/player-language-service-type-conflict on fork: https://github.com/shahabdsh/xlr/tree/repro/player-language-service-type-conflict
git clone https://github.com/shahabdsh/xlr.git
cd xlr
git checkout repro/player-language-service-type-conflict
pnpm install
pnpm exec tsc --noEmit -p repro/tsconfig.json # Expected: exit code 2
pnpm exec vitest run player-language-service-type-conflict # Expected: passes
Error
Types of property 'XLRService' are incompatible.
Types have separate declarations of a private property 'baseTypes'.
Root cause
Both @player-lang/json-language-service and @player-tools/json-language-service ship their own XLRService class with a private baseTypes property. TypeScript treats these as distinct types because private members contribute to nominal typing.