import type { InternalListItemClassNameOptions } from "../list/listItemStyles.js";
/** @remarks \@since 6.0.0 */
export interface TreeClassNameOptions {
    className?: string;
}
/**
 * Apply the `className`s for a tree component. This will be type-safe if using
 * typescript.
 *
 * @remarks \@since 6.0.0
 */
export declare function tree(options?: TreeClassNameOptions): string;
/** @remarks \@since 6.0.0 */
export interface TreeItemClassNameOptions {
    className?: string;
    expander?: boolean;
    /**
     * Settings this to `true` will update the styles for the expander icon within
     * the tree item to rotate `down -> right` instead of `down -> left`.
     *
     * @defaultValue `false`
     */
    expanderLeft?: boolean;
}
/**
 * Apply the `className`s for a tree item component. This will be type-safe if
 * using typescript.
 *
 * @remarks \@since 6.0.0
 */
export declare function treeItem(options?: TreeItemClassNameOptions): string;
/** @remarks \@since 6.0.0 */
export interface TreeItemContentClassNameOptions extends InternalListItemClassNameOptions {
    /**
     * Set this
     *
     * @defaultValue `false`
     */
    link?: boolean;
    /**
     * Set this to `true` when the tree item is the current keyboard focus with
     * `aria-activedescendant`. This will apply the focus styles only while the
     * parent tree component is focused and the user is in keyboard mode.
     *
     *
     * @defaultValue `false`
     */
    focused?: boolean;
    /**
     * Set this to `true` hen the tree item has been selected by the user. The
     * default styles just
     *
     * @defaultValue `false`
     */
    selected?: boolean;
}
/**
 * @remarks \@since 6.0.0
 */
export declare function treeItemContent(options?: TreeItemContentClassNameOptions): string;
/**
 * @remarks \@since 6.0.0
 */
export interface TreeItemMediaClassNameOptions {
    className?: string;
    isLeafNode: boolean;
    isMediaLeftAddon: boolean;
}
/**
 * @remarks \@since 6.0.0
 */
export declare function treeItemMedia(options: TreeItemMediaClassNameOptions): string;
/** @remarks \@since 6.0.0 */
export interface TreeGroupClassNameOptions {
    className?: string;
}
/**
 * @remarks \@since 6.0.0
 */
export declare function treeGroup(options?: TreeGroupClassNameOptions): string;
