import { z } from 'zod'; import { LogicBlockType } from './enums'; import { ItemType } from '../../items/enums'; export declare const aItemSchema: z.ZodObject<{ id: z.ZodString; blockId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodLiteral; path: z.ZodLiteral<"a">; }, "strip", z.ZodTypeAny, { path: "a"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }, { path: "a"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }>; export declare const bItemSchema: z.ZodObject<{ id: z.ZodString; blockId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodLiteral; path: z.ZodLiteral<"b">; }, "strip", z.ZodTypeAny, { path: "b"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }, { path: "b"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }>; export declare const abTestBlockSchema: z.ZodObject<{ id: z.ZodString; groupId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodEnum<[LogicBlockType.AB_TEST]>; items: z.ZodTuple<[z.ZodObject<{ id: z.ZodString; blockId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodLiteral; path: z.ZodLiteral<"a">; }, "strip", z.ZodTypeAny, { path: "a"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }, { path: "a"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }>, z.ZodObject<{ id: z.ZodString; blockId: z.ZodString; outgoingEdgeId: z.ZodOptional; } & { type: z.ZodLiteral; path: z.ZodLiteral<"b">; }, "strip", z.ZodTypeAny, { path: "b"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }, { path: "b"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }>], null>; options: z.ZodObject<{ aPercent: z.ZodNumber; }, "strip", z.ZodTypeAny, { aPercent: number; }, { aPercent: number; }>; }, "strip", z.ZodTypeAny, { id: string; type: LogicBlockType.AB_TEST; groupId: string; options: { aPercent: number; }; items: [{ path: "a"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }, { path: "b"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }]; outgoingEdgeId?: string | undefined; }, { id: string; type: LogicBlockType.AB_TEST; groupId: string; options: { aPercent: number; }; items: [{ path: "a"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }, { path: "b"; id: string; type: ItemType.AB_TEST; blockId: string; outgoingEdgeId?: string | undefined; }]; outgoingEdgeId?: string | undefined; }>; export declare const defaultAbTestOptions: { aPercent: number; }; export type AbTestBlock = z.infer; //# sourceMappingURL=abTest.d.ts.map