import * as _angular_core from '@angular/core';
import { AfterViewInit, ElementRef, Injector } from '@angular/core';
import _StepInput from '@ui5/webcomponents/dist/StepInput.js';
import { UI5CustomEvent } from '@ui5/webcomponents-base';

declare class StepInput implements AfterViewInit {
    /**
     * Defines a value of the component.
     */
    value: _angular_core.InputSignal<number | undefined>;
    /**
     * Defines a minimum value of the component.
     */
    min: _angular_core.InputSignal<number | undefined>;
    /**
     * Defines a maximum value of the component.
     */
    max: _angular_core.InputSignal<number | undefined>;
    /**
     * Defines a step of increasing/decreasing the value of the component.
     */
    step: _angular_core.InputSignal<number | undefined>;
    /**
     * Defines the value state of the component.
     */
    valueState: _angular_core.InputSignal<"None" | "Positive" | "Critical" | "Negative" | "Information" | undefined>;
    /**
     * Defines whether the component is required.
     */
    required: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Determines whether the component is displayed as disabled.
     */
    disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Determines whether the component is displayed as read-only.
     */
    readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines a short hint, intended to aid the user with data entry when the
  component has no value.
  
  **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.
  Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.
     */
    placeholder: _angular_core.InputSignal<string | undefined>;
    /**
     * Determines the name by which the component will be identified upon submission in an HTML form.
  
  **Note:** This property is only applicable within the context of an HTML Form element.
     */
    name: _angular_core.InputSignal<string | undefined>;
    /**
     * Determines the number of digits after the decimal point of the component.
     */
    valuePrecision: _angular_core.InputSignal<number | undefined>;
    /**
     * Defines the accessible ARIA name of the component.
     */
    accessibleName: _angular_core.InputSignal<string | undefined>;
    /**
     * Receives id(or many ids) of the elements that label the component.
     */
    accessibleNameRef: _angular_core.InputSignal<string | undefined>;
    /**
     * Fired when the input operation has finished by pressing Enter or on focusout.
     */
    ui5Change: _angular_core.OutputEmitterRef<UI5CustomEvent<_StepInput, "change">>;
    /**
     * Fired when the value of the component changes at each keystroke.
     */
    ui5Input: _angular_core.OutputEmitterRef<UI5CustomEvent<_StepInput, "input">>;
    /**
     * Fired before the value state of the component is updated internally.
  The event is preventable, meaning that if it's default action is
  prevented, the component will not update the value state.
     */
    ui5ValueStateChange: _angular_core.OutputEmitterRef<UI5CustomEvent<_StepInput, "value-state-change">>;
    /**
     * Available slots for content projection in this component.
     *
     * Slots allow you to insert custom content into predefined areas of the web component.
     * Use the `slot` attribute on child elements to target specific slots.
     *
     * - **valueStateMessage**: Defines the value state message that will be displayed as pop up under the component.
  
  **Note:** If not specified, a default text (in the respective language) will be displayed.
  
  **Note:** The `valueStateMessage` would be displayed,
  when the component is in `Information`, `Critical` or `Negative` value state.
     *
     * @example
     * ```html
     * <ui5-step-input>
     *   <div slot="header">Custom header content</div>
     *   <p>Default slot content</p>
     * </ui5-step-input>
     * ```
     *
     * @readonly
     * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
     */
    readonly slots: {
        name: string;
        description: string;
    }[];
    elementRef: ElementRef<_StepInput>;
    injector: Injector;
    get element(): _StepInput;
    ngAfterViewInit(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<StepInput, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<StepInput, "ui5-step-input, [ui5-step-input]", ["ui5StepInput"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "valueState": { "alias": "valueState"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "valuePrecision": { "alias": "valuePrecision"; "required": false; "isSignal": true; }; "accessibleName": { "alias": "accessibleName"; "required": false; "isSignal": true; }; "accessibleNameRef": { "alias": "accessibleNameRef"; "required": false; "isSignal": true; }; }, { "ui5Change": "ui5Change"; "ui5Input": "ui5Input"; "ui5ValueStateChange": "ui5ValueStateChange"; }, never, ["*"], true, never>;
}

export { StepInput };
