import * as i0 from '@angular/core';
import { OnChanges, SimpleChanges } from '@angular/core';
import * as i1 from '@angular/common';
import * as i2 from '@angular/material/button';
import * as i3 from '@angular/material/progress-spinner';
import { ThemePalette } from '@angular/material/core';

declare class MatButtonLoading implements OnChanges {
    private _elementRef;
    private _viewContainerRef;
    private _renderer;
    private spinner;
    loading: boolean;
    disabled: boolean;
    color: ThemePalette;
    ngOnChanges(changes: SimpleChanges): void;
    private createSpinner;
    private destroySpinner;
    static ɵfac: i0.ɵɵFactoryDeclaration<MatButtonLoading, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<MatButtonLoading, "[mat-button][loading], [matButton][loading],             [mat-raised-button][loading],             [mat-stroked-button][loading],             [mat-flat-button][loading],             [mat-icon-button][loading], [matIconButton][loading],             [mat-fab][loading], [matFab][loading],             [mat-mini-fab][loading], [matMiniFab][loading]", never, { "loading": { "alias": "loading"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "color": { "alias": "color"; "required": false; }; }, {}, never, never, true, never>;
    static ngAcceptInputType_loading: unknown;
    static ngAcceptInputType_disabled: unknown;
}

declare class MtxButtonModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<MtxButtonModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<MtxButtonModule, never, [typeof i1.CommonModule, typeof i2.MatButtonModule, typeof i3.MatProgressSpinnerModule, typeof MatButtonLoading], [typeof MatButtonLoading]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<MtxButtonModule>;
}

export { MatButtonLoading, MtxButtonModule };
