/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { TemplateRef, QueryList, AfterContentChecked, AfterViewChecked, OnDestroy, ElementRef, Renderer2, OnInit } from '@angular/core';
import { PanelBarService } from "./panelbar.service";
import { PanelBarContentDirective } from "./panelbar-content.directive";
import { PanelBarItemTitleDirective } from "./panelbar-item-title.directive";
import { PanelBarItemModel } from './panelbar-item-model';
import { Subscription } from 'rxjs';
import { SVGIcon } from '@progress/kendo-svg-icons';
import * as i0 from "@angular/core";
/**
* Represents the PanelBar item component for Angular. Defines the items of the PanelBar.
*
* @example
* ```html
*
*
*
* ```
*/
export declare class PanelBarItemComponent implements OnInit, AfterContentChecked, AfterViewChecked, OnDestroy {
parent: PanelBarItemComponent;
private eventService;
private element;
private renderer;
/**
* Sets the title of the PanelBar item ([see example]({% slug items_panelbar %}#toc-titles)).
*/
title: string;
/**
* Allows the component to set the `"id"` property to each item.
* Used to set the `id` attributes of the nested elements and to enable the WAI-ARIA support.
*/
id: string;
/**
* Defines the icon that renders next to the title ([see example]({% slug items_panelbar %}#toc-title-icons)).
*
* @default ''
*/
icon: string;
/**
* Defines the icon that renders next to the title by using a custom CSS class
* ([see example]({% slug items_panelbar %}#toc-title-icons)).
*
* @default ''
*/
iconClass: string;
/**
* Defines an SVG icon to render.
* You can use either an [existing Kendo SVG icon](slug:svgicon_list) or a custom one.
*/
set svgIcon(icon: SVGIcon);
get svgIcon(): SVGIcon;
/**
* Defines the location of the image that displays next to the title
* ([see example]({% slug items_panelbar %}#toc-title-images)).
*
* @default ''
*/
imageUrl: string;
/**
* When set to `true`, disables a PanelBar item ([see example]({% slug items_panelbar %}#toc-disabled-state)).
*
* @default false
*/
disabled: boolean;
/**
* When set to `true`, expands the PanelBar item ([see example]({% slug items_panelbar %}#toc-expanded-state)).
*/
set expanded(value: boolean);
get expanded(): boolean;
/**
* Sets the selected state of a PanelBar item ([see example]({% slug items_panelbar %}#toc-selected-state)).
*
* @default false
*/
selected: boolean;
/**
* Sets the content of the PanelBar item.
* It is used when the [`items`]({% slug api_layout_panelbarcomponent %}#toc-items) property of the PanelBar is set.
*/
content: any;
/**
* @hidden
*/
items: Array;
/**
* @hidden
*/
template: TemplateRef;
header: ElementRef;
contentWrapper: ElementRef;
contentHeight: string;
contentOverflow: string;
keepContent: boolean;
childrenItems: Array;
hasChildItems: boolean;
hasItems: boolean;
hasContent: boolean;
state: string;
get animate(): boolean;
role: string;
titleAttribute: string;
kItemClass: boolean;
get kStateExpandedClass(): boolean;
get itemId(): string;
get ariaExpanded(): boolean;
get ariaSelected(): boolean;
get ariaDisabled(): boolean;
get headerClass(): boolean;
/**
* @hidden
*/
get titleTemplate(): TemplateRef;
viewChildItems: QueryList;
contentItems: QueryList;
contentTemplate: QueryList;
titleTemplates: QueryList;
focused: boolean;
wrapperFocused: boolean;
protected subscriptions: Subscription;
private _expanded;
private level;
private _svgIcon;
constructor(parent: PanelBarItemComponent, eventService: PanelBarService, element: ElementRef, renderer: Renderer2);
/**
* @hidden
*/
headerHeight(): number;
ngOnInit(): void;
ngAfterContentChecked(): void;
ngAfterViewChecked(): void;
ngOnDestroy(): void;
/**
* @hidden
*/
onItemAction(): void;
/**
* @hidden
*/
onItemClick(e: any): void;
/**
* @hidden
*/
get iconClasses(): any;
/**
* @hidden
*/
get customIconClasses(): string;
/**
* @hidden
*/
get dirInnerCssClasses(): string;
/**
* @hidden
*/
get expanderSVGIcon(): SVGIcon;
/**
* @hidden
*/
serialize(): PanelBarItemModel;
/**
* @hidden
*/
subTreeViewItems(): Array;
/**
* @hidden
*/
validateConfiguration(): void;
/**
* @hidden
*/
toggleAnimationState(value: boolean): void;
/**
* @hidden
*/
toggleExpandedChildAnimations(value: boolean): void;
/**
* @hidden
*/
private addLevelClass;
private onWrapperFocusChange;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}