/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { default as PropTypes } from 'prop-types'; import { DropDownButtonProps } from './models/ListButtonProps'; import * as React from 'react'; /** * @hidden */ export interface DropDownButtonState { focusedIndex?: number; focused?: boolean; opened: boolean; } /** * @hidden */ export declare class DropDownButtonWithoutContext extends React.Component { /** * @hidden */ static propTypes: { accessKey: PropTypes.Requireable; ariaLabel: PropTypes.Requireable; title: PropTypes.Requireable; onFocus: PropTypes.Requireable<(...args: any[]) => any>; onBlur: PropTypes.Requireable<(...args: any[]) => any>; onClick: PropTypes.Requireable<(...args: any[]) => any>; onItemClick: PropTypes.Requireable<(...args: any[]) => any>; onOpen: PropTypes.Requireable<(...args: any[]) => any>; onClose: PropTypes.Requireable<(...args: any[]) => any>; items: PropTypes.Requireable; textField: PropTypes.Requireable; tabIndex: PropTypes.Requireable; disabled: PropTypes.Requireable; icon: PropTypes.Requireable; svgIcon: PropTypes.Requireable; content: PropTypes.Validator; viewBox: PropTypes.Validator; }>>; iconClass: PropTypes.Requireable; imageUrl: PropTypes.Requireable; popupSettings: PropTypes.Requireable; itemRender: PropTypes.Requireable<(...args: any[]) => any>; item: PropTypes.Requireable<(...args: any[]) => any>; className: PropTypes.Requireable; buttonClass: PropTypes.Requireable; dir: PropTypes.Requireable; size: PropTypes.Requireable; rounded: PropTypes.Requireable; fillMode: PropTypes.Requireable; themeColor: PropTypes.Requireable; }; /** * @hidden */ static defaultProps: { size: undefined; rounded: undefined; fillMode: undefined; themeColor: undefined; }; /** * @hidden */ readonly state: { opened: boolean; focused: boolean; focusedIndex: number; }; private mainButton; private list; private skipFocus; private get guid(); private readonly showLicenseWatermark; private readonly licenseMessage?; private buttonsData; private openedDuringOnChange?; private get opened(); constructor(props: DropDownButtonProps); /** * @hidden */ render(): React.JSX.Element; /** * @hidden */ componentDidMount(): void; /** * The DOM element of main button. */ get element(): HTMLButtonElement | null; private onKeyDown; private switchFocus; private handleFocus; private handleButtonBlur; private handleMenuBlur; private setOpen; private onItemClick; private onItemDown; private mouseDown; private dispatchClickEvent; private renderPopup; private onPopupClose; private listRef; private renderChildItems; private onClickMainButton; private dispatchPopupEvent; private isItemDisabled; private isRtl; } /** * Represents the PropsContext of the `DropDownButton` component. * Used for global configuration of all `DropDownButton` instances. */ export declare const DropDownButtonPropsContext: React.Context<(p: DropDownButtonProps) => DropDownButtonProps>; /** * Represent the `ref` of the DropDownButton component. */ export interface DropDownButtonHandle extends Pick { /** * The DOM element of main button. */ element: HTMLButtonElement | null; /** * The props of the DropDownButtonHandle component. */ props: Readonly; } /** @hidden */ export type DropDownButton = DropDownButtonHandle; /** * Represents the [KendoReact DropDownButton component](https://www.telerik.com/kendo-react-ui/components/buttons/dropdownbutton). * * @example * ```jsx * const App = () => { * return ( * * * * * * ); * } * ``` */ export declare const DropDownButton: React.ForwardRefExoticComponent>;