import * as i0 from '@angular/core'; import { Signal, OnInit, OnDestroy, InputSignal, TemplateRef, WritableSignal, AfterContentInit } from '@angular/core'; import * as rxjs from 'rxjs'; import * as i5 from '@angular/common'; import * as i6 from 'tableau-ui-angular/button'; import * as i7 from 'tableau-ui-angular/icon'; import * as i8 from 'tableau-ui-angular/tooltip'; declare class CollapsedContentDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class ExpandedContentDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class TreeNodeRegistry { readonly nodes: i0.WritableSignal; register(node: TabTreeNodeComponent): void; unregister(node: TabTreeNodeComponent): void; } interface TreeNodeInterface { $parent: Signal; $expanded: Signal; } declare class TabTreeNodeComponent implements OnInit, OnDestroy, TreeNodeInterface { readonly headerButtonId: string; private readonly hierarchyModeAutoParent; private readonly tabTree; readonly $expanded: i0.ModelSignal; readonly expanded$: rxjs.Observable; readonly expandedChange: i0.OutputEmitterRef; protected readonly $collapsedContent: Signal; protected readonly $expandedContent: Signal; readonly $expandButtonColor: InputSignal; readonly $template: Signal | undefined>; readonly $hierarchyId: InputSignal; readonly $hierarchyParentId: InputSignal; readonly $children: WritableSignal; readonly $parent: WritableSignal; readonly $allParentsExpanded: Signal; readonly $depth: WritableSignal; readonly $order: InputSignal; readonly $registry: InputSignal; ngOnInit(): void; ngOnDestroy(): void; setExpanded(expanded: boolean): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface TreeNodeTemplate { $childrenIndent: Signal; $expandButtonSize: Signal; $expandButtonColor: Signal; $expandButtonGap: Signal; $expandButtonTooltip: Signal; $expandButtonAlign: Signal; $keepButtonOffsetOnNoChildren: Signal; } declare class TabTreeComponent implements AfterContentInit, OnDestroy { private readonly selfElementRef; readonly $showRootGridLines: InputSignal; readonly $gridLinesBorder: InputSignal; readonly $gridLinesBorderRadius: InputSignal; readonly $expandButtonSize: InputSignal; readonly $expandButtonColor: InputSignal; readonly $expandButtonGap: InputSignal; readonly $expandButtonTooltip: InputSignal; readonly $expandButtonAlign: InputSignal; readonly $childrenIndent: InputSignal; readonly $keepButtonOffsetOnNoChildren: InputSignal; readonly $hierarchyMode: InputSignal<"auto" | "manual">; readonly registry: TreeNodeRegistry; templateParams: TreeNodeTemplate; constructor(); hierarchyModeAutoSetChildrenDepthAndId(allNodes: TabTreeNodeComponent[], node: TabTreeNodeComponent, parentNode: TabTreeNodeComponent | null, depth: number): void; hierarchyModeManualSetChildrenDepthAndId(child: TabTreeNodeComponent, currentChildDepth: number): void; protected readonly $childrenDisplayOrder: i0.Signal; getChildrenDisplayOrder(node: TabTreeNodeComponent): TabTreeNodeComponent[]; private resizeObserver; ngAfterContentInit(): void; ngOnDestroy(): void; existingGridLines: { id: string; element: HTMLDivElement; }[]; private redrawCounter; redrawGridLines(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface ExpandButtonTooltipParams { expand: TemplateRef | string | undefined; collapse: TemplateRef | string | undefined; position: 'bottom' | 'left' | 'right' | 'top'; margin?: string; context?: T | undefined; } declare class TableauUiTreeModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { CollapsedContentDirective, ExpandedContentDirective, TabTreeComponent, TabTreeNodeComponent, TableauUiTreeModule, TreeNodeRegistry }; export type { ExpandButtonTooltipParams };