import type { RegistrySetupFact } from "#setup/registry-setup-protocol.js"; import { detectDeployment } from "#setup/project-resolution.js"; import type { Prompter } from "#setup/prompter.js"; import { getVercelAuthStatus } from "#setup/vercel-project.js"; /** Inputs shared by every registry-owned integration setup flow. */ export interface RunIntegrationSetupOptions { appRoot: string; prompter: Prompter; signal?: AbortSignal; yes?: boolean; } /** Effects shared by the built-in integration setup runner. */ export interface IntegrationSetupRunnerDeps { detectDeployment: typeof detectDeployment; getVercelAuthStatus: typeof getVercelAuthStatus; } /** Outcome returned by one registry-owned integration setup flow. */ export type IntegrationSetupOutcome = { kind: "cancelled"; } | { kind: "done"; facts?: readonly RegistrySetupFact[]; }; /** Runs one built-in integration setup flow selected by its registry setup name. */ export declare function runIntegrationSetup(kind: string, options: RunIntegrationSetupOptions, deps?: IntegrationSetupRunnerDeps): Promise;