/** * @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'; /** * Inherits the native HTML Button. Represents the properties which can be set to a Button. */ export interface ButtonInterface { /** * Specifies if the Button is disabled ([see example]({% slug disabled_button %})). Defaults to `false`. */ disabled?: boolean; /** * Sets the aria-label of the Button. */ ariaLabel?: string; /** * Sets the `title` HTML attribute of the Button. */ title?: string; /** * Sets the direction of the Button. */ dir?: string; /** * Sets the selected state of the Button. Can be used for controlled mode. */ selected?: boolean; /** * Provides visual styling that indicates if the Button is selected ([see example]({% slug toggleable_button %})). Defaults to `false`. */ togglable?: boolean; /** * Defines the name for an existing icon in a Kendo UI for Vue theme ([see example]({% slug icons_button %})). The icon is rendered inside the Button by a `span.k-icon` element. */ icon?: string; /** * Defines an SVGIcon to be rendered within the button. */ svgIcon?: SVGIcon; /** * Defines a CSS class—or multiple classes separated by spaces—which are applied to a `span` element inside the Button ([see example]({% slug icons_button %})). Allows the usage of custom icons. */ iconClass?: string; /** * Defines a URL which is used as an `img` element inside the Button ([see example]({% slug icons_button %})). The URL can be relative or absolute. If relative, it is evaluated with relation to the URL of the web page. */ imageUrl?: string; /** * Defines the alternative text of the image rendered inside the Button component. */ imageAlt?: string; }