/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';
import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core/delegates/form-field-component-delegate';
import { ITextFieldComponentDelegateConfig } from '../text-field/text-field-component-delegate';
import { IQuantityFieldComponent } from './quantity-field';
export declare type QuantityFieldComponentDelegateProps = Partial<IQuantityFieldComponent>;
export interface IQuantityFieldComponentDelegateOptions extends IFormFieldComponentDelegateOptions {
    id?: string;
    label?: string;
    value?: string;
    step?: string;
    helperText?: string;
    textFieldDelegateConfig?: ITextFieldComponentDelegateConfig;
}
export interface IQuantityFieldComponentDelegateConfig extends IBaseComponentDelegateConfig<IQuantityFieldComponent, IQuantityFieldComponentDelegateOptions> {
}
export declare class QuantityFieldComponentDelegate extends FormFieldComponentDelegate<IQuantityFieldComponent, IQuantityFieldComponentDelegateOptions> {
    private _textFieldDelegate;
    private _labelElement;
    private _helperTextElement;
    constructor(config?: IQuantityFieldComponentDelegateConfig);
    protected _build(): IQuantityFieldComponent;
    protected _configure(): void;
    get value(): string;
    set value(value: string);
    get disabled(): boolean;
    set disabled(value: boolean);
    get invalid(): boolean;
    set invalid(value: boolean);
    get inputElement(): HTMLInputElement;
    get labelElement(): HTMLLabelElement | undefined;
    onChange(listener: (value: string) => void): void;
    onFocus(listener: (evt: Event) => void): void;
    onBlur(listener: (evt: Event) => void): void;
    private _attachTextField;
    setLabel(text: string | null): void;
    setHelperText(text: string | null): void;
    private _createLabel;
    private _attachButton;
}
