import { VariantRef, Baseline, InlineVariableComponentValueTypeEnum } from '@ninetailed/experience.js-shared'; import { z } from 'zod'; export declare enum ComponentTypeEnum { EntryReplacement = "EntryReplacement", InlineVariable = "InlineVariable" } export declare const entryReplacementVariantSchema: z.ZodObject<{ id: z.ZodString; hidden: z.ZodDefault; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>; export declare const EntryReplacementComponentSchema: z.ZodObject<{ type: z.ZodLiteral; baseline: z.ZodObject<{ id: z.ZodString; hidden: z.ZodDefault; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>; variants: z.ZodArray; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden: boolean; }; variants: { id: string; hidden: boolean; }[]; }, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden?: boolean | undefined; }; variants: { id: string; hidden?: boolean | undefined; }[]; }>; export type EntryReplacementComponent = z.infer; export type TExperienceConfigComponentSchema = z.infer; export declare function isEntryReplacementComponent(component: TExperienceConfigComponentSchema): component is EntryReplacementComponent; export declare const InlineVariableComponentSchema: z.ZodObject<{ type: z.ZodLiteral; key: z.ZodString; valueType: z.ZodNativeEnum; baseline: z.ZodObject<{ value: z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodType]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }, { value?: unknown; }>; variants: z.ZodArray]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }, { value?: unknown; }>, "many">; }, "strip", z.ZodTypeAny, { type: ComponentTypeEnum.InlineVariable; baseline: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }; variants: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }, { type: ComponentTypeEnum.InlineVariable; baseline: { value?: unknown; }; variants: { value?: unknown; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }>; export type InlineVariableComponent = z.infer; export declare function isInlineVariableComponent(component: TExperienceConfigComponentSchema): component is InlineVariableComponent; export declare const ExperienceConfigComponentSchema: z.ZodEffects; baseline: z.ZodObject<{ id: z.ZodString; hidden: z.ZodDefault; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>; variants: z.ZodArray; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden: boolean; }; variants: { id: string; hidden: boolean; }[]; }, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden?: boolean | undefined; }; variants: { id: string; hidden?: boolean | undefined; }[]; }>, z.ZodObject<{ type: z.ZodLiteral; key: z.ZodString; valueType: z.ZodNativeEnum; baseline: z.ZodObject<{ value: z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodType]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }, { value?: unknown; }>; variants: z.ZodArray]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }, { value?: unknown; }>, "many">; }, "strip", z.ZodTypeAny, { type: ComponentTypeEnum.InlineVariable; baseline: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }; variants: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }, { type: ComponentTypeEnum.InlineVariable; baseline: { value?: unknown; }; variants: { value?: unknown; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }>]>, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden: boolean; }; variants: { id: string; hidden: boolean; }[]; } | { type: ComponentTypeEnum.InlineVariable; baseline: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }; variants: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }, unknown>; export declare const Config: z.ZodObject<{ distribution: z.ZodDefault>>; traffic: z.ZodDefault>; components: z.ZodDefault; baseline: z.ZodObject<{ id: z.ZodString; hidden: z.ZodDefault; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>; variants: z.ZodArray; }, "strip", z.ZodTypeAny, { id: string; hidden: boolean; }, { id: string; hidden?: boolean | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden: boolean; }; variants: { id: string; hidden: boolean; }[]; }, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden?: boolean | undefined; }; variants: { id: string; hidden?: boolean | undefined; }[]; }>, z.ZodObject<{ type: z.ZodLiteral; key: z.ZodString; valueType: z.ZodNativeEnum; baseline: z.ZodObject<{ value: z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodType]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }, { value?: unknown; }>; variants: z.ZodArray]>; }, "strip", z.ZodTypeAny, { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }, { value?: unknown; }>, "many">; }, "strip", z.ZodTypeAny, { type: ComponentTypeEnum.InlineVariable; baseline: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }; variants: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }, { type: ComponentTypeEnum.InlineVariable; baseline: { value?: unknown; }; variants: { value?: unknown; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }>]>, { type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden: boolean; }; variants: { id: string; hidden: boolean; }[]; } | { type: ComponentTypeEnum.InlineVariable; baseline: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }; variants: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; }, unknown>, "many">>>; sticky: z.ZodDefault>; }, "strip", z.ZodTypeAny, { distribution: number[]; traffic: number; components: ({ type: ComponentTypeEnum.EntryReplacement; baseline: { id: string; hidden: boolean; }; variants: { id: string; hidden: boolean; }[]; } | { type: ComponentTypeEnum.InlineVariable; baseline: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }; variants: { value: string | number | boolean | import("@ninetailed/experience.js-shared").Properties; }[]; key: string; valueType: InlineVariableComponentValueTypeEnum; })[]; sticky: boolean; }, { distribution?: number[] | undefined; traffic?: number | undefined; components?: unknown[] | undefined; sticky?: boolean | undefined; }>; export type ConfigLike = z.input; export type Config = z.infer; export interface BaselineWithVariantRefs { baseline: Baseline; variants: VariantRef[]; }