import { ElementRef, Signal } from '@angular/core';
import { ProgressBarMode } from '@angular/material/progress-bar';
import { ErrorInput, type Maybe } from '@dereekb/util';
import { ProgressSpinnerMode } from '@angular/material/progress-spinner';
import * as i0 from "@angular/core";
/**
 * DbxBasicLoadingComponent loading state.
 */
export type LoadingComponentState = 'none' | 'loading' | 'content' | 'error';
/**
 * Basic loading component.
 */
export declare class DbxBasicLoadingComponent {
    readonly customError: Signal<Maybe<ElementRef<any>>>;
    readonly customLoading: Signal<Maybe<ElementRef<any>>>;
    readonly diameter: import("@angular/core").InputSignal<Maybe<number>>;
    readonly mode: import("@angular/core").InputSignal<Maybe<"determinate" | "indeterminate" | "buffer" | "query">>;
    readonly color: import("@angular/core").InputSignal<"primary" | "accent" | "warn" | "notice" | "ok" | "success" | "grey" | "background" | "disabled" | undefined>;
    readonly text: import("@angular/core").InputSignal<Maybe<string>>;
    readonly linear: import("@angular/core").InputSignal<Maybe<boolean>>;
    readonly show: import("@angular/core").InputSignal<Maybe<boolean>>;
    readonly loading: import("@angular/core").InputSignal<Maybe<import("@dereekb/dbx-core").DbxActionWorkOrWorkProgress>>;
    readonly error: import("@angular/core").InputSignal<Maybe<ErrorInput>>;
    readonly loadingProgressSignal: Signal<Maybe<number>>;
    readonly modeSignal: Signal<ProgressBarMode | ProgressSpinnerMode>;
    readonly isLoadingSignal: Signal<boolean>;
    readonly stateSignal: Signal<LoadingComponentState>;
    readonly hasNoCustomErrorSignal: Signal<boolean>;
    readonly hasNoCustomLoadingSignal: Signal<boolean>;
    static ɵfac: i0.ɵɵFactoryDeclaration<DbxBasicLoadingComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DbxBasicLoadingComponent, "dbx-basic-loading", never, { "diameter": { "alias": "diameter"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "linear": { "alias": "linear"; "required": false; "isSignal": true; }; "show": { "alias": "show"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[loading]", "[error]", "[errorAction]"], true, never>;
}
