/**
 * 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.
 */
/**
 * A filter used to select rows based on cell values. For example, to handle a user request like 'find all rows where the Project column is Alpha', you would set 'columnName' to 'Project', 'operator' to 'EQUALS', and 'value' to ['Alpha']
 * @export
 * @interface CellValueFilter
 */
export interface CellValueFilter {
    /**
     * Required. Must be a string matching one of: "org.sagebionetworks.repo.model.grid.query.RowValidationResultFilter", "org.sagebionetworks.repo.model.grid.query.RowSelectionFilter", "org.sagebionetworks.repo.model.grid.query.RowIsValidFilter", "org.sagebionetworks.repo.model.grid.query.CellValueFilter", "org.sagebionetworks.repo.model.grid.query.RowIdFilter"
     * @type {string}
     * @memberof CellValueFilter
     */
    concreteType: CellValueFilterConcreteTypeEnum;
    /**
     * Required. The name of the column to filter by.
     * @type {string}
     * @memberof CellValueFilter
     */
    columnName?: string;
    /**
     * The comparison operator.
     * @type {string}
     * @memberof CellValueFilter
     */
    operator?: CellValueFilterOperatorEnum;
    /**
     * A filter used to select rows based on a specific column's cell value. Use operators like 'EQUALS' or 'LIKE' with the 'value' property for standard comparisons. The 'IS_NULL' operator can be used to find `null` values. The `IS_UNDEFINED` operator can be used to find `undefined` values. When using IN or NOT_IN operators, `value` should be an array of values to compare against. When using either 'LIKE' or 'NOT_LIKE', the wildcard character: '%' is used to represents zero or more characters, and '_' is used to represent a single character.
     * @type {any}
     * @memberof CellValueFilter
     */
    value?: any | null;
}
/**
 * @export
 */
export declare const CellValueFilterConcreteTypeEnum: {
    readonly org_sagebionetworks_repo_model_grid_query_CellValueFilter: "org.sagebionetworks.repo.model.grid.query.CellValueFilter";
};
export type CellValueFilterConcreteTypeEnum = typeof CellValueFilterConcreteTypeEnum[keyof typeof CellValueFilterConcreteTypeEnum];
/**
 * @export
 */
export declare const CellValueFilterOperatorEnum: {
    readonly EQUALS: "EQUALS";
    readonly NOT_EQUALS: "NOT_EQUALS";
    readonly GREATER_THAN: "GREATER_THAN";
    readonly LESS_THAN: "LESS_THAN";
    readonly GREATER_THAN_OR_EQUALS: "GREATER_THAN_OR_EQUALS";
    readonly LESS_THAN_OR_EQUALS: "LESS_THAN_OR_EQUALS";
    readonly IN: "IN";
    readonly NOT_IN: "NOT_IN";
    readonly LIKE: "LIKE";
    readonly NOT_LIKE: "NOT_LIKE";
    readonly IS_NULL: "IS_NULL";
    readonly IS_NOT_NULL: "IS_NOT_NULL";
    readonly IS_UNDEFINED: "IS_UNDEFINED";
    readonly IS_DEFINED: "IS_DEFINED";
};
export type CellValueFilterOperatorEnum = typeof CellValueFilterOperatorEnum[keyof typeof CellValueFilterOperatorEnum];
/**
 * Check if a given object implements the CellValueFilter interface.
 */
export declare function instanceOfCellValueFilter(value: object): value is CellValueFilter;
export declare function CellValueFilterFromJSON(json: any): CellValueFilter;
export declare function CellValueFilterFromJSONTyped(json: any, ignoreDiscriminator: boolean): CellValueFilter;
export declare function CellValueFilterToJSON(json: any): CellValueFilter;
export declare function CellValueFilterToJSONTyped(value?: CellValueFilter | null, ignoreDiscriminator?: boolean): any;
