import { TccPrimitiveValue } from "../../../../../odata/models/shared.model";
import { TccClientClassBase } from "./tcc-client-class-base";
import { TccSingularity } from "../tcc-singularity";
export declare class TccClientTable extends TccClientClassBase {
    constructor(singularity: TccSingularity);
    /**
     * RowCount gibt die aktuelle Anzahl der Zeilen in der Positionstabelle zurück.
     */
    get RowCount(): number;
    /**
     * Clear leert die gesamte Tabelle.
     * @returns {boolean} - success
     */
    Clear(): boolean;
    /**
     * DeleteRow löscht die angegebene Zeile in der Tabelle.
     * @param {string}  row - Zeilenindex
     * @returns {boolean} - success
     */
    DeleteRow(row: number): boolean;
    /**
     * Gibt die Spalte des aktuellen Zellen/Eingabefokus im Positionsgrid zurück.
     * @returns {number} - focused column
     */
    GetCellFocusColumn(): number;
    /**
     * Gibt die Zeile des aktuellen Zellen/Eingabefokus im Positionsgrids zurück.
     * @returns {number} - focused row
     */
    GetCellFocusRow(): number;
    /**
     * Die Funktion liefert den technischen Feldnamen der angegebenen Spalte zurück. Liegt diese außerhalb des gültigen Bereichs, wird ein Blank zurückgeliefert.
     * @param {number}  row - Spaltenindex
     * @returns {string} - fieldname
     */
    GetFieldName(column: number): string;
    /**
     * Ermittelt die aktuelle Auswahl in den Positionsdaten.
     * @param {number}  left - linke Koordinate
     * @param {number}  top - oben Koordinate
     * @param {number}  right - rechts Koordinate
     * @param {number}  bottom - unten Koordinate
     * @returns {string} - success
     */
    GetSelection(left: number, top: number, right: number, bottom: number): boolean;
    /**
     * GetValue gibt den Inhalt des in Field und Row angegebenen Feldes zurück. Field ist dabei entweder die Id oder der technische Name des Feldes. Row gibt die Zeile im Grid an, startend bei 0. Das Ergebnis wird im entsprechenden Typ des Feldes zurückgeliefert. Also zum Beispiel ein Wert vom Typ Date oder WideString.
     * @param {string}  field - field path
     * @param {number}  row - zeilenindex
     * @returns {TccPrimitiveValue} - Feldwert
     */
    GetValue(field: string, row: number): TccPrimitiveValue;
    /**
     * Fügt eine Zeile vor der in Row angegebenen Zeile im Positionsgrid ein.
     * @param {number}  row - zeilenindex
     * @returns {boolean} - success
     */
    InsertRow(row: number): boolean;
    /**
     * Setzt den aktuellen Zellenfokus des Positionsgrids. Column ist dabei entweder die Id oder der technische Name des Feldes. Liegt Column oder Row außerhalb des zulässigen Bereichs wird im Ergebnis False zurückgeliefert - ansonsten True.
     * @param {number}  column - spaltenindex
     * @param {number}  row - zeilenindex
     * @returns {boolean} - success
     */
    SetCellFocus(column: number, row: number): boolean;
    /**
     * SetState setzt die Tabellenzelle auf einen der vier verfügbaren Statis von TccFieldState. Column ist dabei entweder die Id oder der technische Name der Spalte. Der Benutzer sieht die angegebene Meldung beim Betreten der entsprechenden Zelle.
     * @param {number}  column - spaltenindex
     * @param {number}  row - zeilenindex
     * @param {any}  status - feldstatus
     * @param {string}  message - feldnachricht
     * @returns {boolean} - success
     */
    SetState(column: number, row: number, status: any, message: string): boolean;
    /**
     * SetValue setzt den Inhalt des angegeben Feldes in der Zeile Row. Field ist dabei entweder die Id oder der technische Name des Feldes. Row gibt die Zeile im Grid an, startend bei 0.  Der Wert muss dabei im entsprechenden Typ des Zielfeldes übergeben werden. Ansonsten wird versucht eine automatische Typumwandlung vorzunehmen.
     * @param {number}  field - fieldpath
     * @param {number}  row - zeilenindex
     * @param {TccPrimitiveValue}  value - neuer Feldwert
     * @returns {boolean} - success
     */
    SetValue(field: string, row: number, value: TccPrimitiveValue): boolean;
}
