/**
 * Ideation Seeder — divergent strategy seeds for exploration (open-collider)
 *
 * Connects `uap ideate` divergent ideation to the delivery loop. Instead of
 * the four static DEFAULT_STRATEGY_SEEDS, the seeder produces task-specific,
 * deliberately diverse strategy hints for the best-of-N explorer:
 *
 *  - generateStrategySeeds: one Koestler-bisociation-style model call that
 *    asks for N structurally distinct implementation approaches
 *  - seedsFromIdeas: convert curated ideas (e.g. an open-collider project's
 *    curated_ideas.json) into strategy seeds directly
 *
 * Both are fail-soft: any parse/model failure falls back to the default
 * static seeds so ideation can never block delivery.
 */
import type { LoopExecutor } from './convergence-loop.js';
import type { StrategySeed } from './explorer.js';
export interface IdeationOptions {
    /** Number of seeds to request (default 4, capped at MAX_CANDIDATES) */
    count?: number;
}
/** Extract the first JSON array of {id, hint} objects from model output. */
export declare function parseSeedArray(text: string): StrategySeed[];
/**
 * Generate task-specific divergent strategy seeds via one model call.
 * Falls back to DEFAULT_STRATEGY_SEEDS on any failure — ideation is an
 * outcome optimizer, never a blocker.
 */
export declare function generateStrategySeeds(instruction: string, executor: LoopExecutor, options?: IdeationOptions): Promise<StrategySeed[]>;
/**
 * Convert curated ideas (plain strings, e.g. from an open-collider project's
 * curated_ideas.json via `uap ideate ideas`) into explorer strategy seeds.
 * Returns [] when no usable ideas are provided so callers can fall back.
 */
export declare function seedsFromIdeas(ideas: string[], options?: IdeationOptions): StrategySeed[];
//# sourceMappingURL=ideation.d.ts.map