/**
 * @license
 * Copyright Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { FocusIndicatorFocusMode } from '../focus-indicator';
import { FieldDensity, FieldLabelAlignment, FieldLabelPosition, FieldShape, FieldSupportTextInset, FieldTheme, FieldVariant } from './base/base-field-constants';
import { IFieldAdapter } from './field-adapter';
export interface IFieldCore {
    labelPosition: FieldLabelPosition;
    labelAlignment: FieldLabelAlignment;
    floatLabel: boolean;
    invalid: boolean;
    required: boolean;
    optional: boolean;
    disabled: boolean;
    variant: FieldVariant;
    theme: FieldTheme;
    shape: FieldShape;
    density: FieldDensity;
    dense: boolean;
    popoverIcon: boolean;
    popoverExpanded: boolean;
    multiline: boolean;
    supportTextInset: FieldSupportTextInset;
    focusIndicatorTargetElement: HTMLElement;
    focusIndicatorFocusMode: FocusIndicatorFocusMode;
    focusIndicatorAllowFocus: boolean;
    initialize(): void;
    floatLabelWithoutAnimation(value: boolean): void;
}
export declare class FieldCore implements IFieldCore {
    private _adapter;
    private _labelPosition;
    private _labelAlignment;
    private _floatLabel;
    private _invalid;
    private _required;
    private _optional;
    private _disabled;
    private _variant;
    private _theme;
    private _shape;
    private _density;
    private _dense;
    private _popoverIcon;
    private _popoverExpanded;
    private _multiline;
    private _supportTextInset;
    private _slotChangeListener;
    private _popoverIconClickListener;
    constructor(_adapter: IFieldAdapter);
    initialize(): void;
    private _onSlotChange;
    private _onPopoverIconClick;
    floatLabelWithoutAnimation(value: boolean): void;
    get labelPosition(): FieldLabelPosition;
    set labelPosition(value: FieldLabelPosition);
    get labelAlignment(): FieldLabelAlignment;
    set labelAlignment(value: FieldLabelAlignment);
    get floatLabel(): boolean;
    set floatLabel(value: boolean);
    get invalid(): boolean;
    set invalid(value: boolean);
    get required(): boolean;
    set required(value: boolean);
    get optional(): boolean;
    set optional(value: boolean);
    get disabled(): boolean;
    set disabled(value: boolean);
    get variant(): FieldVariant;
    set variant(value: FieldVariant);
    get theme(): FieldTheme;
    set theme(value: FieldTheme);
    get shape(): FieldShape;
    set shape(value: FieldShape);
    get density(): FieldDensity;
    set density(value: FieldDensity);
    get dense(): boolean;
    set dense(value: boolean);
    get popoverIcon(): boolean;
    set popoverIcon(value: boolean);
    get popoverExpanded(): boolean;
    set popoverExpanded(value: boolean);
    get multiline(): boolean;
    set multiline(value: boolean);
    get supportTextInset(): FieldSupportTextInset;
    set supportTextInset(value: FieldSupportTextInset);
    get focusIndicatorTargetElement(): HTMLElement;
    set focusIndicatorTargetElement(value: HTMLElement);
    get focusIndicatorFocusMode(): FocusIndicatorFocusMode;
    set focusIndicatorFocusMode(value: FocusIndicatorFocusMode);
    get focusIndicatorAllowFocus(): boolean;
    set focusIndicatorAllowFocus(value: boolean);
}
