@progress/kendo-angular-buttons
Version:
Buttons Package for Angular
76 lines (75 loc) • 2.16 kB
TypeScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { SVGIcon } from "@progress/kendo-svg-icons";
/**
* Represents the item models of the Kendo UI DropDownButton and SplitButton components. These are the interface fields that the items use.
*
* @example
*
* ```typescript
* @Component({
* selector: 'my-app',
* template: `
* <kendo-splitbutton [data]="items">SplitButton</kendo-splitbutton>
* `
* })
* class AppComponent {
* public items: ListItemModel[] = [{
* text: 'item1',
* icon: 'arrow-rotate-cw',
* click: (dataItem: any) => {
* //action
* }
* }, {
* text: 'item2',
* iconClass: 'test icon class',
* click: (dataItem: any) => {
* //action
* }
* }]
* }
* ```
*/
export interface ListItemModel {
/**
* Sets the text of the item.
*/
text?: string;
/**
* Defines an icon rendered next to the title.
*/
icon?: string;
/**
* Defines an [SVGIcon](https://www.telerik.com/kendo-angular-ui/components/icons/api/svgicon) rendered next to the title.
*/
svgIcon?: SVGIcon;
/**
* Defines an icon with a custom CSS class rendered next to the title.
*/
iconClass?: string;
/**
* Specifies the location of an image displayed next to the title.
*/
imageUrl?: string;
/**
* Specifies the value of the image element `alt` attribute.
*
* @remarks
* This option is related to accessibility.
*/
imageAlt?: string;
/**
* Disables the button list item when set to `true`.
*/
disabled?: boolean;
/**
* Specifies the CSS classes rendered on the item element. Supports the same values as `ngClass`.
*/
cssClass?: any;
/**
* Emits an event when the item is clicked.
*/
click?: (dataItem?: any) => void;
}