import { type AddChannelsDeps } from "#setup/boxes/add-channels.js";
import { type DeployProjectDeps } from "#setup/boxes/deploy-project.js";
import { type DeploymentInfo } from "#setup/project-resolution.js";
import { type Prompter } from "#setup/prompter.js";
export interface CliLogger {
    error(message: string): void;
    log(message: string): void;
}
export interface AddChannelCommandOptions {
    force?: boolean;
    /** Assume yes for confirmations (slackbot creation). Requires an explicit kind. */
    yes?: boolean;
}
export interface ChannelsAddDependencies {
    createPrompter?: () => Prompter;
    detectDeployment(projectPath: string): Promise<DeploymentInfo>;
    /** Test seam into the add-channels box's scaffold/Connect/Vercel effects. */
    addChannelsDeps?: AddChannelsDeps;
    /** Test seam into the deploy box's subprocess effects. */
    deployProjectDeps?: DeployProjectDeps;
}
export declare function runChannelsAddCommand(logger: CliLogger, appRoot: string, args: {
    kind?: string;
    options: AddChannelCommandOptions;
}, dependencies?: ChannelsAddDependencies): Promise<void>;
export interface ListChannelsCommandOptions {
    json?: boolean;
}
export declare function runChannelsListCommand(logger: CliLogger, appRoot: string, options: ListChannelsCommandOptions): Promise<void>;
