import { DateRange } from '@microsoft/windows-admin-center-sdk/core/base/date/date-range';
export interface QueryDataItem {
    column: QueryDataItemColumn;
    operand: string;
    value: QueryDataItemValue;
    isEditing: boolean;
    irremovable?: boolean;
    invalid?: boolean;
    disabled?: boolean;
    icon?: string;
}
export interface QueryDataItemColumn {
    label: string;
    value: string;
    uneditable?: boolean;
}
export interface QueryDataItemValue {
    value: any;
    type: QueryDataItemValueType;
    temporaryValue?: any;
    options?: object;
    isValueUnset?: boolean;
    searchable?: boolean;
    tooltip?: string;
    customDisplayLabel?: string;
}
export declare enum QueryDataItemValueType {
    SingleDropdown = "SingleDropdown",
    TextInput = "TextInput",
    MultiSelectDropdown = "MultiSelectDropdown",
    TimespanDropdown = "TimespanDropdown",
    Disabled = "Disabled"
}
export interface QueryData {
    contents: QueryDataItem[];
}
export interface QueryDataItemPresetOptions {
    contents: QueryDataItemPresetOption[];
}
export interface QueryDataItemPresetOption {
    fieldName: string;
    fieldValue: QueryDataItemPresetOptionContent[];
}
export interface QueryDataItemPresetOptionContent {
    label: string;
    value: DateRange;
}
export declare enum QueryDataOperand {
    Eq = "=",
    Gt = ">",
    Lt = "<",
    Nq = "!=",
    Dropdowns = ":"
}
export declare enum ApplyMode {
    'Lazy' = 0,
    'Active' = 1
}
export declare class QueryDataItemPresetGenerator {
    itemGenerator(column: QueryDataItemColumn, operand: QueryDataOperand, value: QueryDataItemValue, irremovable?: boolean, disabled?: boolean, icon?: string): QueryDataItem;
    editingItem(input: QueryDataItem): QueryDataItem;
    columnGenerator(label: string, value: string, uneditable?: boolean): QueryDataItemColumn;
    valueGenerator(value: any, type?: QueryDataItemValueType, searchable?: boolean, temporaryValue?: any): QueryDataItemValue;
}
