/**
 * Interface for step configuration that may have either prompts array or prompt_file reference
 */
export interface StepConfig {
    id: number;
    name: string;
    targetRole: string;
    delayMinutes?: number;
    conditional?: string;
    verification?: any;
    prompt_file?: string;
    prompts?: string[];
}
/**
 * Loads and processes prompt content from markdown files or inline arrays
 *
 * @param step - Step configuration object with either prompt_file or prompts
 * @param projectVars - Variables for template replacement
 * @returns Promise resolving to array of processed prompt strings
 *
 * @example
 * ```typescript
 * const step = { prompt_file: "config/task_starters/prompts/build_spec_step1.md" };
 * const prompts = await resolveStepPrompts(step, { PROJECT_NAME: "MyApp" });
 * ```
 */
export declare function resolveStepPrompts(step: StepConfig, projectVars?: Record<string, string>): Promise<string[]>;
/**
 * Replaces template variables in prompt content
 *
 * @param prompt - Prompt string with template variables
 * @param vars - Object containing variable values for replacement
 * @returns Prompt string with variables replaced
 *
 * @example
 * ```typescript
 * const result = replaceTemplateVariables(
 *   "Project: {PROJECT_NAME} at {PROJECT_PATH}",
 *   { PROJECT_NAME: "MyApp", PROJECT_PATH: "/home/user/myapp" }
 * );
 * // Returns: "Project: MyApp at /home/user/myapp"
 * ```
 */
export declare function replaceTemplateVariables(prompt: string, vars: Record<string, string>): string;
/**
 * Enhanced step configuration resolver that ensures backward compatibility
 * Resolves prompts and adds the prompts array back to the step object
 *
 * @param step - Original step configuration
 * @param projectVars - Variables for template replacement
 * @returns Promise resolving to step configuration with resolved prompts array
 */
export declare function resolveStepConfig(step: StepConfig, projectVars?: Record<string, string>): Promise<StepConfig & {
    prompts: string[];
}>;
/**
 * Batch resolver for multiple steps from a configuration file
 *
 * @param steps - Array of step configurations
 * @param projectVars - Variables for template replacement
 * @returns Promise resolving to array of steps with resolved prompts
 */
export declare function resolveMultipleSteps(steps: StepConfig[], projectVars?: Record<string, string>): Promise<Array<StepConfig & {
    prompts: string[];
}>>;
/**
 * Utility to load and resolve a complete configuration file
 *
 * @param configPath - Path to JSON configuration file
 * @param projectVars - Variables for template replacement
 * @returns Promise resolving to configuration with resolved prompts
 */
export declare function loadAndResolveConfig(configPath: string, projectVars?: Record<string, string>): Promise<{
    steps: Array<StepConfig & {
        prompts: string[];
    }>;
    [key: string]: any;
}>;
//# sourceMappingURL=prompt-resolver.d.ts.map