import type { Sample } from '../types/index.js';
interface GenerateSamplesOptions {
    skillContent: string;
    count?: number;
    model?: string;
    executorName?: string;
    /**
     * 自然语言描述用户希望重点覆盖的场景。会作为额外约束追加到 prompt 末尾，
     * 优先于"自由发挥"的多样性。空串 / undefined 表示不施加额外约束。
     */
    focus?: string;
    /** 不生成 mocks/mocksStrict，eval 时真实执行所有工具调用。 */
    noMock?: boolean;
}
/**
 * 拼出送给 LLM 的 user prompt。抽出来便于单测验证 focus 是否真的注入了。
 *
 * count 语义:
 *   - number: 强制生成 N 条
 *   - undefined: 让 LLM 按系统提示里"样本结构决策"的类型对应范围自行判断数量
 */
export declare function buildSamplesPrompt({ skillContent, count, focus, noMock }: {
    skillContent: string;
    count?: number;
    focus?: string;
    noMock?: boolean;
}): string;
export declare function generateSamples({ skillContent, count, model, executorName, focus, noMock }: GenerateSamplesOptions): Promise<{
    samples: Sample[];
    costUSD: number;
}>;
export declare function sanitizeGeneratedSamples(samples: Sample[], opts?: {
    skillContent?: string;
}): {
    stripped: string[];
};
export {};
//# sourceMappingURL=generator.d.ts.map