/**
* 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';
/**
* Defines a single sub-column of a column of type JSON. This can be used to enable the faceting of the sub-columns.
* @export
* @interface JsonSubColumnModel
*/
export interface JsonSubColumnModel {
/**
* The display name of the column
* @type {string}
* @memberof JsonSubColumnModel
*/
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 JsonSubColumnModel
*/
columnType?: JsonSubColumnModelColumnTypeEnum;
/**
* Set to one of the enumerated values to indicate a column should be treated as a facet
* @type {string}
* @memberof JsonSubColumnModel
*/
facetType?: JsonSubColumnModelFacetTypeEnum;
/**
*
* @type {FacetColumnSortConfig}
* @memberof JsonSubColumnModel
*/
facetSortConfig?: FacetColumnSortConfig;
/**
* Defines the JSON path of the sub column. Use the '$' char to represent the root of JSON object. If the JSON key of a sub column is 'a', then the jsonPath for that column would be: '$.a'.
* @type {string}
* @memberof JsonSubColumnModel
*/
jsonPath?: string;
}
/**
* @export
*/
export declare const JsonSubColumnModelColumnTypeEnum: {
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 JsonSubColumnModelColumnTypeEnum = typeof JsonSubColumnModelColumnTypeEnum[keyof typeof JsonSubColumnModelColumnTypeEnum];
/**
* @export
*/
export declare const JsonSubColumnModelFacetTypeEnum: {
readonly enumeration: "enumeration";
readonly range: "range";
};
export type JsonSubColumnModelFacetTypeEnum = typeof JsonSubColumnModelFacetTypeEnum[keyof typeof JsonSubColumnModelFacetTypeEnum];
/**
* Check if a given object implements the JsonSubColumnModel interface.
*/
export declare function instanceOfJsonSubColumnModel(value: object): value is JsonSubColumnModel;
export declare function JsonSubColumnModelFromJSON(json: any): JsonSubColumnModel;
export declare function JsonSubColumnModelFromJSONTyped(json: any, ignoreDiscriminator: boolean): JsonSubColumnModel;
export declare function JsonSubColumnModelToJSON(json: any): JsonSubColumnModel;
export declare function JsonSubColumnModelToJSONTyped(value?: JsonSubColumnModel | null, ignoreDiscriminator?: boolean): any;