import type ChartScene from '../../lib/chartScene'; import { BasicMaterial } from '../../lib/interface'; type ControlConfig = { label: string; type: "color" | "checkbox" | "range" | "number" | "select"; options?: { label: string; value: string; }[]; min?: number; max?: number; step?: number; value: string | number | boolean; onChange: (value: any) => void; }; /** * Lightweight in-page helper panel for tweaking runtime options. * Intended for dev/debug use only and guarded by a config flag. */ export default class DebugHelper { chart: ChartScene; panel: HTMLDivElement; controlsContainer: HTMLDivElement; dragState: { isDragging: boolean; offsetX: number; offsetY: number; }; constructor(chart: ChartScene); enableDrag(handle: HTMLElement): void; buildControls(): void; addControl(control: ControlConfig): void; updateEarthColor(color: string): void; updateCountryAreaColor(color: string): void; updateCountryLineColor(color: string): void; updateCountryOpacity(opacity: number): void; updateCountryMaterial(materialKey: BasicMaterial): void; private createCountryMaterial; updateSpriteColor(color: string): void; updateSpriteVisibility(show: boolean): void; updateSpriteSize(size: number): void; updatePathColor(color: string): void; updatePathVisibility(show: boolean): void; updateScatterColor(color: string): void; updateScatterSize(size: number): void; updateEarthMaterial(materialKey: string): void; private createEarthMaterial; private syncOptionsConfig; destroy(): void; } export {};