/** * Synapse REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: v1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { FacetColumnSortConfig } from './FacetColumnSortConfig'; import type { JsonSubColumnModel } from './JsonSubColumnModel'; /** * A column model contains the metadata of a single column of a table or view. * @export * @interface ColumnModel */ export interface ColumnModel { /** * The display name of the column * @type {string} * @memberof ColumnModel */ name?: string; /** * The column type determines the type of data that can be stored in a column. Switching between types (using a transaction with TableUpdateTransactionRequest in the "changes" list) is generally allowed except for switching to "_LIST" suffixed types. In such cases, a new column must be created and data must be copied over manually * @type {string} * @memberof ColumnModel */ columnType?: ColumnModelColumnTypeEnum; /** * Set to one of the enumerated values to indicate a column should be treated as a facet * @type {string} * @memberof ColumnModel */ facetType?: ColumnModelFacetTypeEnum; /** * * @type {FacetColumnSortConfig} * @memberof ColumnModel */ facetSortConfig?: FacetColumnSortConfig; /** * The immutable ID issued to new columns * @type {string} * @memberof ColumnModel */ id?: string; /** * The default value for this column. Columns of type ENTITYID, FILEHANDLEID, USERID, and LARGETEXT are not allowed to have default values. * @type {string} * @memberof ColumnModel */ defaultValue?: string; /** * A parameter for columnTypes with a maximum size. For example, ColumnType.STRINGs have a default maximum size of 50 characters, but can be set to a maximumSize of 1 to 1000 characters. For columnType of STRING_LIST, this limits the size of individual string elements in the list * @type {number} * @memberof ColumnModel */ maximumSize?: number; /** * Required if using a columnType with a "_LIST" suffix. Describes the maximum number of values that will appear in that list. The maximum allowed value is determined by a total character budget of 100,000: for STRING_LIST, maximumListLength * maximumSize must not exceed 100,000; for other list types the per-element character size is fixed (INTEGER_LIST/DATE_LIST/USERID_LIST: 20, BOOLEAN_LIST: 5, ENTITYID_LIST: 44) and maximumListLength * that size must not exceed 100,000. Default 100. * @type {number} * @memberof ColumnModel */ maximumListLength?: number; /** * Columns of type STRING can be constrained to an enumeration values set on this list. The maximum number of entries for an enum is 100 * @type {Array} * @memberof ColumnModel */ enumValues?: Array; /** * For column of type JSON that represents the combination of multiple sub-columns, this property is used to define each sub-column. * @type {Array} * @memberof ColumnModel */ jsonSubColumns?: Array; } /** * @export */ export declare const ColumnModelColumnTypeEnum: { readonly STRING: "STRING"; readonly DOUBLE: "DOUBLE"; readonly INTEGER: "INTEGER"; readonly BOOLEAN: "BOOLEAN"; readonly DATE: "DATE"; readonly FILEHANDLEID: "FILEHANDLEID"; readonly ENTITYID: "ENTITYID"; readonly SUBMISSIONID: "SUBMISSIONID"; readonly EVALUATIONID: "EVALUATIONID"; readonly LINK: "LINK"; readonly MEDIUMTEXT: "MEDIUMTEXT"; readonly LARGETEXT: "LARGETEXT"; readonly USERID: "USERID"; readonly STRING_LIST: "STRING_LIST"; readonly INTEGER_LIST: "INTEGER_LIST"; readonly BOOLEAN_LIST: "BOOLEAN_LIST"; readonly DATE_LIST: "DATE_LIST"; readonly ENTITYID_LIST: "ENTITYID_LIST"; readonly USERID_LIST: "USERID_LIST"; readonly JSON: "JSON"; }; export type ColumnModelColumnTypeEnum = typeof ColumnModelColumnTypeEnum[keyof typeof ColumnModelColumnTypeEnum]; /** * @export */ export declare const ColumnModelFacetTypeEnum: { readonly enumeration: "enumeration"; readonly range: "range"; }; export type ColumnModelFacetTypeEnum = typeof ColumnModelFacetTypeEnum[keyof typeof ColumnModelFacetTypeEnum]; /** * Check if a given object implements the ColumnModel interface. */ export declare function instanceOfColumnModel(value: object): value is ColumnModel; export declare function ColumnModelFromJSON(json: any): ColumnModel; export declare function ColumnModelFromJSONTyped(json: any, ignoreDiscriminator: boolean): ColumnModel; export declare function ColumnModelToJSON(json: any): ColumnModel; export declare function ColumnModelToJSONTyped(value?: ColumnModel | null, ignoreDiscriminator?: boolean): any;