import type { GraphicType, IGroupGraphicAttribute } from './../../vrender';
import { Rect } from './../../vrender';
import type { BaseTableAPI } from '../../ts-types/base-table';
interface IChartGraphicAttribute extends IGroupGraphicAttribute {
    canvas: HTMLCanvasElement;
    dataId: string | Record<string, string>;
    data: any;
    spec: any;
    axes: any;
    ClassType: any;
    chartInstance: any;
    cellPadding: number[];
    mode: string;
    modeParams: any;
    dpr: number;
    tableChartOption: any;
    col?: number;
    row?: number;
    detectPickChartItem?: boolean;
}
export declare const CHART_NUMBER_TYPE: number;
export declare class Chart extends Rect {
    type: GraphicType;
    attribute: IChartGraphicAttribute;
    chartInstance: any;
    activeChartInstance: any;
    activeChartInstanceLastViewBox: {
        x1: number;
        y1: number;
        x2: number;
        y2: number;
    };
    activeChartInstanceHoverOnMark: any;
    justShowMarkTooltip: boolean;
    justShowMarkTooltipTimer: number;
    delayRunDimensionHoverTimer: any;
    cacheCanvas: HTMLCanvasElement | {
        x: number;
        y: number;
        width: number;
        height: number;
        canvas: HTMLCanvasElement;
    }[];
    isShareChartSpec: boolean;
    constructor(isShareChartSpec: boolean, params: IChartGraphicAttribute);
    activate(table: BaseTableAPI): void;
    static temp: number;
    clearDelayRunDimensionHoverTimer(): void;
    deactivate(table: BaseTableAPI, { forceRelease, releaseChartInstance, releaseColumnChartInstance, releaseRowChartInstance, releaseAllChartInstance }?: {
        forceRelease?: boolean;
        releaseChartInstance?: boolean;
        releaseColumnChartInstance?: boolean;
        releaseRowChartInstance?: boolean;
        releaseAllChartInstance?: boolean;
    }): void;
    updateData(data: any): void;
    getViewBox(): {
        x1: number;
        y1: number;
        x2: number;
        y2: number;
    };
}
export {};
