import { ChangeDetectorRef, ElementRef, NgZone, EventEmitter } from '@angular/core';
import type { Components } from '@ionic/core/components';
import type { IonActionSheetCustomEvent } from '@ionic/core/components';
import type { OverlayEventDetail as IIonActionSheetOverlayEventDetail } from '@ionic/core/components';
import * as i0 from "@angular/core";
export declare class IonActionSheet {
    protected z: NgZone;
    protected el: HTMLIonActionSheetElement;
    ionActionSheetDidPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    ionActionSheetWillPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    ionActionSheetWillDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail<any>>>;
    ionActionSheetDidDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail<any>>>;
    didPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    willPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    willDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail<any>>>;
    didDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail<any>>>;
    constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
    static ɵfac: i0.ɵɵFactoryDeclaration<IonActionSheet, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IonActionSheet, "ion-action-sheet", never, { "animated": { "alias": "animated"; "required": false; }; "backdropDismiss": { "alias": "backdropDismiss"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; "cssClass": { "alias": "cssClass"; "required": false; }; "enterAnimation": { "alias": "enterAnimation"; "required": false; }; "header": { "alias": "header"; "required": false; }; "htmlAttributes": { "alias": "htmlAttributes"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "keyboardClose": { "alias": "keyboardClose"; "required": false; }; "leaveAnimation": { "alias": "leaveAnimation"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "subHeader": { "alias": "subHeader"; "required": false; }; "translucent": { "alias": "translucent"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; }, { "ionActionSheetDidPresent": "ionActionSheetDidPresent"; "ionActionSheetWillPresent": "ionActionSheetWillPresent"; "ionActionSheetWillDismiss": "ionActionSheetWillDismiss"; "ionActionSheetDidDismiss": "ionActionSheetDidDismiss"; "didPresent": "didPresent"; "willPresent": "willPresent"; "willDismiss": "willDismiss"; "didDismiss": "didDismiss"; }, never, ["*"], true, never>;
}
export declare interface IonActionSheet extends Components.IonActionSheet {
    /**
     * Emitted after the action sheet has presented.
     */
    ionActionSheetDidPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    /**
     * Emitted before the action sheet has presented.
     */
    ionActionSheetWillPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    /**
     * Emitted before the action sheet has dismissed.
     */
    ionActionSheetWillDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail>>;
    /**
     * Emitted after the action sheet has dismissed.
     */
    ionActionSheetDidDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail>>;
    /**
     * Emitted after the action sheet has presented.
  Shorthand for ionActionSheetWillDismiss.
     */
    didPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    /**
     * Emitted before the action sheet has presented.
  Shorthand for ionActionSheetWillPresent.
     */
    willPresent: EventEmitter<IonActionSheetCustomEvent<void>>;
    /**
     * Emitted before the action sheet has dismissed.
  Shorthand for ionActionSheetWillDismiss.
     */
    willDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail>>;
    /**
     * Emitted after the action sheet has dismissed.
  Shorthand for ionActionSheetDidDismiss.
     */
    didDismiss: EventEmitter<IonActionSheetCustomEvent<IIonActionSheetOverlayEventDetail>>;
}
