/** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * A FocusTrap managed by FocusTrapManager. * Implemented by ConfigurableFocusTrap to avoid circular dependency. */ export interface ManagedFocusTrap { _enable(): void; _disable(): void; focusInitialElementWhenReady(): Promise; } /** Injectable that ensures only the most recently enabled FocusTrap is active. */ export declare class FocusTrapManager { private _focusTrapStack; /** * Disables the FocusTrap at the top of the stack, and then pushes * the new FocusTrap onto the stack. */ register(focusTrap: ManagedFocusTrap): void; /** * Removes the FocusTrap from the stack, and activates the * FocusTrap that is the new top of the stack. */ deregister(focusTrap: ManagedFocusTrap): void; }