import { AcDDRelationship } from "./ac-dd-relationship";
import { AcDDTable } from "./ac-dd-table";
import { AcDDTableFieldProperty } from "./ac-dd-table-field-property";
export declare class AcDDTableField {
    static readonly keyFieldName = "field_name";
    static readonly keyFieldProperties = "field_properties";
    static readonly keyFieldType = "field_type";
    static readonly keyFieldValue = "field_value";
    get autoNumberLength(): number;
    get autoNumberPrefix(): string;
    get checkInAutoNumber(): boolean;
    get checkInModify(): boolean;
    get checkInSave(): boolean;
    get defaultValue(): any;
    get fieldTitle(): string;
    get foreignKey(): boolean;
    get foreignKeyRelationship(): AcDDRelationship | undefined;
    get foreignKeyRelationships(): AcDDRelationship[];
    get inSearchQuery(): boolean;
    get isAutoIncrement(): boolean;
    get isAutoNumber(): boolean;
    get isSelectDistinct(): boolean;
    get notNull(): boolean;
    get primaryKey(): boolean;
    get required(): boolean;
    get selectOptions(): any[];
    get setNullBeforeDelete(): boolean;
    get size(): number;
    get uniqueKey(): boolean;
    fieldName: string;
    fieldProperties: {
        [key: string]: AcDDTableFieldProperty;
    };
    fieldType: string;
    fieldValue: any;
    table: AcDDTable;
    static fromJson(jsonData: {
        [key: string]: any;
    }): AcDDTableField;
    setValuesFromJson(jsonData?: {
        [key: string]: any;
    }): void;
    toJson(): {
        [key: string]: any;
    };
    toString(): string;
}
