import * as React from "react";
import { AFM } from "@gooddata/typings";
import { HeadlineElementType } from "../../../constants/visualizationTypes";
import { IHeadlineData } from "../../../interfaces/Headlines";
import { IChartConfig } from "../../../interfaces/Config";
export interface IHeadlineFiredDrillEventItemContext {
    localIdentifier: AFM.Identifier;
    value: string | null;
    element: HeadlineElementType;
}
export declare type IHeadlineFiredDrillEvent = (itemContext?: IHeadlineFiredDrillEventItemContext, elementTarget?: EventTarget) => void;
export interface IHeadlineVisualizationProps {
    data: IHeadlineData;
    config?: IChartConfig;
    onFiredDrillEvent?: IHeadlineFiredDrillEvent;
    onDrill?: IHeadlineFiredDrillEvent;
    onAfterRender?: () => void;
    disableDrillUnderline?: boolean;
}
/**
 * The React component that renders the Headline visualisation.
 */
export default class Headline extends React.Component<IHeadlineVisualizationProps> {
    static defaultProps: Partial<IHeadlineVisualizationProps>;
    constructor(props: IHeadlineVisualizationProps);
    componentDidMount(): void;
    componentDidUpdate(): void;
    render(): JSX.Element;
    private getDrillableClasses;
    private getPrimaryItemClasses;
    private getSecondaryItemClasses;
    private getValueWrapperClasses;
    private fireDrillEvent;
    private handleClickOnPrimaryItem;
    private handleClickOnSecondaryItem;
    private renderTertiaryItem;
    private renderSecondaryItem;
    private renderCompareItems;
    private renderHeadlineItem;
    private renderHeadlineItemAsValue;
    private renderHeadlineItemAsLink;
    private renderPrimaryItem;
}
