UNPKG

@progress/kendo-vue-buttons

Version:
169 lines (168 loc) 5.81 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { DropDownButtonFocusEvent, DropDownButtonBlurEvent, DropDownButtonOpenEvent, DropDownButtonCloseEvent, DropDownButtonItemClickEvent } from './models/events'; import { PropType } from 'vue'; /** * @hidden */ export interface DropDownButtonData { focusedIndex?: number; focused?: boolean; currentOpened: boolean; } /** * @hidden */ export interface DropDownButtonComputed { [key: string]: any; computedOpened: boolean; wrapperClass: object; } /** * @hidden */ export interface DropDownButtonMethods { [key: string]: any; element: () => HTMLButtonElement | null; onKeyDown: (event: any) => void; onFocus: (event: any) => void; onBlur: (event: any) => void; onItemClick: (event: any, clickedItemIndex: number) => void; onItemDown: (event: any) => void; mouseDown: (event: any) => void; dispatchClickEvent: (dispatchedEvent: any, index: number) => void; onClickMainButton: () => void; dispatchPopupEvent: (dispatchedEvent: any, open: boolean) => void; isItemDisabled: (index: number) => boolean; isRtl: () => boolean; } /** * @hidden */ export interface DropDownButtonState { wrapper: HTMLDivElement | null; mainButton: any; guid: string; buttonsData: Array<any>; _anchor: string; kendoAnchorRef: any; } /** * @hidden */ declare const DropDownButton: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ accessKey: PropType<string>; items: { type: PropType<any[]>; default: () => any[]; }; ariaLabel: PropType<string>; text: PropType<any>; textField: PropType<string>; tabIndex: PropType<number>; disabled: PropType<boolean>; icon: PropType<string>; svgIcon: PropType<import('@progress/kendo-vue-common').SVGIcon>; iconClass: PropType<string>; imageUrl: PropType<string>; popupSettings: PropType<import('..').ButtonsPopupSettings>; itemRender: PropType<any>; item: PropType<any>; size: PropType<"small" | "medium" | "xs" | "large">; rounded: PropType<"small" | "medium" | "large" | "full" | "none">; fillMode: { type: PropType<"flat" | "link" | "solid" | "outline">; validator: (value: string) => boolean; }; themeColor: { type: PropType<"base" | "primary" | "secondary" | "tertiary" | "info" | "success" | "warning" | "error" | "inverse">; validator: (value: string) => boolean; }; opened: { type: PropType<boolean>; default: any; }; buttonClass: PropType<string>; dir: PropType<string>; }>, { kendoAnchorRef: import('vue').Ref<any, any>; }, { currentOpened: boolean; focused: boolean; focusedIndex: number; }, { computedOpened(): boolean; wrapperClass(): { 'k-dropdown-button': boolean; 'k-focus': any; }; }, { element(): HTMLButtonElement | null; onKeyDown(event: any): void; onFocus(event: FocusEvent): void; onBlur(event: FocusEvent): void; createBlurTimeout(event: FocusEvent): void; onItemClick(event: any, clickedItemIndex: number): void; onItemDown(event: any): void; mouseDown(event: any): void; dispatchClickEvent(dispatchedEvent: any, index: number): void; onClickMainButton(event: any): void; dispatchPopupEvent(dispatchedEvent: any, open: boolean): void; isItemDisabled(index: number): any; isRtl(): boolean; }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { focus: (event: DropDownButtonFocusEvent) => true; blur: (event: DropDownButtonBlurEvent) => true; itemclick: (event: DropDownButtonItemClickEvent) => true; open: (event: DropDownButtonOpenEvent) => true; close: (event: DropDownButtonCloseEvent) => true; }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{ accessKey: PropType<string>; items: { type: PropType<any[]>; default: () => any[]; }; ariaLabel: PropType<string>; text: PropType<any>; textField: PropType<string>; tabIndex: PropType<number>; disabled: PropType<boolean>; icon: PropType<string>; svgIcon: PropType<import('@progress/kendo-vue-common').SVGIcon>; iconClass: PropType<string>; imageUrl: PropType<string>; popupSettings: PropType<import('..').ButtonsPopupSettings>; itemRender: PropType<any>; item: PropType<any>; size: PropType<"small" | "medium" | "xs" | "large">; rounded: PropType<"small" | "medium" | "large" | "full" | "none">; fillMode: { type: PropType<"flat" | "link" | "solid" | "outline">; validator: (value: string) => boolean; }; themeColor: { type: PropType<"base" | "primary" | "secondary" | "tertiary" | "info" | "success" | "warning" | "error" | "inverse">; validator: (value: string) => boolean; }; opened: { type: PropType<boolean>; default: any; }; buttonClass: PropType<string>; dir: PropType<string>; }>> & Readonly<{ onBlur?: (event: DropDownButtonBlurEvent) => any; onClose?: (event: DropDownButtonCloseEvent) => any; onFocus?: (event: DropDownButtonFocusEvent) => any; onOpen?: (event: DropDownButtonOpenEvent) => any; onItemclick?: (event: DropDownButtonItemClickEvent) => any; }>, { items: any[]; opened: boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>; export { DropDownButton };