import { ProgressBar } from './../index';
import { Animation, Orientation } from './../index';
import { AfterViewInit, ElementRef, OnInit, OnChanges, OnDestroy, SimpleChanges, EventEmitter } from '@angular/core';
import { BaseElement } from './smart.element';
import * as i0 from "@angular/core";
export { Animation, Orientation, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { ProgressBar } from './../index';
export declare class ProgressBarComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<ProgressBar>);
    private eventHandlers;
    nativeElement: ProgressBar;
    /** @description Creates the component on demand.
     * @param properties An optional object of properties, which will be added to the template binded ones.
     */
    createComponent(properties?: {}): any;
    /** @description Sets or retrieves the current animation mode for the element. When this property is set to 'none', all animations are disabled and the element will not perform any animated transitions. Otherwise, specifying a different value enables the corresponding animation behavior. */
    get animation(): Animation | string;
    set animation(value: Animation | string);
    /** @description Specifies whether the element is active and interactive (enabled) or inactive and unresponsive to user input (disabled). When set to true, the element is disabled and cannot be interacted with; when set to false, the element remains enabled and fully functional. */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Sets the Progress bar’s value to the indeterminate state (by assigning null), which triggers and starts the loading animation. In the indeterminate state, the Progress bar does not display a fixed value but instead shows a continuous animation to indicate ongoing activity or loading without specifying progress percentage. */
    get indeterminate(): boolean;
    set indeterminate(value: boolean);
    /** @description Specifies the direction in which the Progress Bar fills as its value increases, such as left to right, right to left, top to bottom, or bottom to top. */
    get inverted(): boolean;
    set inverted(value: boolean);
    /** @description Gets or sets the unlockKey property, which serves as the authorization code required to activate and access the product’s full features. */
    get formatFunction(): {
        (value: number): string;
    };
    set formatFunction(value: {
        (value: number): string;
    });
    /** @description Defines or retrieves the current language setting for the component. This property determines which language is used for displaying text and messages, and works together with the messages property to select the appropriate localized strings. Adjusting this property updates the displayed language dynamically based on the provided message translations. */
    get unlockKey(): string;
    set unlockKey(value: string);
    /** @description Callback function associated with the localization module, typically invoked to handle language changes, load localized resources, or update content based on the selected locale. */
    get locale(): string;
    set locale(value: string);
    /** @description Defines the highest value that the progress bar can represent, establishing the upper limit for progress tracking. This value determines when the progress bar is considered 100% complete. */
    get localizeFormatFunction(): any;
    set localizeFormatFunction(value: any);
    /** @description Defines an object containing string values that represent the various states of password strength (e.g., "weak", "medium", "strong"). These values can be used to display contextual feedback to users based on the evaluated strength of their password. */
    get max(): number;
    set max(value: number);
    /** @description Defines the lowest allowable value for the progress bar, representing the starting point from which progress is measured. This sets the minimum boundary for the progress indicator’s range. */
    get messages(): any;
    set messages(value: any);
    /** @description Specifies whether the progress bar is displayed horizontally or vertically. Adjusting this property changes the direction in which the progress indicator fills. */
    get min(): number;
    set min(value: number);
    /** @description Specifies or retrieves a value that determines whether the element's alignment supports right-to-left (RTL) text direction, typically used for languages such as Arabic or Hebrew. When enabled, the element's content and layout will be adjusted to accommodate RTL locales. */
    get orientation(): Orientation | string;
    set orientation(value: Orientation | string);
    /** @description Controls the visibility of the label for the Progress Bar. When enabled, the label will be displayed; when disabled, the label will be hidden. */
    get rightToLeft(): boolean;
    set rightToLeft(value: boolean);
    /** @description Specifies the theme that controls the visual style and appearance of the element, including aspects such as colors, fonts, and overall design. Selecting a theme customizes how the element is displayed to users. */
    get showProgressValue(): boolean;
    set showProgressValue(value: boolean);
    /** @description If set to true, this property prevents the element from receiving keyboard focus, making it unreachable via keyboard navigation such as the Tab key. */
    get theme(): string;
    set theme(value: string);
    /** @description Retrieves the current value of the progress bar or sets it to a specified value, updating the visual representation accordingly. This value typically indicates the progress of a task as a numeric value within a defined range (e.g., 0 to 100). */
    get unfocusable(): boolean;
    set unfocusable(value: boolean);
    /** @description undefined */
    get value(): number;
    set value(value: number);
    /** @description This event is triggered whenever the value of the associated input or component is modified by the user or via programmatic changes. It provides an opportunity to respond in real time to updates, such as validating input, updating the UI, or synchronizing data with other components.
    *  @param event. The custom event. 	*/
    onChange: EventEmitter<CustomEvent>;
    get isRendered(): boolean;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    /** @description Add event listeners. */
    private listen;
    /** @description Remove event listeners. */
    private unlisten;
    static ɵfac: i0.ɵɵFactoryDeclaration<ProgressBarComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ProgressBarComponent, "smart-progress-bar, [smart-progress-bar]", ["smart-progress-bar"], { "animation": "animation"; "disabled": "disabled"; "indeterminate": "indeterminate"; "inverted": "inverted"; "formatFunction": "formatFunction"; "unlockKey": "unlockKey"; "locale": "locale"; "localizeFormatFunction": "localizeFormatFunction"; "max": "max"; "messages": "messages"; "min": "min"; "orientation": "orientation"; "rightToLeft": "rightToLeft"; "showProgressValue": "showProgressValue"; "theme": "theme"; "unfocusable": "unfocusable"; "value": "value"; }, { "onChange": "onChange"; }, never>;
}
