import { buildCommandContext, type CommandContext } from '../../app/command-context.js';
import { type PromptContext } from '../shared/shared.prompts.js';
import { type OatConfig, type OatLocalConfig, type UserConfig } from '../../config/oat-config.js';
import { type ResolvedConfig } from '../../config/resolve.js';
import { type MatrixCellAvailabilityResponse, type ValidateMatrixCellOptions } from '../../providers/identity/availability.js';
import { createDispatchValidationPassContext, validateDispatchMatrixRefs } from '../../providers/identity/dispatch-validation.js';
import { Command } from 'commander';
interface ConfigCommandDependencies {
    buildCommandContext: (options: Parameters<typeof buildCommandContext>[0]) => CommandContext;
    resolveProjectRoot: (cwd: string) => Promise<string>;
    readOatConfig: (repoRoot: string) => Promise<OatConfig>;
    writeOatConfig: (repoRoot: string, config: OatConfig) => Promise<void>;
    readOatLocalConfig: (repoRoot: string) => Promise<OatLocalConfig>;
    writeOatLocalConfig: (repoRoot: string, config: OatLocalConfig) => Promise<void>;
    readUserConfig: (userConfigDir: string) => Promise<UserConfig>;
    writeUserConfig: (userConfigDir: string, config: UserConfig) => Promise<void>;
    resolveProjectsRoot: (repoRoot: string, env: NodeJS.ProcessEnv) => Promise<string>;
    resolveEffectiveConfig: (repoRoot: string, userConfigDir: string, env: NodeJS.ProcessEnv) => Promise<ResolvedConfig>;
    resolveAssetsRoot: () => Promise<string>;
    readFile: (path: string) => Promise<string>;
    confirmAction: (message: string, ctx: PromptContext) => Promise<boolean>;
    validateMatrixCell: (provider: string, value: string, options: ValidateMatrixCellOptions) => Promise<MatrixCellAvailabilityResponse>;
    createDispatchValidationPassContext: typeof createDispatchValidationPassContext;
    validateDispatchMatrixRefs: typeof validateDispatchMatrixRefs;
    processEnv: NodeJS.ProcessEnv;
}
export declare function createConfigCommand(overrides?: Partial<ConfigCommandDependencies>): Command;
export {};
//# sourceMappingURL=index.d.ts.map