import {BaseElement} from "./smart.element" /** Buttons allow users to take actions, and make choices, with a single tap. Buttons communicate actions that users can take. */ export interface Button extends BaseElement { /* Get a member by its name */ [name: string]: any; /** * Sets or gets the animation mode. Animation is disabled when the property is set to 'none' * Default value: advanced */ animation?: Animation; /** * Determines the click mode for the element. * Default value: release */ clickMode?: ClickMode; /** * Sets the content of the element. * Default value: "" */ content?: any; /** * Enables or disables the button. * Default value: false */ disabled?: boolean; /** * Sets the inner HTML of the element. * Default value: """" */ innerHTML: string; /** * Sets or gets the language. Used in conjunction with the property messages. * Default value: "en" */ locale?: string; /** * Callback used to customize the format of the messages that are returned from the Localization Module. * Default value: null */ localizeFormatFunction?: any; /** * Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale. * Default value: * { * "en": { * "propertyUnknownType": "'' property is with undefined 'type' member!", * "propertyInvalidValue": "Invalid '!", * "propertyInvalidValueType": "Invalid '!", * "elementNotInDOM": "Element does not exist in DOM! Please, add the element to the DOM, before invoking a method.", * "moduleUndefined": "Module is undefined.", * "missingReference": ".", * "htmlTemplateNotSuported": ": Browser doesn't support HTMLTemplate elements.", * "invalidTemplate": "' property accepts a string that must match the id of an HTMLTemplate element from the DOM." * } * } */ messages?: any; /** * Sets or gets the name attribute for the element. Name is used when submiting HTML forms. * Default value: """" */ name?: string; /** * If the custom element is readonly, it cannot be interacted with. * Default value: false */ readonly?: boolean; /** * Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts. * Default value: false */ rightToLeft?: boolean; /** * Determines the theme. Theme defines the look of the element * Default value: "" */ theme?: string; /** * Sets or gets the type of the button. * Default value: "Reset" */ type?: string; /** * Sets or gets the button's value. * Default value: "" */ value?: string; /** * If is set to true, the element cannot be focused. * Default value: false */ unfocusable?: boolean; /** * Click event is triggered regardiong to the chosen clickMode. * @param ev. The custom event. */ onclick: ((this: any, ev: Event) => any) | null; } declare global { interface Document { createElement(tagName: "jqx-button"): Button; querySelector(selectors: "jqx-button"): Button | null; querySelectorAll(selectors: "jqx-button"): NodeListOf