Minimal surface the controller needs from its host. Both OHLCVChart
and ChartEngine structurally satisfy it, so the compare module
depends on neither concrete class — keeping it independently importable and
tree-shakeable out of the base bundle. (Typed structurally rather than
importing OHLCVChart so this file pulls nothing heavy into a host that
does import { CompareController }.)
Minimal surface the controller needs from its host. Both OHLCVChart and ChartEngine structurally satisfy it, so the compare module depends on neither concrete class — keeping it independently importable and tree-shakeable out of the base bundle. (Typed structurally rather than importing
OHLCVChartso this file pulls nothing heavy into a host that doesimport { CompareController }.)