import { SetupContext, SetupState, TemplateFramework } from "../flow/types.js"; export type DependencyMode = "Public" | "Private"; export type DockerAvailabilityIssue = { kind: "missing" | "not_running"; message: string; }; export type PromptPreset = NonNullable; export type SandboxTemplateRef = { id: string; version: string; }; export type SetupHandlers = Partial Promise>>; export type SetupUi = { error: (message: string) => never; log: (message: string) => void; renderSetupCompleteCard: (input: { contextName: string; designSystemName: string; projectUrl: string; shouldRunScan: boolean; }) => void; renderStep: (title: string) => void; renderTemplateReadyCard: (templateDestinationPath: string) => void; }; export type ValidationService = { findParentGitDirectoryLocation(): string | null; }; export type SetupDesignSystemServices = { ensureSandboxTemplateAccess: (workspaceId: string) => Promise; ensureWorkspaceSetupEligibility: (workspaceId: string) => Promise; promptDesignSystemId: () => Promise; resolveDesignSystemName: (designSystemId: string) => Promise; resolveWorkspaceIdForDesignSystem: (designSystemId: string) => Promise; updateSelectedDesignSystem: (designSystemId: string) => void; }; export type SetupScanServices = { persistAnalyzePackages: (componentPackages: string[]) => void; runScanAgainstSourcePath: (input: { componentPackages: string[]; designSystemId: string; scanSourcePath: string; }) => Promise; uploadAnalysisSnapshots: (input: { designSystemId: string; scanOutputPaths: string[]; }) => Promise<{ processingRunId?: string; snapshotIds: string[]; }>; waitForAnalysisProcessing: (input: { designSystemId: string; processingRunId?: string; }) => Promise; }; export type SetupContainerServices = { detectDockerAvailabilityIssue: () => Promise; ensureTemplateRepository: (framework: TemplateFramework, destinationPath: string) => Promise; ensureTemplateVersionIsUnique: (input: { workspaceId: string; designSystemId: string; templateDestinationPath: string; }) => Promise; resolveTemplateUploadPath: (defaultPath: string) => Promise; runTemplateUploadWithCleanup: (input: { dependencyMode?: DependencyMode; designSystemId: string; npmToken?: string; privateDependencyEntries?: string[]; templateDestinationPath: string; workspaceId: string; }) => Promise; }; export type SetupDependencyServices = { applyTemplateDependencyConfiguration: (context: SetupContext) => Promise; createPrivateDependencyEntries: (packageNames: string[]) => string[]; ensureLocalNpmrcFile: (templateDestinationPath: string) => Promise; validateTemplateDependencies: (context: SetupContext) => Promise; }; export type SetupPrototypeServices = { createPrototypeProject: (input: { workspaceId: string; contextId: string; projectName: string; promptText: string; }) => Promise<{ featureId: string; projectId: string; }>; ensureSharedContext: (input: { workspaceId: string; designSystemId: string; contextName: string; sandboxTemplate: SandboxTemplateRef; }) => Promise; openBrowser: (url: string) => Promise; }; export type SetupServices = { validation: ValidationService; container: SetupContainerServices; debug: boolean; dependencies: SetupDependencyServices; designSystems: SetupDesignSystemServices; env: string; prototype: SetupPrototypeServices; scan: SetupScanServices; ui: SetupUi; }; //# sourceMappingURL=runtime.d.ts.map