import { PropertyValues, LitElement } from 'lit';
import { KeynavListConfig } from '../internal';
import { TreeNode } from './tree-node.js';
/**
 * @element nve-tree
 * @description A tree view widget presents a hierarchical list. Any item in the hierarchy may have child items, and items that have children can expand or collapse to show or hide the children.
 * @since 1.2.0
 * @entrypoint \@nvidia-elements/core/tree
 * @slot - tree nodes
 * @cssprop --max-width
 * @cssprop --node-border - Border style for tree node depth indicator
 * @event open - Dispatched from a child nve-tree-node when opened.
 * @event close - Dispatched from a child nve-tree-node when closed.
 * @event select - Dispatched from a child nve-tree-node when its selection state changes.
 * @aria https://www.w3.org/WAI/ARIA/apg/patterns/treeview/
 *
 */
export declare class Tree extends LitElement {
    #private;
    /**
     * Determines whether all nodes can be in a selected state. Nodes can be in a single or multi select state.
     */
    selectable: 'single' | 'multi';
    /**
     * Determines whether the tree nodes should handle auto-expanding behavior.
     */
    behaviorExpand: boolean;
    /**
     * Determines whether the tree nodes should handle auto-select behavior.
     */
    behaviorSelect: boolean;
    /**
     * Determines if the node depth border renders.
     */
    border: boolean;
    static styles: import('lit').CSSResult[];
    static readonly metadata: {
        tag: string;
        version: string;
        children: string[];
    };
    _internals: ElementInternals;
    get nodes(): TreeNode[];
    /** @private */
    get keynavListConfig(): KeynavListConfig;
    /** @private */
    get openNodes(): TreeNode[];
    render(): import('lit-html').TemplateResult<1>;
    connectedCallback(): void;
    disconnectedCallback(): void;
    updated(props: PropertyValues<this>): Promise<void>;
}
