/**
 * Generated by orval v8.19.0 🍺
 * Do not edit manually.
 * Webitel API
 * OpenAPI spec version: 24.04.0
 */
import type { DataTypeLookup } from './dataTypeLookup';
import type { TypeBinary } from './typeBinary';
import type { TypeBool } from './typeBool';
import type { TypeDatetime } from './typeDatetime';
import type { TypeDuration } from './typeDuration';
import type { TypeFloat } from './typeFloat';
import type { TypeInt } from './typeInt';
import type { TypeKind } from './typeKind';
import type { TypeText } from './typeText';
import type { TypeUint } from './typeUint';
/**
 * Field of the struct.
 */
export interface DataField {
    /**
     * Always signifies that the field value will be computed on any write (INSERT OR UPDATE) operations.
     * The field cannot be written to, and when read the result of the last generated expression will be returned.
     *
     * The generation expression can refer to other columns in the table, but not other generated columns. Any functions and operators used must be immutable. References to other tables are not allowed.
     */
    always?: unknown;
    binary?: TypeBinary;
    bool?: TypeBool;
    datetime?: TypeDatetime;
    /**
     * The `default` expression will be used in `INSERT` operation
     * that does not specify a value for the field.
     *
     * If there is no default for a field, then the default is null.
     */
    default?: unknown;
    disabled?: boolean;
    duration?: TypeDuration;
    float?: TypeFloat;
    float32?: TypeFloat;
    float64?: TypeFloat;
    hidden?: boolean;
    /** Short description. Default: {name}. */
    hint?: string;
    /**
     * Field [code] name.
     *
     * code
     */
    id?: string;
    int?: TypeInt;
    int32?: TypeInt;
    int64?: TypeInt;
    /** Required. The field type. */
    kind?: TypeKind;
    lookup?: DataTypeLookup;
    /**
     * Title of the field. Lang specific.
     *
     * title
     */
    name?: string;
    /**
     * Optional. Disable any write (INSERT OR UPDATE) operations.
     * READONLY signifies that the field value will be always computed on any write (INSERT OR UPDATE) operations.
     * If selected, the `default` value MUST be specified.
     *
     * FIXME: Is base field ? [ id, created_, updated_ ]
     */
    readonly?: boolean;
    required?: boolean;
    richtext?: TypeText;
    string?: TypeText;
    uint?: TypeUint;
    uint32?: TypeUint;
    uint64?: TypeUint;
}
