import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ComponentRef, EventEmitter, OnDestroy, QueryList, TemplateRef, ViewContainerRef } from '@angular/core';
import { DynamicComponentService, FocusEscapeDirection, KeyboardSupportService, Nullable } from '@fundamental-ngx/cdk/utils';
import { PopoverComponent } from '@fundamental-ngx/core/popover';
import { Placement } from '@fundamental-ngx/core/shared';
import { ActionSheetBodyComponent } from './action-sheet-body/action-sheet-body.component';
import { ActionSheetControlComponent } from './action-sheet-control/action-sheet-control.component';
import { ActionSheetItemComponent } from './action-sheet-item/action-sheet-item.component';
import { ActionSheetMobileComponent } from './action-sheet-mobile/action-sheet-mobile.component';
import * as i0 from "@angular/core";
export declare class ActionSheetComponent implements AfterContentInit, AfterViewInit, OnDestroy {
    private readonly _keyboardSupportService;
    private readonly _changeDetectionRef;
    private readonly _viewContainerRef;
    private _dynamicComponentService;
    /** Whether should be displayed in mobile mode */
    mobile: boolean;
    /** The position of the popover body. Set to 'bottom' by default. */
    placement: Placement;
    /** Whether the popover body has an arrow. Set to false by default. */
    noArrow: boolean;
    /** Whenever links should be visible */
    isOpen: boolean;
    /** Whether internal keyboard support should be enabled. It's enabled by default */
    keyboardSupport: boolean;
    /**
     * To allow user to determine what event he wants to trigger the messages to show
     * Accepts any [HTML DOM Events](https://www.w3schools.com/jsref/dom_obj_event.asp).
     */
    triggers: string[];
    /** Value for the control title in mobile mode */
    controlTitle: Nullable<string>;
    /**
     * Value for the control title heading level
     * A number between 1 and 6
     * Default is set to 2
     */
    controlTitleHeading: 1 | 2 | 3 | 4 | 5 | 6;
    /** Event thrown, when focus escapes the list */
    focusEscapeList: EventEmitter<FocusEscapeDirection>;
    /** Event thrown, when the action sheet is opened or closed */
    readonly isOpenChange: EventEmitter<boolean>;
    /** @hidden */
    actionSheetBody: ActionSheetBodyComponent;
    /** @hidden */
    actionSheetControl: ActionSheetControlComponent;
    /** @hidden */
    actionSheetItems: QueryList<ActionSheetItemComponent>;
    /** @hidden */
    actionSheetBodyTemplate: TemplateRef<any>;
    /** @hidden */
    popoverComponent: PopoverComponent;
    /** @hidden */
    actionSheetMobileDynamic: ComponentRef<ActionSheetMobileComponent>;
    /** @hidden */
    private readonly _destroyRef;
    /** @hidden */
    private readonly _onRefresh$;
    /** @hidden */
    private _subscriptions;
    /** @hidden */
    constructor(_keyboardSupportService: KeyboardSupportService<ActionSheetItemComponent>, _changeDetectionRef: ChangeDetectorRef, _viewContainerRef: ViewContainerRef, _dynamicComponentService: DynamicComponentService);
    /** @hidden */
    ngAfterContentInit(): void;
    /** @hidden */
    ngAfterViewInit(): void;
    /** @hidden */
    ngOnDestroy(): void;
    /** Method that opens action sheet */
    open(): void;
    /** Method that closes action sheet */
    close(): void;
    /** @hidden */
    isOpenChangeHandle(isOpen: boolean): void;
    /** @hidden */
    private _initializeChildrenState;
    /** @hidden */
    private _actionControlHandle;
    /** @hidden */
    private _listenOnItemsChange;
    /** @hidden */
    private _listenOnItemsClick;
    /** @hidden Set fake focus on element with passed index */
    private _setItemActive;
    /** @hidden */
    private _setUpMobileMode;
    static ɵfac: i0.ɵɵFactoryDeclaration<ActionSheetComponent, [null, null, null, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ActionSheetComponent, "fd-action-sheet", never, { "mobile": { "alias": "mobile"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "noArrow": { "alias": "noArrow"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "keyboardSupport": { "alias": "keyboardSupport"; "required": false; }; "triggers": { "alias": "triggers"; "required": false; }; "controlTitle": { "alias": "controlTitle"; "required": false; }; "controlTitleHeading": { "alias": "controlTitleHeading"; "required": false; }; }, { "focusEscapeList": "focusEscapeList"; "isOpenChange": "isOpenChange"; }, ["actionSheetBody", "actionSheetControl", "actionSheetItems"], ["fd-action-sheet-body", "fd-action-sheet-control"], true, never>;
}
