import { FocusOrigin } from '@angular/cdk/a11y';
import { AfterContentInit, ElementRef, OnDestroy } from '@angular/core';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
/** Directive that wraps cdk `FocusMonitor` into standalone directive */
export declare class KbqFocusMonitor implements AfterContentInit, OnDestroy {
    /** Whether to monitor focus changes on child elements. */
    readonly checkChildren: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    /** Observable that emits focus origin when element or its children gains/loses focus. */
    focusChange: Observable<FocusOrigin> | null;
    private readonly elementRef;
    private focusMonitor;
    ngAfterContentInit(): void;
    ngOnDestroy(): void;
    /** Programmatically focuses an element with the specified origin. */
    focusVia(element: HTMLElement | ElementRef<HTMLElement>, origin: FocusOrigin, options?: FocusOptions): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<KbqFocusMonitor, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<KbqFocusMonitor, "[kbqFocusMonitor]", ["kbqFocusMonitor"], { "checkChildren": { "alias": "checkChildren"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
