/**
 * Reference Resolver
 * Resolves $ref fields in YAML configurations to support file splitting
 */
interface ResolveOptions {
    basePath?: string;
    maxDepth?: number;
    cache?: Map<string, any>;
}
export declare class ReferenceResolver {
    private static readonly DEFAULT_MAX_DEPTH;
    /**
     * Resolve all $ref fields in a YAML object
     */
    resolve(obj: any, options?: ResolveOptions): Promise<any>;
    /**
     * Resolve references in an object recursively
     */
    private resolveObject;
    /**
     * Resolve a $ref string
     */
    private resolveReference;
    /**
     * Parse a reference string into file path and optional fragment
     */
    private parseReference;
    /**
     * Load and parse a YAML file
     */
    private loadFile;
    /**
     * Resolve a fragment (JSONPath) within an object
     * Fragment format: /path/to/nested (similar to JSON Pointer)
     */
    private resolveFragment;
    /**
     * Decode fragment part (JSON Pointer escaping)
     * ~0 represents ~
     * ~1 represents /
     */
    private decodeFragmentPart;
    /**
     * Get all referenced files from a resolved object
     * Useful for tracking dependencies
     */
    getAllReferencedFiles(obj: any, basePath?: string): string[];
    /**
     * Recursively collect all referenced files
     */
    private collectReferencedFiles;
}
export {};
//# sourceMappingURL=reference-resolver.d.ts.map