import { ChangeDetectorRef, ElementRef, NgZone, EventEmitter } from '@angular/core';
import type { Components } from '@ionic/core/components';
import type { IonButtonCustomEvent } from '@ionic/core/components';
import * as i0 from "@angular/core";
export declare class IonButton {
    protected z: NgZone;
    protected el: HTMLIonButtonElement;
    ionFocus: EventEmitter<IonButtonCustomEvent<void>>;
    ionBlur: EventEmitter<IonButtonCustomEvent<void>>;
    constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
    static ɵfac: i0.ɵɵFactoryDeclaration<IonButton, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IonButton, "ion-button", never, { "buttonType": { "alias": "buttonType"; "required": false; }; "color": { "alias": "color"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "download": { "alias": "download"; "required": false; }; "expand": { "alias": "expand"; "required": false; }; "fill": { "alias": "fill"; "required": false; }; "form": { "alias": "form"; "required": false; }; "href": { "alias": "href"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "rel": { "alias": "rel"; "required": false; }; "routerAnimation": { "alias": "routerAnimation"; "required": false; }; "routerDirection": { "alias": "routerDirection"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "size": { "alias": "size"; "required": false; }; "strong": { "alias": "strong"; "required": false; }; "target": { "alias": "target"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, { "ionFocus": "ionFocus"; "ionBlur": "ionBlur"; }, never, ["*"], true, never>;
}
export declare interface IonButton extends Components.IonButton {
    /**
     * Emitted when the button has focus.
     */
    ionFocus: EventEmitter<IonButtonCustomEvent<void>>;
    /**
     * Emitted when the button loses focus.
     */
    ionBlur: EventEmitter<IonButtonCustomEvent<void>>;
}
