import { NxSwappedAbstractBaseDirective } from '../../swap-content-structural-common/nx-swapped-base.directive';
import { LoadingSpinnerComponent } from './loading-spinner.component';
import * as i0 from "@angular/core";
/**
 * A structural directive that shows a replaces the content with a loading spinner when the passed
 * value is true.
 *
 * The default icon size is 64px but can be overridden by providing `iconSize` to the context.
 *
 * Example (Basic):
 *
 * ```html
 * <div *nxLoadingSpinner="isLoading">...</div>
 * ```
 *
 * Example (With custom icon size):
 *
 * ```html
 * <div *nxLoadingSpinner="isLoading; iconSize: 32">...</div>
 * ```
 */
export declare class NxLoadingSpinnerDirective extends NxSwappedAbstractBaseDirective {
    /**
     * Shows loading spinner when true.
     */
    isSwapped: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    /**
     * Size of the loading spinner in pixels.
     */
    nxLoadingSpinnerIconSize: import("@angular/core").InputSignal<number>;
    /**
     * The outlineRatio for the the spinner icon border thickness.
     *
     * This is the used to get a fraction of the icon size to create the border.
     *
     * Example if the icon size is 60px and the outline ratio is 6, the border size will be 10px.
     */
    nxLoadingSpinnerOutlineRatio: import("@angular/core").InputSignal<number>;
    swappedStateComponent: import("@angular/core").WritableSignal<typeof LoadingSpinnerComponent>;
    componentInputs: import("@angular/core").Signal<{
        iconSize: number;
        outlineRatio: number;
    }>;
    static ɵfac: i0.ɵɵFactoryDeclaration<NxLoadingSpinnerDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NxLoadingSpinnerDirective, "[nxLoadingSpinner]", never, { "isSwapped": { "alias": "nxLoadingSpinner"; "required": false; "isSignal": true; }; "nxLoadingSpinnerIconSize": { "alias": "nxLoadingSpinnerIconSize"; "required": false; "isSignal": true; }; "nxLoadingSpinnerOutlineRatio": { "alias": "nxLoadingSpinnerOutlineRatio"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
