@progress/kendo-vue-layout
Version:
98 lines (97 loc) • 3.42 kB
TypeScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
import { SVGIcon } from '@progress/kendo-vue-common';
/**
* Represents the props of the PanelBarItem component.
*/
export interface PanelBarItemProps {
/**
* Sets the subitems of the item.
*/
items?: any[];
/**
* Allows individual animation control over the child ([see example]({% slug animations_panelbar %})). By default, it is controlled by the PanelBar component.
*/
animation?: boolean;
/**
* The class name that is set to the PanelBarItem header.
*/
headerClassName?: string;
/**
* Sets the initial expanded state of the PanelBarItem ([see example]({% slug statesitems_panelbar %}#toc-expanded-items)). Controlled by the PanelBar component.
*/
expanded?: boolean;
/**
* Sets the disabled state of the PanelBarItem ([see example]({% slug statesitems_panelbar %}#toc-disabled-items)).
*/
disabled?: boolean;
/**
* @hidden
*/
level?: number;
/**
* Defines an icon that will be rendered next to the title ([see example]({% slug titlesitems_panelbar %}#toc-adding-icons)).
*/
icon?: string;
/**
* Defines an SVGIcon to be rendered next to the title.
*/
svgIcon?: SVGIcon;
/**
* Defines an icon with a custom CSS class that will be rendered next to the title ([see example]({% slug titlesitems_panelbar %}#toc-adding-icons)).
*/
iconClass?: string;
/**
* Defines the location of the image that will be displayed next to the title ([see example]({% slug titlesitems_panelbar %}#toc-adding-images)).
*/
imageUrl?: string;
/**
* Sets the initial selected state of the PanelBarItem. Controlled by the PanelBarItem component ([see example]({% slug statesitems_panelbar %}#toc-selected-items)).
*/
selected?: boolean;
/**
* Sets the title of the PanelBar item ([see example]({% slug titlesitems_panelbar %}#toc-getting-started)).
*/
title?: any;
/**
* Allows the component to set the `id` property to each item. If not set, a default `id` is applied.
*/
id?: string | number;
/**
* Sets the initial focused state of the PanelBarItem. Controlled by the PanelBar component.
*/
focused?: boolean;
/**
* @hidden
*/
parentExpanded?: boolean;
/**
* Defines the custom rendering of the content of the PanelBarItem. Accepts a Vue component, a `render` function, or a slot name.
*/
content?: any;
/**
* Defines the custom rendering of the header of the PanelBarItem. Accepts a Vue component, a `render` function, or a slot name.
*/
header?: any;
/**
* Used to identify the PanelBarItems inside the PanelBar ([see example]({% slug controlling_state_panelbar %})). Does not depend on the state of the PanelBarItem.
*/
uniquePrivateKey?: string | number;
/**
* @hidden
*/
parentUniquePrivateKey?: string[];
/**
* @hidden
*/
keepItemsMounted?: boolean;
/**
* @hidden
*/
item?: any;
}