import { NumberField as FoundationNumberField } from '@ni/fast-foundation';
import { NumberFieldAppearance } from './types';
declare global {
    interface HTMLElementTagNameMap {
        'nimble-number-field': NumberField;
    }
}
declare const NumberField_base: (abstract new (...args: any[]) => {
    errorText?: string;
    errorVisible: boolean;
    errorHasOverflow: boolean;
    readonly $fastController: import("@ni/fast-element").Controller;
    $emit(type: string, detail?: any, options?: Omit<CustomEventInit, "detail">): boolean | void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
}) & (abstract new (...args: any[]) => {
    requiredVisible: boolean;
    readonly $fastController: import("@ni/fast-element").Controller;
    $emit(type: string, detail?: any, options?: Omit<CustomEventInit, "detail">): boolean | void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
}) & typeof FoundationNumberField;
/**
 * A nimble-styled HTML number input
 */
export declare class NumberField extends NumberField_base {
    appearance: NumberFieldAppearance;
    fullBleed: boolean;
    appearanceReadOnly: boolean;
    private decimalSeparator;
    private inputFilterRegExp;
    private readonly langSubscriber;
    connectedCallback(): void;
    disconnectedCallback(): void;
    protected sanitizeInput(inputText: string): string;
    protected syncValueFromInnerControl(): void;
    protected syncValueToInnerControl(): void;
    private updateDecimalSeparatorAndInputFilter;
    private getSeparatorForLanguange;
    private buildFilterRegExp;
}
export declare const numberFieldTag = "nimble-number-field";
export {};
