/**
 * YAML 处理工具函数
 *
 * 提供 YAML 配置文件的读取、解析、生成和路径匹配功能
 */
/**
 * YAML 加载结果
 */
export interface YmlLoadResult {
    content: string | null;
    resolvedPath: string;
    foundInParent: boolean;
    matchedAgentPath: string | null;
}
/**
 * Agent 配置提取结果
 */
export interface AgentConfigResult {
    content: string;
    isTemplate: boolean;
    projectFromSibling: string | null;
}
/**
 * 检查 YAML 配置中是否有 agent 的 path 匹配目标路径
 * path 字段格式支持：modules\x 或 modules/x
 *
 * @param yamlContent - YAML 内容
 * @param targetRelativePath - 目标相对路径
 * @returns 匹配的 agent path，无匹配则返回 null
 */
export declare function hasMatchingAgentPath(yamlContent: string, targetRelativePath: string): string | null;
/**
 * 从 YAML 配置中提取匹配的 agent 配置，或生成模板
 *
 * @param yamlContent - YAML 内容
 * @param targetRelativePath - 目标相对路径
 * @returns 提取结果
 */
export declare function extractAgentConfigOrTemplate(yamlContent: string, targetRelativePath: string): AgentConfigResult;
/**
 * 生成空模板
 * 注意：path 字段留空，在写入时根据工作目录自动计算
 *
 * @param _targetRelativePath - 目标相对路径（未使用）
 * @returns 空模板 YAML 内容
 */
export declare function generateEmptyTemplate(_targetRelativePath: string): string;
/**
 * 自动填充 YAML 配置中的 path 字段
 * 如果 path 为空、未填写或只有空白字符，则使用工作目录相对于项目根目录的路径
 *
 * @param ymlContent - YAML 配置内容
 * @param workspaceRelativePath - 工作目录相对于项目根目录的路径
 * @returns 处理后的 YAML 内容
 */
export declare function autoFillPathInYml(ymlContent: string, workspaceRelativePath: string): string;
/**
 * 向上查找并加载 YAML 配置文件
 *
 * 查找逻辑：
 * 1. 先检查工作目录下是否有配置文件，检查 path 是否匹配
 * 2. 如果不匹配，向上查找父目录的配置文件，检查 path 是否匹配
 * 3. 找到匹配的配置 → 使用该配置
 * 4. 所有层级都没有匹配的配置 → 使用最后一个找到的配置（或在工作目录创建）
 *
 * 例如：工作目录 D:\a\b\c\d，相对路径 vibe-coding/my.yml
 * 第1次查找：D:\a\b\c\d\vibe-coding\my.yml，匹配 path="."
 * 第2次查找：D:\a\b\c\vibe-coding\my.yml，匹配 path="d"
 * 第3次查找：D:\a\b\vibe-coding\my.yml，匹配 path="c/d"
 * ...
 */
export declare function loadYmlWithUpwardSearch(workspacePath: string, relativePath: string): Promise<YmlLoadResult>;
//# sourceMappingURL=yaml-utils.d.ts.map