import { type LinkFlowDeps } from "#setup/flows/link.js";
import { type Prompter } from "#setup/prompter.js";
export interface LinkCliLogger {
    error(message: string): void;
    log(message: string): void;
}
export interface LinkCommandDependencies {
    createPrompter?: () => Prompter;
    isEveProject(projectPath: string): Promise<boolean>;
    hasInteractiveTerminal(): boolean;
    /** Test seam into the flow's detection and box effects. */
    flowDeps?: Partial<LinkFlowDeps>;
}
/**
 * `eve link`: pick a Vercel team and project (re-linking when one is already
 * linked), run `vercel link`, then pull env so the AI Gateway credential lands
 * in `.env.local`. The flow itself is {@link runLinkFlow}, shared with the dev
 * TUI `/model` menu's provider row. Interactive only: the pickers are the point of the command,
 * so a non-TTY run refuses with guidance instead of guessing a project.
 */
export declare function runLinkCommand(logger: LinkCliLogger, appRoot: string, dependencies?: LinkCommandDependencies): Promise<void>;
