/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { ElementRef, Renderer2, OnDestroy, NgZone } from '@angular/core';
import { FocusableElement } from './focusable-element.interface';
import { DomEventsService } from '../views/common/dom-events.service';
import { FocusPosition } from './focus-position.interface';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare class FocusService implements OnDestroy {
    private renderer;
    private wrapper;
    private domEvents;
    private zone;
    get activeElement(): ElementRef;
    get focusableItems(): Set<FocusableElement>;
    activeItem: FocusableElement;
    private focusedItem;
    private items;
    private elementMap;
    private subs;
    private hasContentRendered;
    constructor(renderer: Renderer2, wrapper: ElementRef, domEvents: DomEventsService, zone: NgZone);
    ngOnDestroy(): void;
    register(item: FocusableElement): void;
    unregister(item: FocusableElement): void;
    focus(): void;
    focusContent(): void;
    focusToolbar(): void;
    focusNext(options?: FocusPosition): boolean;
    focusByIndex(index: number): void;
    private activate;
    private activateNext;
    private findNext;
    private toggleWrapper;
    private onFocusIn;
    private onFocusOut;
    static ɵfac: i0.ɵɵFactoryDeclaration<FocusService, [{ optional: true; }, { optional: true; }, null, null]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FocusService>;
}
