/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { Keys } from '@progress/kendo-angular-common';
import { DisplayMode } from './display-mode';
import { ToolbarOverflowSettings } from './common/overflow-settings';
/**
 * @hidden
 */
export interface ToolbarStylingClasses {
    toRemove?: string;
    toAdd?: string;
}
/**
 * @hidden
 */
export declare function outerWidth(element: HTMLElement): number;
/**
 * @hidden
 */
export declare function innerWidth(element: HTMLElement): number;
/**
 * @hidden
 */
export declare function outerHeight(element: any): number;
/**
 * @hidden
 */
export declare const closest: (node: any, predicate: any) => any;
/**
 * @hidden
 */
export declare const isVisible: (element: any) => boolean;
/**
 * @hidden
 */
export declare const findElement: (node: any, predicate: (element: any) => boolean, matchSelf?: boolean) => any;
/**
 * @hidden
 */
export declare const isFocusable: (element: any, checkVisibility?: boolean) => boolean;
/**
 * @hidden
 */
export declare const findFocusable: (element: any, checkVisibility?: boolean) => any;
/**
 * @hidden
 */
export declare const findFocusableChild: (element: any, checkVisibility?: boolean) => any;
/**
 * @hidden
 */
export declare const findFocusableSibling: (element: any, checkVisibility?: boolean, reverse?: boolean) => any;
/**
 * @hidden
 */
export declare const isPresent: Function;
/**
 * @hidden
 */
export declare const makePeeker: (collection: any[]) => (index: number) => boolean;
/**
 * @hidden
 */
export declare const getIndexOfFocused: (prevKeyCode: number, nextKeyCode: number, collection: HTMLElement[]) => (ev: any) => number;
/**
 * @hidden
 */
export declare const seekFocusedIndex: (prevKeyCode: number, nextKeyCode: number, seeker: (i: number) => boolean) => (startIndex: number, ev: any) => number;
/**
 * @hidden
 */
export declare const areEqual: (first: number) => (second: number) => boolean;
/**
 * @hidden
 */
export declare const getNextKey: (rtl?: boolean) => (overflows?: boolean) => Keys.ArrowDown | Keys.ArrowLeft | Keys.ArrowRight;
/**
 * @hidden
 */
export declare const getPrevKey: (rtl?: boolean) => (overflows?: boolean) => Keys.ArrowLeft | Keys.ArrowRight | Keys.ArrowUp;
/**
 * @hidden
 */
export declare const getValueForLocation: (property: any, displayMode: DisplayMode, overflows: boolean) => any;
/**
 * @hidden
 */
export declare const SIZES: {
    small: string;
    medium: string;
    large: string;
};
/**
 * @hidden
 *
 * Returns the styling classes to be added and removed
 */
export declare const getStylingClasses: (componentType: any, stylingOption: string, previousValue: any, newValue: any) => ToolbarStylingClasses;
/**
 * @hidden
 *
 * Checks whether a Node is Text or Element node.
 * nodeType 1 is Element, nodeType 3 is Text
 */
export declare const isElementOrTextNode: (n: Node) => boolean;
/**
 * @hidden
 */
export declare const normalizeOverflowSettings: (overflow: any) => ToolbarOverflowSettings;
