/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { TemplateRef, ElementRef } from '@angular/core';
import { RenderLocation } from '../render-location';
import * as i0 from "@angular/core";
/**
 * Represents the base ToolBar Tool component for Angular.
 *
 * Extend this class to create a custom tool for the ToolBar.
 *
 * @example
 * ```typescript
 * import { Component } from '@angular/core';
 * import { ToolBarToolComponent } from '@progress/kendo-angular-toolbar';
 *
 * @Component({
 *    providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => CustomToolComponent) }],
 *    selector: 'custom-tool',
 * })
 *
 * export class CustomToolComponent extends ToolBarToolComponent {
 *
 *  constructor() {
 *        super();
 *    }
 * }
 * ```
 */
export declare class ToolBarToolComponent {
    toolbarTemplate: TemplateRef<any>;
    sectionTemplate: TemplateRef<any>;
    popupTemplate: TemplateRef<any>;
    tabIndex: number;
    overflows: boolean;
    visibility: string;
    element: ElementRef;
    isBuiltInTool: boolean;
    /**
     * @hidden
     */
    isHidden: boolean;
    /**
     * @hidden
     */
    location: RenderLocation;
    constructor();
    /**
     * @hidden
     */
    responsive: boolean;
    get toolbarDisplay(): string;
    get overflowDisplay(): string;
    /**
     * Determines if the tool can receive focus.
     * Returns `true` if the tool participates in keyboard navigation.
     * @returns `true` if the tool is focusable.
     */
    canFocus(): boolean;
    /**
     * Called when the tool receives focus.
     * Accepts the original browser event, which can be a `KeyboardEvent`, `MouseEvent`, or `FocusEvent`.
     * @param {Event} _ev - The event that triggers focus for the tool.
     */
    focus(_ev?: Event): void;
    /**
     * Called when the tool is focused and an arrow key is pressed.
     * Returns a boolean value that determines if the `ToolBarComponent` moves focus to the next or previous tool
     * ([see example](https://www.telerik.com/kendo-angular-ui/components/toolbar/custom-control-types#adding-keyboard-navigation)).
     * @param {KeyboardEvent} _ev - The last pressed arrow key.
     * @returns `true` if focus moves to another tool.
     */
    handleKey(_ev: KeyboardEvent): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<ToolBarToolComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ToolBarToolComponent, never, never, { "responsive": { "alias": "responsive"; "required": false; }; }, {}, never, never, true, never>;
}
