import * as React from 'react';
import { TreeItem2DragAndDropOverlayProps } from '../TreeItem2DragAndDropOverlay';
import { TreeItem2LabelInputProps } from '../TreeItem2LabelInput';
export interface TreeItemContentProps extends React.HTMLAttributes<HTMLElement> {
    className?: string;
    /**
     * Override or extend the styles applied to the component.
     */
    classes: {
        /** Styles applied to the root element. */
        root: string;
        /** State class applied to the content element when expanded. */
        expanded: string;
        /** State class applied to the content element when selected. */
        selected: string;
        /** State class applied to the content element when focused. */
        focused: string;
        /** State class applied to the element when disabled. */
        disabled: string;
        /** Styles applied to the Tree Item icon and collapse/expand icon. */
        iconContainer: string;
        /** Styles applied to the label element. */
        label: string;
        /** Styles applied to the checkbox element. */
        checkbox: string;
        /** Styles applied to the input element that is visible when editing is enabled. */
        labelInput: string;
        /** Styles applied to the content element when editing is enabled. */
        editing: string;
        /** Styles applied to the content of the items that are editable. */
        editable: string;
    };
    /**
     * The Tree Item label.
     */
    label?: React.ReactNode;
    /**
     * The id of the item.
     */
    itemId: string;
    /**
     * The icon to display next to the Tree Item's label.
     */
    icon?: React.ReactNode;
    /**
     * The icon to display next to the Tree Item's label. Either an expansion or collapse icon.
     */
    expansionIcon?: React.ReactNode;
    /**
     * The icon to display next to the Tree Item's label. Either a parent or end icon.
     */
    displayIcon?: React.ReactNode;
    dragAndDropOverlayProps?: TreeItem2DragAndDropOverlayProps;
    labelInputProps?: TreeItem2LabelInputProps;
}
export type TreeItemContentClassKey = keyof NonNullable<TreeItemContentProps['classes']>;
/**
 * @ignore - internal component.
 */
declare const TreeItemContent: React.ForwardRefExoticComponent<TreeItemContentProps & React.RefAttributes<HTMLDivElement>>;
export { TreeItemContent };
