import { z } from "zod";
export declare const setupStateValues: readonly ["INIT", "SELECT_DESIGN_SYSTEM", "SELECT_SCAN_SOURCE_PATH", "SELECT_SCAN_PACKAGES", "RUN_SCAN", "REVIEW_SCAN_OUTPUT", "UPLOAD_SCAN_RESULTS", "SELECT_TEMPLATE_DESTINATION", "PREPARE_TEMPLATE", "CONFIGURE_DEPENDENCIES", "CONFIGURE_PRIVATE_REGISTRY", "VALIDATE_DEPENDENCY_ACCESS", "UPLOAD_CONTAINER", "CREATE_SHARED_CONTEXT", "FINALIZE_AND_REDIRECT", "DONE"];
export declare const SetupStateSchema: z.ZodEnum<["INIT", "SELECT_DESIGN_SYSTEM", "SELECT_SCAN_SOURCE_PATH", "SELECT_SCAN_PACKAGES", "RUN_SCAN", "REVIEW_SCAN_OUTPUT", "UPLOAD_SCAN_RESULTS", "SELECT_TEMPLATE_DESTINATION", "PREPARE_TEMPLATE", "CONFIGURE_DEPENDENCIES", "CONFIGURE_PRIVATE_REGISTRY", "VALIDATE_DEPENDENCY_ACCESS", "UPLOAD_CONTAINER", "CREATE_SHARED_CONTEXT", "FINALIZE_AND_REDIRECT", "DONE"]>;
export type SetupState = z.infer<typeof SetupStateSchema>;
export declare const SetupSessionStatusSchema: z.ZodEnum<["InProgress", "Completed"]>;
export type SetupSessionStatus = z.infer<typeof SetupSessionStatusSchema>;
export declare const setupTemplateFrameworkValues: readonly ["React", "Angular", "Vue"];
export declare const TemplateFrameworkSchema: z.ZodEnum<["React", "Angular", "Vue"]>;
export type TemplateFramework = z.infer<typeof TemplateFrameworkSchema>;
export type DiscoveredPackage = {
    name: string;
    packageDir: string;
    relativePath: string;
};
export declare const SetupContextSchema: z.ZodObject<{
    analysisProcessingRunId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    componentPackages: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    contextName: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    createdFeatureId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    createdProjectId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    customPrompt: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    dependencyPackageNames: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    dependencyMode: z.ZodCatch<z.ZodOptional<z.ZodEnum<["Public", "Private"]>>>;
    designSystemId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    discoveredPackages: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodObject<{
        name: z.ZodString;
        packageDir: z.ZodString;
        relativePath: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        name: string;
        packageDir: string;
        relativePath: string;
    }, {
        name: string;
        packageDir: string;
        relativePath: string;
    }>, "many">>>;
    privateDependencyEntries: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    npmToken: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    projectUrl: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    selectedPromptPreset: z.ZodCatch<z.ZodOptional<z.ZodEnum<["KitchenSink", "Custom"]>>>;
    repoPaths: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    scanOutputPaths: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    scanSourcePath: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    sharedContextId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    shouldRunScan: z.ZodCatch<z.ZodOptional<z.ZodBoolean>>;
    shouldUploadScanResults: z.ZodCatch<z.ZodOptional<z.ZodBoolean>>;
    templateDestinationPath: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    templateFramework: z.ZodCatch<z.ZodOptional<z.ZodEnum<["React", "Angular", "Vue"]>>>;
    uploadedSandboxTemplateId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    uploadedSandboxTemplateVersion: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    workspaceId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    designSystemId?: string | undefined;
    workspaceId?: string | undefined;
    npmToken?: string | undefined;
    componentPackages?: string[] | undefined;
    analysisProcessingRunId?: string | undefined;
    contextName?: string | undefined;
    createdFeatureId?: string | undefined;
    createdProjectId?: string | undefined;
    customPrompt?: string | undefined;
    dependencyPackageNames?: string[] | undefined;
    dependencyMode?: "Public" | "Private" | undefined;
    discoveredPackages?: {
        name: string;
        packageDir: string;
        relativePath: string;
    }[] | undefined;
    privateDependencyEntries?: string[] | undefined;
    projectUrl?: string | undefined;
    selectedPromptPreset?: "Custom" | "KitchenSink" | undefined;
    repoPaths?: string[] | undefined;
    scanOutputPaths?: string[] | undefined;
    scanSourcePath?: string | undefined;
    sharedContextId?: string | undefined;
    shouldRunScan?: boolean | undefined;
    shouldUploadScanResults?: boolean | undefined;
    templateDestinationPath?: string | undefined;
    templateFramework?: "React" | "Angular" | "Vue" | undefined;
    uploadedSandboxTemplateId?: string | undefined;
    uploadedSandboxTemplateVersion?: string | undefined;
}, {
    designSystemId?: unknown;
    workspaceId?: unknown;
    npmToken?: unknown;
    componentPackages?: unknown;
    analysisProcessingRunId?: unknown;
    contextName?: unknown;
    createdFeatureId?: unknown;
    createdProjectId?: unknown;
    customPrompt?: unknown;
    dependencyPackageNames?: unknown;
    dependencyMode?: unknown;
    discoveredPackages?: unknown;
    privateDependencyEntries?: unknown;
    projectUrl?: unknown;
    selectedPromptPreset?: unknown;
    repoPaths?: unknown;
    scanOutputPaths?: unknown;
    scanSourcePath?: unknown;
    sharedContextId?: unknown;
    shouldRunScan?: unknown;
    shouldUploadScanResults?: unknown;
    templateDestinationPath?: unknown;
    templateFramework?: unknown;
    uploadedSandboxTemplateId?: unknown;
    uploadedSandboxTemplateVersion?: unknown;
}>;
export type SetupContext = z.infer<typeof SetupContextSchema>;
export declare const SetupSessionSchema: z.ZodObject<Omit<{
    analysisProcessingRunId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    componentPackages: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    contextName: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    createdFeatureId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    createdProjectId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    customPrompt: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    dependencyPackageNames: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    dependencyMode: z.ZodCatch<z.ZodOptional<z.ZodEnum<["Public", "Private"]>>>;
    designSystemId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    discoveredPackages: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodObject<{
        name: z.ZodString;
        packageDir: z.ZodString;
        relativePath: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        name: string;
        packageDir: string;
        relativePath: string;
    }, {
        name: string;
        packageDir: string;
        relativePath: string;
    }>, "many">>>;
    privateDependencyEntries: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    npmToken: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    projectUrl: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    selectedPromptPreset: z.ZodCatch<z.ZodOptional<z.ZodEnum<["KitchenSink", "Custom"]>>>;
    repoPaths: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    scanOutputPaths: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
    scanSourcePath: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    sharedContextId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    shouldRunScan: z.ZodCatch<z.ZodOptional<z.ZodBoolean>>;
    shouldUploadScanResults: z.ZodCatch<z.ZodOptional<z.ZodBoolean>>;
    templateDestinationPath: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    templateFramework: z.ZodCatch<z.ZodOptional<z.ZodEnum<["React", "Angular", "Vue"]>>>;
    uploadedSandboxTemplateId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    uploadedSandboxTemplateVersion: z.ZodCatch<z.ZodOptional<z.ZodString>>;
    workspaceId: z.ZodCatch<z.ZodOptional<z.ZodString>>;
}, "npmToken" | "discoveredPackages" | "scanOutputPaths"> & {
    lastState: z.ZodEnum<["INIT", "SELECT_DESIGN_SYSTEM", "SELECT_SCAN_SOURCE_PATH", "SELECT_SCAN_PACKAGES", "RUN_SCAN", "REVIEW_SCAN_OUTPUT", "UPLOAD_SCAN_RESULTS", "SELECT_TEMPLATE_DESTINATION", "PREPARE_TEMPLATE", "CONFIGURE_DEPENDENCIES", "CONFIGURE_PRIVATE_REGISTRY", "VALIDATE_DEPENDENCY_ACCESS", "UPLOAD_CONTAINER", "CREATE_SHARED_CONTEXT", "FINALIZE_AND_REDIRECT", "DONE"]>;
    startedAt: z.ZodString;
    status: z.ZodEnum<["InProgress", "Completed"]>;
    updatedAt: z.ZodString;
}, "strip", z.ZodTypeAny, {
    status: "InProgress" | "Completed";
    updatedAt: string;
    startedAt: string;
    lastState: "INIT" | "SELECT_DESIGN_SYSTEM" | "SELECT_SCAN_SOURCE_PATH" | "SELECT_SCAN_PACKAGES" | "RUN_SCAN" | "REVIEW_SCAN_OUTPUT" | "UPLOAD_SCAN_RESULTS" | "SELECT_TEMPLATE_DESTINATION" | "PREPARE_TEMPLATE" | "CONFIGURE_DEPENDENCIES" | "CONFIGURE_PRIVATE_REGISTRY" | "VALIDATE_DEPENDENCY_ACCESS" | "UPLOAD_CONTAINER" | "CREATE_SHARED_CONTEXT" | "FINALIZE_AND_REDIRECT" | "DONE";
    designSystemId?: string | undefined;
    workspaceId?: string | undefined;
    componentPackages?: string[] | undefined;
    analysisProcessingRunId?: string | undefined;
    contextName?: string | undefined;
    createdFeatureId?: string | undefined;
    createdProjectId?: string | undefined;
    customPrompt?: string | undefined;
    dependencyPackageNames?: string[] | undefined;
    dependencyMode?: "Public" | "Private" | undefined;
    privateDependencyEntries?: string[] | undefined;
    projectUrl?: string | undefined;
    selectedPromptPreset?: "Custom" | "KitchenSink" | undefined;
    repoPaths?: string[] | undefined;
    scanSourcePath?: string | undefined;
    sharedContextId?: string | undefined;
    shouldRunScan?: boolean | undefined;
    shouldUploadScanResults?: boolean | undefined;
    templateDestinationPath?: string | undefined;
    templateFramework?: "React" | "Angular" | "Vue" | undefined;
    uploadedSandboxTemplateId?: string | undefined;
    uploadedSandboxTemplateVersion?: string | undefined;
}, {
    status: "InProgress" | "Completed";
    updatedAt: string;
    startedAt: string;
    lastState: "INIT" | "SELECT_DESIGN_SYSTEM" | "SELECT_SCAN_SOURCE_PATH" | "SELECT_SCAN_PACKAGES" | "RUN_SCAN" | "REVIEW_SCAN_OUTPUT" | "UPLOAD_SCAN_RESULTS" | "SELECT_TEMPLATE_DESTINATION" | "PREPARE_TEMPLATE" | "CONFIGURE_DEPENDENCIES" | "CONFIGURE_PRIVATE_REGISTRY" | "VALIDATE_DEPENDENCY_ACCESS" | "UPLOAD_CONTAINER" | "CREATE_SHARED_CONTEXT" | "FINALIZE_AND_REDIRECT" | "DONE";
    designSystemId?: unknown;
    workspaceId?: unknown;
    componentPackages?: unknown;
    analysisProcessingRunId?: unknown;
    contextName?: unknown;
    createdFeatureId?: unknown;
    createdProjectId?: unknown;
    customPrompt?: unknown;
    dependencyPackageNames?: unknown;
    dependencyMode?: unknown;
    privateDependencyEntries?: unknown;
    projectUrl?: unknown;
    selectedPromptPreset?: unknown;
    repoPaths?: unknown;
    scanSourcePath?: unknown;
    sharedContextId?: unknown;
    shouldRunScan?: unknown;
    shouldUploadScanResults?: unknown;
    templateDestinationPath?: unknown;
    templateFramework?: unknown;
    uploadedSandboxTemplateId?: unknown;
    uploadedSandboxTemplateVersion?: unknown;
}>;
export type SetupSession = z.infer<typeof SetupSessionSchema>;
type SetupStepHandler = (context: SetupContext) => Promise<SetupContext | void>;
export type SetupOrchestratorDependencies = {
    handlers?: Partial<Record<SetupState, SetupStepHandler>>;
    log: (message: string) => void;
    onStateTransition?: (state: SetupState, context: SetupContext) => Promise<void> | void;
};
export {};
//# sourceMappingURL=types.d.ts.map