chart-0714
Version:
Professional trading chart library with advanced customization for trading journal apps
43 lines (42 loc) • 1.76 kB
TypeScript
import { Candle, Marker, IndicatorConfig, DrawingOptions, DrawingToolType, IndicatorParams, ChartType } from './index';
/**
* Chart 인스턴스의 공개 인터페이스
*/
export interface IChart {
isReady(): boolean;
getState(): string;
on(event: 'stateChange', callback: (state: string) => void): void;
off(event: 'stateChange', callback: (state: string) => void): void;
waitUntilReady(): Promise<void>;
dispose(): void;
setData(candles: Candle[], immediateRender?: boolean): void;
appendData(candles: Candle[]): void;
clearData(): void;
addIndicator(type: string | IndicatorConfig, params?: IndicatorParams): string;
removeIndicator(id: string): void;
clearIndicators(): void;
toggleIndicator(id: string): void;
getIndicators(): IndicatorConfig[];
updateIndicator(id: string, config: Partial<IndicatorConfig>): void;
addSMA(period: number, color?: string): string;
addEMA(period: number, color?: string): string;
addDrawing(type: string, options?: DrawingOptions): void;
exportDrawings(): string;
importDrawings(jsonData: string): void;
clearDrawings(): void;
toImage(format?: 'png' | 'jpeg', quality?: number): Promise<Blob>;
addMarker(marker: Marker): string;
setMarkers(markers: Marker[]): void;
removeMarker(id: string): void;
clearMarkers(): void;
getMarkers(): Marker[];
setChartType(type: ChartType): void;
setTheme(theme: 'dark' | 'light'): void;
setDrawingTool(tool: DrawingToolType | null): void;
getDrawingTool(): DrawingToolType | null;
setMagneticMode(enabled: boolean): void;
getMagneticMode(): boolean;
resize(): void;
getPanelManager(): PanelManager | null;
}
export type PanelManager = unknown;