Minimal host surface the controller needs. Both OHLCVChart and
ChartEngine satisfy it structurally — visibleCandleView is the thin
getter both expose — so the profile module depends on neither concrete class
and tree-shakes cleanly out of the base bundle. Typed structurally (rather
than importing OHLCVChart) so a host doing import { VolumeProfileController }
pulls nothing heavy in.
Minimal host surface the controller needs. Both OHLCVChart and ChartEngine satisfy it structurally —
visibleCandleViewis the thin getter both expose — so the profile module depends on neither concrete class and tree-shakes cleanly out of the base bundle. Typed structurally (rather than importingOHLCVChart) so a host doingimport { VolumeProfileController }pulls nothing heavy in.