/**-----------------------------------------------------------------------------------------
* Copyright © 2025 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 custom tools.
 */
export declare class ToolBarToolComponent {
    toolbarTemplate: TemplateRef<any>;
    sectionTemplate: TemplateRef<any>;
    popupTemplate: TemplateRef<any>;
    tabIndex: number;
    overflows: boolean;
    visibility: string;
    element: ElementRef;
    isBuiltInTool: boolean;
    /**
     * @hidden
     */
    location: RenderLocation;
    constructor();
    /**
     * @hidden
     */
    responsive: boolean;
    get toolbarDisplay(): string;
    get overflowDisplay(): string;
    /**
     * Determines if the tool can be focused.
     * If the returned value is `false`, the tool will not be part of the keyboard navigation.
     * @returns `true` if the tool should take part in keyboard navigation.
     */
    canFocus(): boolean;
    /**
     * Called when the tool is focused.
     * The method accepts as argument the original browser event, which can be a `KeyboardEvent`, `MouseEvent` or `FocusEvent`.
     * @param {Event} _ev - This is the event that caused the tool to be focused.
     */
    focus(_ev?: Event): void;
    /**
     * Called when the tool is focused and one of the arrow keys is pressed.
     * The returned boolean value determines whether the `ToolBarComponent` will move the focus to the next/previous `ToolBarToolComponent`
     * ([see example]({% slug customcontroltypes_toolbar %}#toc-adding-keyboard-navigation)).
     * @param {KeyboardEvent} _ev - The last pressed arrow key
     * @returns a boolean value determines whether the focus will move to the next/previous component.
     */
    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>;
}
