/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { OnDestroy } from '@angular/core';
import { FocusableElement } from "./focusable-element.interface";
import { FocusRoot } from './focus-root';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare class FocusGroup implements OnDestroy {
    private root;
    private active;
    private children;
    private get focusableChildren();
    get isActive(): boolean;
    constructor(root: FocusRoot);
    ngOnDestroy(): void;
    registerElement(element: FocusableElement): void;
    unregisterElement(element: FocusableElement): void;
    /**
     * Returns a Boolean value which indicates if the group will receive focus when the cell is focused.
     * Requires a single "simple" focusable element such as a button or a checkbox.
     */
    isNavigable(): boolean;
    canFocus(): boolean;
    focus(): void;
    activate(): void;
    deactivate(): void;
    private hasFocus;
    private toggleState;
    static ɵfac: i0.ɵɵFactoryDeclaration<FocusGroup, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FocusGroup>;
}
