chart-0714
Version:
Professional trading chart library with advanced customization for trading journal apps
49 lines (48 loc) • 1.48 kB
TypeScript
import { ChartData, Theme, ChartOptions } from '../types';
import { LineSeries } from '../core/LineSeriesManager';
interface ViewportInfo {
visibleRange: {
startTime: number;
endTime: number;
};
priceScale: {
min: number;
max: number;
};
timeToX: (time: number, width: number) => number;
priceToY: (price: number, height: number) => number;
}
export declare class LineSeriesRenderer {
private ctx;
private theme;
constructor(ctx: CanvasRenderingContext2D, theme: Theme, _options: ChartOptions);
/**
* 여러 라인 시리즈 렌더링
*/
render(series: LineSeries[], chartData: ChartData, viewport: ViewportInfo, width: number, height: number): void;
/**
* 단일 라인 시리즈 렌더링
*/
private renderSingleLine;
/**
* 라인 시리즈 전용 렌더링 (차트 데이터 없이)
*/
renderLineSeries(series: LineSeries[], viewport: ViewportInfo, width: number, height: number): void;
/**
* 호버 포인트 렌더링
*/
renderHoverPoints(series: LineSeries[], hoverTime: number, viewport: ViewportInfo, width: number, height: number): void;
/**
* 범례 렌더링
*/
renderLegend(series: LineSeries[], x: number, y: number): void;
/**
* 이진 탐색으로 시간 인덱스 찾기
*/
private findTimeIndex;
/**
* 테마 업데이트
*/
updateTheme(theme: Theme): void;
}
export {};