//@ts-ignore
import React, { Component } from 'react';
import GcPdfViewer from '..';
import { StructTreeContent, StructTreeNode } from '../Models/ViewerTypes';
import { StructureTreeModel } from './types';
export type StructureTreeProps = {
    viewer: GcPdfViewer;
};
export declare class StructureTree extends Component<StructureTreeProps, StructureTreeModel> {
    private _mounted;
    private _textlayerreadyHandler;
    componentDidMount(): void;
    componentWillUnmount(): void;
    clearActivePageHighlight(raiseStateChanged?: boolean): void;
    clearMarkedContentHighlight(pageIndexToUpdate: number): void;
    onTextLayerReady(args: any): void;
    raiseStateChanged(): void;
    /**
     * Scroll StructTreeContent item into view.
     * @param structTreeContent
     * @param pageIndex
     */
    navigateStructTreeContent(structTreeContent: StructTreeContent, pageIndex: number): Promise<void>;
    toggleStructTreeNodeExpanded: (itemUid: string) => () => void;
    protected _onPageChevronButtonClick: (pageIndex: number) => () => void;
    protected _onPageButtonClick(pageIndex: number): void;
    navigatePage(pageIndex: number): Promise<void>;
    countStructTreeNodeChildren(structTreeNode: StructTreeNode): number;
    private renderStructureTreeNode;
//@ts-ignore
    renderStructureContentNode(structTreeContent: StructTreeContent, pageIndex: number, isSelected: boolean): JSX.Element;
//@ts-ignore
//@ts-ignore
    render(): React.JSX.Element;
    private _consumedClickTime;
    consumeClickEvent(): void;
    get isClickEventConsumed(): boolean;
}
