import { IPoint } from "pixi.js"; import { DBase } from "./d-base"; import { DBaseStateSet } from "./d-base-state-set"; import { DChartSelectionStyle } from "./d-chart-selection"; import { DChartSeries } from "./d-chart-series"; import { DChartSeriesContainer } from "./d-chart-series-container"; import { EShape } from "./shape/e-shape"; export type DChartSelectionShapeNewShape = (state: DBaseStateSet) => EShape; export interface DChartSelectionShapeOptions { enable?: boolean; shape?: EShape | DChartSelectionShapeNewShape; style?: DChartSelectionStyle; state?: string; theme?: string | DThemeChartSelectionShape; } export interface DThemeChartSelectionShape { isEnabled(state: DBaseStateSet): boolean; newShape(state: DBaseStateSet): EShape; } export interface DChartSelectionShape { bind(container: DChartSeriesContainer): void; unbind(): void; set(container: DChartSeriesContainer, position: IPoint, mappedPosition: IPoint, series: DChartSeries | null): void; unset(): void; update(container: DChartSeriesContainer, position: IPoint, mappedPosition: IPoint, series: DChartSeries | null): boolean; }