import { __decorate } from "tslib";
import { attr } from '@ni/fast-element';
import { TreeItem as FoundationTreeItem, DesignSystem, treeItemTemplate as template } from '@ni/fast-foundation';
import { arrowExpanderUp16X16 } from '@ni/nimble-tokens/dist/icons/js';
import { styles } from './styles';
/**
 * A function that returns a nimble-tree-item registration for configuring the component with a DesignSystem.
 * Implements {@link @ni/fast-foundation#treeItemTemplate}
 *
 *
 * @public
 * @remarks
 * Generates HTML Element: \<nimble-tree-item\>
 *
 */
export class TreeItem extends FoundationTreeItem {
    constructor() {
        super(...arguments);
        /**
         * @internal
         */
        this.groupSelected = false;
    }
}
__decorate([
    attr({ attribute: 'group-selected', mode: 'boolean' })
], TreeItem.prototype, "groupSelected", void 0);
const nimbleTreeItem = TreeItem.compose({
    baseName: 'tree-item',
    baseClass: FoundationTreeItem,
    template,
    styles,
    expandCollapseGlyph: arrowExpanderUp16X16.data
});
DesignSystem.getOrCreate().withPrefix('nimble').register(nimbleTreeItem());
export const treeItemTag = 'nimble-tree-item';
//# sourceMappingURL=index.js.map