import * as React from 'react';
import { TreeNode } from './Tree';
import { TreeLayerProps } from './TreeLayer';
import { SingleChildGitTree } from './util';
interface SingleChildTreeLayerProps extends TreeLayerProps {
    childrenEntries: SingleChildGitTree[];
}
/**
 * SingleChildTreeLayers are directories that are the only child of a parent directory.
 * These will automatically render and expand, so users don't need to
 * click each nested directory if there's no additional content to see.
 * There are no network requests made in single child layers. Rather, this layer's parent
 * will pass the entries this layer needs to load in `props.childrenEntries`.
 */
export declare class SingleChildTreeLayer extends React.Component<SingleChildTreeLayerProps> {
    node: TreeNode;
    constructor(props: SingleChildTreeLayerProps);
    componentDidMount(): void;
    componentDidUpdate(prevProps: SingleChildTreeLayerProps): void;
    shouldComponentUpdate(nextProps: SingleChildTreeLayerProps): boolean;
    render(): JSX.Element | null;
    /**
     * Non-root tree layers call this to activate a prefetch request in the root tree layer
     */
    private invokeOnHover;
    private handleTreeClick;
    /**
     * noopRowClick is the click handler for <a> rows of the tree element
     * that shouldn't update URL on click w/o modifier key (but should retain
     * anchor element properties, like right click "Copy link address").
     */
    private noopRowClick;
    /**
     * linkRowClick is the click handler for <Link>
     */
    private linkRowClick;
    private setChildNode;
}
export {};
//# sourceMappingURL=SingleChildTreeLayer.d.ts.map