import { ChartObjectInterface } from "@rcsb/rcsb-charts/lib/RcsbChartComponent/ChartConfigInterface";
import React from "react";
import { ChartInterface, ChartState } from "@rcsb/rcsb-charts/lib/RcsbChartComponent/ChartComponent";
interface AbstractChartInterface extends Omit<ChartInterface, "chartComponentImplementation" | "dataProvider"> {
    attributeName: string;
}
interface AbstractChartState extends Partial<ChartState> {
    data: ChartObjectInterface[][];
}
export declare abstract class AbstractChartComponent extends React.Component<AbstractChartInterface, AbstractChartState> {
    private asyncSubscription;
    private subscription;
    readonly state: AbstractChartState;
    componentDidMount(): void;
    componentWillUnmount(): void;
    private unsubscribe;
    private subscribe;
    private updateChartMap;
    private asyncUpdate;
}
export {};
