import { PanelMenuPassThrough, PanelMenuItemTemplateContext } from 'primeng/types/panelmenu'; export * from 'primeng/types/panelmenu'; import * as _angular_core from '@angular/core'; import { TemplateRef } from '@angular/core'; import { MotionOptions } from '@primeuix/motion'; import * as i2 from 'primeng/api'; import { MenuItem } from 'primeng/api'; import { BaseComponent } from 'primeng/basecomponent'; import * as i1 from 'primeng/bind'; import { Bind } from 'primeng/bind'; import { BaseStyle } from 'primeng/base'; declare class PanelMenuStyle extends BaseStyle { name: string; style: string; classes: { root: () => string[]; panel: string; header: ({ instance, item }: { instance: any; item: any; }) => (string | { 'p-panelmenu-header-active': any; 'p-disabled': any; })[]; headerContent: string; headerLink: string; headerIcon: string; headerLabel: string; contentContainer: ({ instance, processedItem }: { instance: any; processedItem: any; }) => (string | { 'p-panelmenu-expanded': any; })[]; contentWrapper: string; content: string; rootList: string; item: ({ instance, processedItem }: { instance: any; processedItem: any; }) => (string | { 'p-focus': any; 'p-disabled': any; })[]; itemContent: string; itemLink: string; itemIcon: string; itemLabel: string; submenuIcon: string; submenu: string; separator: string; badge: string; }; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵprov: _angular_core.ɵɵInjectableDeclaration; } /** * * PanelMenu is a hybrid of Accordion and Tree components. * * [Live Demo](https://www.primeng.org/panelmenu/) * * @module panelmenustyle * */ declare enum PanelMenuClasses { /** * Class name of the root element */ root = "p-panelmenu", /** * Class name of the panel element */ panel = "p-panelmenu-panel", /** * Class name of the header element */ header = "p-panelmenu-header", /** * Class name of the header content element */ headerContent = "p-panelmenu-header-content", /** * Class name of the header link element */ headerLink = "p-panelmenu-header-link", /** * Class name of the header icon element */ headerIcon = "p-panelmenu-header-icon", /** * Class name of the header label element */ headerLabel = "p-panelmenu-header-label", /** * Class name of the content container element */ contentContainer = "p-panelmenu-content-container", /** * Class name of the content element */ content = "p-panelmenu-content", /** * Class name of the root list element */ rootList = "p-panelmenu-root-list", /** * Class name of the item element */ item = "p-panelmenu-item", /** * Class name of the item content element */ itemContent = "p-panelmenu-item-content", /** * Class name of the item link element */ itemLink = "p-panelmenu-item-link", /** * Class name of the item icon element */ itemIcon = "p-panelmenu-item-icon", /** * Class name of the item label element */ itemLabel = "p-panelmenu-item-label", /** * Class name of the submenu icon element */ submenuIcon = "p-panelmenu-submenu-icon", /** * Class name of the submenu element */ submenu = "p-panelmenu-submenu", separator = "p-menuitem-separator" } /** * PanelMenu is a hybrid of Accordion and Tree components. * @group Components * @deprecated Use Menu component with `toggleable` option instead. */ declare class PanelMenu extends BaseComponent { componentName: string; constructor(); /** * An array of menuitems. * @group Props */ model: _angular_core.InputSignal; /** * Whether multiple tabs can be activated at the same time or not. * @group Props */ multiple: _angular_core.InputSignalWithTransform; /** * The motion options. * @group Props */ motionOptions: _angular_core.InputSignal; computedMotionOptions: _angular_core.Signal; /** * Current id state as a string. * @group Props */ id: _angular_core.InputSignal; /** * Index of the element in tabbing order. * @group Props */ tabindex: _angular_core.InputSignalWithTransform; /** * Template option of submenu icon. * @group Templates */ submenuIconTemplate: _angular_core.Signal | undefined>; /** * Template option of header icon. * @group Templates */ headerIconTemplate: _angular_core.Signal | undefined>; /** * Template option of item. * @param {PanelMenuItemTemplateContext} context - item context. * @see {@link PanelMenuItemTemplateContext} * @group Templates */ itemTemplate: _angular_core.Signal | undefined>; activeItem: _angular_core.WritableSignal; _componentStyle: PanelMenuStyle; bindDirectiveInstance: Bind; $pcPanelMenu: PanelMenu | undefined; private _internalId; $id: _angular_core.Signal; onAfterViewChecked(): void; getPTOptions(key: string, item: MenuItem, index: number): any; /** * Collapses open panels. * @group Method */ collapseAll(): void; changeActiveItem(_event: Event, item: MenuItem, _index?: number, selfActive?: boolean): void; getItemProp(item: MenuItem, name: string): any; getItemLabel(item: MenuItem): any; isItemActive(item: MenuItem): boolean | undefined; isItemVisible(item: MenuItem): boolean; isItemDisabled(item: MenuItem): any; isItemGroup(item: MenuItem): boolean; getRouterLinkActiveOptions(item: MenuItem): any; hasIcon(item: MenuItem): boolean; shouldEscapeLabel(item: MenuItem): boolean; hasBadge(item: MenuItem): boolean; getItemTemplateContext(item: MenuItem): { $implicit: MenuItem; }; getPanelId(index: number, item?: MenuItem): string; getHeaderId(item: MenuItem, index: number): string; getContentId(item: MenuItem, index: number): string; updateFocusedHeader(event: { originalEvent: Event; focusOnNext?: boolean; selfCheck?: boolean; }): void; changeFocusedHeader(element: HTMLElement | null): void; findNextHeader(panelElement: Element | null, selfCheck?: boolean): Element | null; findPrevHeader(panelElement: Element | null, selfCheck?: boolean): Element | null; findFirstHeader(): HTMLElement | null; findLastHeader(): HTMLElement | null; onHeaderClick(event: MouseEvent, item: MenuItem, index: number): void; onHeaderKeyDown(event: KeyboardEvent, item: MenuItem, index: number): void; onHeaderArrowDownKey(event: KeyboardEvent): void; onHeaderArrowUpKey(event: KeyboardEvent): void; onHeaderHomeKey(event: KeyboardEvent): void; onHeaderEndKey(event: KeyboardEvent): void; onHeaderEnterKey(event: KeyboardEvent, item: MenuItem, index: number): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class PanelMenuModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { PanelMenu, PanelMenuClasses, PanelMenuModule, PanelMenuStyle };