import { AfterContentInit, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { FocusEscapeDirection, KeyboardSupportService, Nullable } from '@fundamental-ngx/cdk/utils';
import { CardFocusItem } from '../card-focus-item.model';
import * as i0 from "@angular/core";
export declare class CardListDirective implements OnInit, AfterContentInit, OnDestroy {
    private _keyboardSupportService;
    /**
     * an event thrown, when focus escapes the list
     */
    focusEscapeList: EventEmitter<FocusEscapeDirection>;
    /** @hidden */
    private _focusItems;
    /**
     * whether internal keyboard support should be enabled.
     * default: true
     */
    keyboardSupport: import("@angular/core").InputSignal<boolean>;
    /**
     * aria-roledescription for the Card list
     * default: 'Card Container'
     */
    ariaRoleDescription: import("@angular/core").InputSignal<string>;
    /**
     * aria-label for the Card list
     */
    ariaLabel: import("@angular/core").InputSignal<Nullable<string>>;
    /** @hidden */
    private _cards;
    /**
     * an RxJS Subject that will kill the data stream upon component’s destruction
     * for unsubscribing
     */
    private readonly _destroyRef;
    /**
     * an RxJS Subject that will kill the data stream upon queryList changes
     * for unsubscribing
     */
    private readonly _onRefresh$;
    /** @hidden */
    constructor(_keyboardSupportService: KeyboardSupportService<CardFocusItem>);
    /** @hidden */
    keyDownHandler(event: KeyboardEvent): void;
    /** Set fake focus on element with passed index */
    setItemActive(index: number, updateOnly?: boolean): void;
    /**
     * @returns Currently active list item.
     */
    getActiveItem(): CardFocusItem | null;
    /** @hidden */
    ngOnInit(): void;
    /** @hidden */
    ngAfterContentInit(): void;
    /** @hidden */
    ngOnDestroy(): void;
    /** @hidden */
    private _listenOnQueryChange;
    /** @hidden */
    private _listenOnItemsClick;
    /** @hidden */
    private _listenOnListFocusEscape;
    static ɵfac: i0.ɵɵFactoryDeclaration<CardListDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<CardListDirective, "[fd-card-list]", never, { "keyboardSupport": { "alias": "keyboardSupport"; "required": false; "isSignal": true; }; "ariaRoleDescription": { "alias": "ariaRoleDescription"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "focusEscapeList": "focusEscapeList"; }, ["_cards", "_focusItems"], never, true, never>;
}
