import * as _angular_core from '@angular/core'; import { OnDestroy, ElementRef, InputSignal, WritableSignal, TemplateRef, AfterViewInit, OutputRefSubscription, PipeTransform } from '@angular/core'; import { ButtonMenuDirective } from 'tableau-ui-angular/menu'; import * as i4 from '@angular/common'; import * as i5 from 'tableau-ui-angular/icon'; import * as i6 from 'tableau-ui-angular/utils'; declare class MenuButtonComponent implements OnDestroy { readonly id: string; protected readonly contentElement: _angular_core.Signal>; readonly $disabled: InputSignal; readonly $loading: InputSignal; readonly $color: InputSignal<"error" | "plain" | "primary" | "secondary">; readonly $hoverToOpenSubMenuMs: InputSignal; readonly $actualHoverMs: WritableSignal; readonly updateChildrenHover: _angular_core.EffectRef; readonly $highlight: WritableSignal; highlightEffect: _angular_core.EffectRef; readonly highlightChange: _angular_core.OutputEmitterRef; readonly $children: _angular_core.Signal; readonly mouseoverChange: _angular_core.OutputEmitterRef; readonly $template: _angular_core.Signal>; readonly openSubMenu: _angular_core.OutputEmitterRef; readonly click: _angular_core.OutputEmitterRef; constructor(); hoverInterval: ReturnType | undefined; hoverstart: number; onMouseEnter(): void; onMouseLeave(): void; ngOnDestroy(): void; onMouseDown(e: Event): void; onClick(e: Event): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class MenuButtonGroupComponent implements OnDestroy, AfterViewInit { readonly nativeElement: ElementRef; readonly menu: ButtonMenuDirective; readonly $hoverToOpenSubMenuMs: InputSignal; readonly buttonClicked: _angular_core.OutputEmitterRef<{ button: MenuButtonComponent; event: Event; }>; protected readonly $children: _angular_core.Signal; private previousChildrenIds; readonly childrenEffect: _angular_core.EffectRef; readonly $menuGroupStack: WritableSignal; private readonly $height; private readonly $width; private viewInitialized; private readonly subs; ngAfterViewInit(): void; init(): void; ngOnDestroy(): void; addMenuGroup(parentButton?: MenuButtonComponent): IMenuGroup; updateSizes(): void; destroyGroupsUntil(id?: string): void; onFocusIn(): void; onFocusOut(): void; onKeyDown(event: KeyboardEvent): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface IMenuGroup { id: string; $top: WritableSignal; $left: WritableSignal; $position: WritableSignal<'absolute' | 'fixed'>; $minWidth: WritableSignal; parentButton: HTMLElement | null; buttons: readonly MenuButtonComponent[]; element: Element | null; mouseoverSubscriptions: OutputRefSubscription[]; openSubMenuSubscriptions: OutputRefSubscription[]; clickSubscriptions: OutputRefSubscription[]; highlightSubscriptions: OutputRefSubscription[]; } declare class EntriesPipe implements PipeTransform { transform(arr: readonly T[]): [number, T][]; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵpipe: _angular_core.ɵɵPipeDeclaration; } declare class TableauUiMenuButtonModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { MenuButtonComponent, MenuButtonGroupComponent, TableauUiMenuButtonModule };