import { TccFieldState, TccKeyValuePair, TccPrimitiveValue } from "../../../../../odata/models/shared.model";
import { TccInputMask } from "../../../../models/inputMask.model";
import { TccScripting } from "../../tcc-scripting.model";
import { TccIField } from "./tcc-i-field";
import { TccSingularity } from "../tcc-singularity";
import { displayElement } from "../../../tcc-input-mask/tcc-abstract-display-element";
import { TccTableField } from "./tcc-table-field";
import { Observable } from "rxjs";
export declare class TccField extends TccIField {
    protected isTable: boolean;
    private _MaskElement;
    private isTableProperty;
    constructor(path: string[], id: string, name: string, type: TccScripting.FieldType, index: number, ccsingularity: TccSingularity);
    protected getChildren(onlyDesktop?: boolean): Array<TccField>;
    /**
     * check typing to differentiate between tccField and tccTableField
     * @returns whether the object is a TccField
     */
    isTccField(): this is TccField;
    protected getRow(rownum: number): Array<TccTableField>;
    protected get MaskElement(): displayElement;
    /**
     * returns all fields whose businessobject property is a direct subproperty of the property of this field
     */
    get children(): Array<TccField>;
    /**
     * changes the label of the field
     */
    set DisplayText(text: string);
    /**
     * changes the enabled state of the field
     */
    get Enabled(): boolean;
    set Enabled(enabled: boolean);
    /**
     * hides or shows the field
     */
    get Visible(): boolean;
    set Visible(enabled: boolean);
    /**
     * modify the selection options of the field, only for enumeration properties
     */
    set SelectionList(list: TccKeyValuePair[] | string[]);
    get SelectionList(): TccKeyValuePair[];
    /**
     * Adds an selection option, only for enumeration properties
     * @param add the entry to add. As a string or a key value object
     * @returns success
     */
    AddToSelectionList(add: string | TccKeyValuePair): boolean;
    /**
     * Delete all selection options, only for enumeration properties
     * @returns success
     */
    ClearSelectionList(): boolean;
    /**
     * edit the value of the field
     */
    set Value(val: TccPrimitiveValue);
    get Value(): TccPrimitiveValue;
    /**
     * Sets the state of the field and shows the given message
     * @param {string}  state - TccFieldState -> ccFS_Okay, ccFS_Error, ccFS_Warning, ccFS_Note
     * @param {string}  message - message
     * @returns success
     */
    setState(state: TccFieldState, message: string): boolean;
    /**
     * gets the confidence of the field
     */
    get Confidence(): number;
    /**
     * sets the confidence of the field
     */
    set Confidence(confidence: number);
    /**
     * Creates a new element of a collection element
     */
    createCollectionElement(value?: TccInputMask.ValueUnion | TccInputMask.complexValueObjectChildren, index?: number): Observable<void>;
    get CollectionCount(): number;
}
