import { z } from 'zod'; import { ItemType } from '../../items/enums'; import { LogicBlockType } from './enums'; export declare enum LogicalOperator { OR = "OR", AND = "AND" } export declare enum ComparisonOperators { EQUAL = "Equal to", NOT_EQUAL = "Not equal", CONTAINS = "Contains", NOT_CONTAINS = "Does not contain", GREATER = "Greater than", LESS = "Less than", IS_SET = "Is set", IS_EMPTY = "Is empty", STARTS_WITH = "Starts with", ENDS_WITH = "Ends with", MATCHES_REGEX = "Matches regex", NOT_MATCH_REGEX = "Does not match regex" } declare const comparisonSchema: z.ZodObject<{ id: z.ZodString; variableId: z.ZodOptional; comparisonOperator: z.ZodOptional>; value: z.ZodOptional; }, "strip", z.ZodTypeAny, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }>; export declare const conditionSchema: z.ZodObject<{ logicalOperator: z.ZodNativeEnum; comparisons: z.ZodArray; comparisonOperator: z.ZodOptional>; value: z.ZodOptional; }, "strip", z.ZodTypeAny, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }, { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }>; export declare const conditionItemSchema: z.ZodObject<{ id: z.ZodString; blockId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodLiteral; content: z.ZodObject<{ logicalOperator: z.ZodNativeEnum; comparisons: z.ZodArray; comparisonOperator: z.ZodOptional>; value: z.ZodOptional; }, "strip", z.ZodTypeAny, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }, { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }>; }, "strip", z.ZodTypeAny, { id: string; type: ItemType.CONDITION; content: { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }; blockId: string; outgoingEdgeId?: string | undefined; }, { id: string; type: ItemType.CONDITION; content: { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }; blockId: string; outgoingEdgeId?: string | undefined; }>; export declare const conditionBlockSchema: z.ZodObject<{ id: z.ZodString; groupId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodEnum<[LogicBlockType.CONDITION]>; items: z.ZodArray; } & { type: z.ZodLiteral; content: z.ZodObject<{ logicalOperator: z.ZodNativeEnum; comparisons: z.ZodArray; comparisonOperator: z.ZodOptional>; value: z.ZodOptional; }, "strip", z.ZodTypeAny, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }, { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }, { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }>; }, "strip", z.ZodTypeAny, { id: string; type: ItemType.CONDITION; content: { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }; blockId: string; outgoingEdgeId?: string | undefined; }, { id: string; type: ItemType.CONDITION; content: { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }; blockId: string; outgoingEdgeId?: string | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { id: string; type: LogicBlockType.CONDITION; groupId: string; items: { id: string; type: ItemType.CONDITION; content: { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }; blockId: string; outgoingEdgeId?: string | undefined; }[]; outgoingEdgeId?: string | undefined; }, { id: string; type: LogicBlockType.CONDITION; groupId: string; items: { id: string; type: ItemType.CONDITION; content: { logicalOperator: LogicalOperator; comparisons: { id: string; value?: string | undefined; variableId?: string | undefined; comparisonOperator?: ComparisonOperators | undefined; }[]; }; blockId: string; outgoingEdgeId?: string | undefined; }[]; outgoingEdgeId?: string | undefined; }>; export declare const defaultConditionContent: Condition; export type ConditionItem = z.infer; export type Comparison = z.infer; export type ConditionBlock = z.infer; export type Condition = z.infer; export {}; //# sourceMappingURL=condition.d.ts.map