import { PropertyFilter } from './PropertyFilter.js'; declare enum NumberFilterMode { GreaterThan = "GreaterThan", LessThan = "LessThan", Between = "Between", NotBetween = "NotBetween", Equal = "Equal", NotEqual = "NotEqual" } interface NumberFilter { definitionId: string; mode: NumberFilterMode; start?: number; end?: number; } declare enum StringFilterMode { Contains = "Contains", Equals = "Equals", NotContains = "NotContains", NotEquals = "NotEquals", NotEmpty = "NotEmpty", Empty = "Empty" } interface StringFilter { definitionId: string; value: string; mode: StringFilterMode; } declare enum ChoicesFilterMode { Or = "Or", And = "And", /** * Means !(A || B) == !A && !B */ Nor = "Nor", /** * Means !(A && B) == !A || !B */ Nand = "Nand" } interface ChoicesFilter { definitionId: string; choiceIds: string[]; mode: ChoicesFilterMode; } declare enum DateFilterMode { GreaterThan = "GreaterThan", LessThan = "LessThan", Between = "Between", NotBetween = "NotBetween", Equal = "Equal", NotEqual = "NotEqual" } interface DateFilter { definitionId: string; mode: DateFilterMode; minimumDate?: number; maximumDate?: number; } declare enum GroupFilterMode { Or = "Or", And = "And", /** * Means !(A || B) == !A && !B */ Nor = "Nor", /** * Means !(A && B) == !A || !B */ Nand = "Nand" } interface FilterGroup { definitionId: string; filters: Filter[]; mode: GroupFilterMode; } interface FilterGroupEncoded { data: Filter; version: number; } interface OldPropertyFilter { enabledWhen: FilterGroupEncoded; requiredWhen: FilterGroupEncoded | null; } declare enum RegistrationsFilterMode { Or = "Or", And = "And", /** * Means !(A || B) == !A && !B */ Nor = "Nor", /** * Means !(A && B) == !A || !B */ Nand = "Nand" } interface RegistrationsFilterChoice { id: string; name: string; waitingList: boolean; } interface RegistrationsFilter { definitionId: string; choices: RegistrationsFilterChoice[]; mode: RegistrationsFilterMode; } type Filter = NumberFilter | StringFilter | ChoicesFilter | DateFilter | FilterGroup | OldPropertyFilter | RegistrationsFilter; export declare function convertOldPropertyFilter(filter: OldPropertyFilter): PropertyFilter; export {}; //# sourceMappingURL=convertOldPropertyFilter.d.ts.map