/// import { z } from "zod"; import { type AuthStrategy } from "../../EditorConfig"; export interface OnboardingStep { id: OnboardingStepId; title: string; description: string; content?: JSX.Element; videoUrl?: string; defaultCompleted?: boolean; } export declare const OnboardingStepId: z.ZodEnum<["createPrismicProject", "chooseLocale", "createProject", "setupSliceMachine", "createPageType", "codePage", "createSlice", "reviewAndPush", "createContent", "renderPage"]>; export type OnboardingStepId = z.infer; export declare const onboardingStateSchema: z.ZodObject<{ completedSteps: z.ZodArray; isDismissed: z.ZodBoolean; context: z.ZodObject<{ framework: z.ZodEffects, "next" | "nuxt" | "sveltekit" | "other", unknown>; starterId: z.ZodOptional>; }, "strip", z.ZodTypeAny, { framework: "next" | "nuxt" | "sveltekit" | "other"; starterId?: string | null | undefined; }, { framework?: unknown; starterId?: string | null | undefined; }>; }, "strip", z.ZodTypeAny, { context: { framework: "next" | "nuxt" | "sveltekit" | "other"; starterId?: string | null | undefined; }; completedSteps: string[]; isDismissed: boolean; }, { context: { framework?: unknown; starterId?: string | null | undefined; }; completedSteps: string[]; isDismissed: boolean; }>; export type OnboardingState = z.infer; export type OnboardingFramework = OnboardingState["context"]["framework"]; export declare const onboardingToggleStepResultSchema: z.ZodObject<{ completedSteps: z.ZodArray; }, "strip", z.ZodTypeAny, { completedSteps: string[]; }, { completedSteps: string[]; }>; export type OnboardingToggleStepResult = z.infer; export declare const onboardingToggleResultSchema: z.ZodObject<{ isDismissed: z.ZodBoolean; }, "strip", z.ZodTypeAny, { isDismissed: boolean; }, { isDismissed: boolean; }>; export type OnboardingToggleResult = z.infer; export declare function getOnboarding(baseUrl: URL, repository: string, authStrategy: AuthStrategy): Promise; export declare function toggleOnboardingStep(stepId: string, baseUrl: URL, repository: string, authStrategy: AuthStrategy): Promise; export declare function toggleOnboarding(baseUrl: URL, repository: string, authStrategy: AuthStrategy): Promise; export type OnboardingTrackSource = "PageBuilder" | "SliceMachine"; export type OnboardingTrackEvent = { event: "shared-onboarding:step-completed"; stepId: string; stepTitle: string; source: OnboardingTrackSource; } | { event: "shared-onboarding:step-opened"; stepId: string; stepTitle: string; source: OnboardingTrackSource; } | { event: "shared-onboarding:completed"; source: OnboardingTrackSource; } | { event: "shared-onboarding:follow-tutorial"; source: OnboardingTrackSource; }; export interface OnboardingTracking { track: (args: OnboardingTrackEvent) => void | Promise; source: OnboardingTrackSource; }