/// <reference path="../../index.d.ts" />
import { JsxNode, PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina';
import { PropertyValues } from 'lit';

/** [Read more...](https://developers.arcgis.com/javascript/latest/references/common-components/arcgis-label-input/) */
export declare class ArcgisLabelInput extends LitElement {
    /**
     * Specifies the alignment of the component's text elements.
     *
     * @default "center"
     */
    alignment: HTMLCalciteButtonElement["alignment"] & HTMLCalciteInputNumberElement["alignment"];
    /**
     * Indicates whether the component is in edit mode.
     * This value changes when user interacts with the component or when [edit()](#edit) is called.
     * The value is always `false` when the component is in [read-only](#readOnly) mode.
     *
     * @default false
     * @see [edit()](#edit)
     */
    get editing(): boolean;
    /** A function used to format the value. */
    labelFormatter?: (value: number, defaultFormatter: (value: number) => string) => nullish | string;
    /**
     * Indicates whether the component is in read-only mode.
     *
     * @default false
     */
    readOnly: boolean;
    /**
     * The value the component displays.
     *
     * @default 0
     */
    value: number;
    /**
     * Initiates the edit mode for the component.
     *
     * @see [editing](#editing)
     */
    edit(): Promise<void>;
    /** Fires each time a new value is typed and committed. */
    readonly arcgisChange: TargetedEvent<this, void>;
    "@eventTypes": {
        "arcgisChange": ArcgisLabelInput["arcgisChange"]["detail"];
    };
}
