chart-0714
Version:
Professional trading chart library with advanced customization for trading journal apps
61 lines (60 loc) • 2.14 kB
TypeScript
import { Theme, ChartOptions, ChartData, ChartType } from '../types';
import { WebGLRenderer } from './WebGLRenderer';
import { UnifiedCoordinateSystem } from './UnifiedCoordinateSystem';
import { MainChartPanel } from '../panels/MainChartPanel';
import { VolumePanel } from '../panels/VolumePanel';
/**
* 렌더링 관련 기능을 통합 관리하는 매니저
* - 패널 관리
* - 렌더러 관리
* - 좌표계 관리
* - 테마 관리
*/
export declare class RenderingManager {
private panelManager;
private renderer;
private coordSystem;
private _theme;
private options;
private _container;
private chartType;
constructor(container: HTMLElement, theme: Theme, options: ChartOptions);
init(): Promise<void>;
setDataManager(dataManager: any): void;
setInteractionManager(interactionManager: any): void;
setPluginManager(pluginManager: any): void;
getMainPanel(): MainChartPanel | null;
getVolumePanel(): VolumePanel | null;
getPanels(): {
main: MainChartPanel | null;
volume: VolumePanel | null;
};
getPanel(type: string): MainChartPanel | VolumePanel | null;
render(data: ChartData, _indicators?: Map<string, any>): void;
setMouseCandleIndex(index: number): void;
setChartType(type: ChartType): void;
getChartType(): ChartType;
getCoordinateSystem(): UnifiedCoordinateSystem | null;
getRenderer(): WebGLRenderer | null;
resize(_width?: number, _height?: number): void;
updateTheme(theme: Theme): void;
updateOptions(options: Partial<ChartOptions>): void;
updateCandleColors(theme: Theme): void;
setVisibleRange(_startIndex: number, _endIndex: number): void;
pan(deltaX: number): void;
zoom(factor: number, centerX?: number): void;
zoomToRange(_startIndex: number, _endIndex: number): void;
getVisibleRange(): {
start: number;
end: number;
};
cssToCanvas(cssX: number, cssY: number): {
x: number;
y: number;
};
canvasToChart(canvasX: number, canvasY: number): {
time: number;
price: number;
};
dispose(): void;
}