// Type definitions for @dyna-grid/core v1.0.5
// Project: 
// Definitions by: zhangkun <>
import { DyAbstractLabel, IDyLabel } from './dyAbstractLabel';
export declare type FieldElement = HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;
export declare abstract class DyAbstractField<TValue, TConfig extends IDyLabel = IDyLabel> extends DyAbstractLabel<TConfig> {
    protected readonly className?: string;
    static EVENT_CHANGED: string;
    protected previousValue: TValue | null | undefined;
    protected value: TValue | null | undefined;
    protected disabled: boolean;
    constructor(config?: TConfig, template?: string, className?: string);
    protected postConstruct(): void;
    onValueChange(callbackFn: (newValue?: TValue | null) => void): this;
    getWidth(): number;
    setWidth(width: number): this;
    getPreviousValue(): TValue | null | undefined;
    getValue(): TValue | null | undefined;
    setValue(value?: TValue | null, silent?: boolean): this;
    setDisabled(disabled: boolean): this;
    isDisabled(): boolean;
}
