import { PMOSetupResult } from '../pmo/index.js';
export interface HQConfig {
    type: 'hq';
    created: string;
    hqName: string;
    hasPMO: boolean;
    agents: string[];
    repos: string[];
}
export interface InitOptions {
    workspaceType: 'hq';
    hqName: string;
    hqPath: string;
    selectedAgents: string[];
    /** Suppress console output (for JSON/agent mode) */
    quiet?: boolean;
    repos?: Array<{
        path: string;
        action: 'move' | 'clone';
    }>;
    pmoSetup?: PMOSetupResult;
    themeId?: string;
    customTheme?: {
        name: string;
        displayName: string;
        names: string[];
    };
    orgName?: string;
}
/**
 * Validate that HQ path is not inside a git repository or another HQ
 * Returns: { valid: true } or { valid: false, reason: string }
 */
export declare function validateHQLocation(location: string): {
    valid: boolean;
    reason?: string;
};
/**
 * Check if an HQ name is already in use by another headquarters on this machine.
 */
export declare function isHQNameTaken(name: string): boolean;
/**
 * Prompt user for HQ name
 */
export declare function promptForHQName(): Promise<string>;
/**
 * Prompt user for HQ location
 */
export declare function promptForHQLocation(hqName: string): Promise<string>;
/**
 * Prompt user for organization selection or creation
 */
export declare function promptForOrganization(): Promise<string>;
/**
 * Create the basic HQ directory structure
 *
 * Structure:
 * my-hq/
 *   .proletariat/           # HQ config and database
 *   repos/                  # Repositories
 *   agents/
 *     staff/                # Persistent agents
 *     temp/                 # Ephemeral agents
 */
export declare function createHQStructure(hqPath: string, hqName: string, themeId?: string, quiet?: boolean): void;
/**
 * Create HQ database and config
 */
export declare function initializeHQDatabase(hqPath: string, options: InitOptions): void;
/** @deprecated Use initializeHQDatabase instead */
export declare const initializeWorkspaceDatabase: typeof initializeHQDatabase;
/**
 * Complete HQ initialization workflow
 */
export declare function initializeHQ(options: InitOptions): Promise<void>;
/**
 * Show next steps to user
 */
export declare function showNextSteps(options: InitOptions): Promise<void>;
