import { Logger } from "@nestjs/common";
import type { AgentExportResult, ModuleExport } from "./agent-loader.types";
export declare class AgentLoader {
    private quiet;
    private logger;
    private static cacheCleanupRegistered;
    private readonly cacheUtils;
    private readonly envUtils;
    private readonly pathUtils;
    private readonly errorUtils;
    private readonly guards;
    private readonly resolver;
    private static activeCacheFiles;
    private static projectRoots;
    constructor(quiet?: boolean);
    private registerCleanupHandlers;
    static cleanupAllCacheFiles(logger?: Logger, quiet?: boolean): void;
    loadEnvironmentVariables(agentFilePath: string): void;
    /**
     * Check if a rebuild is needed based on file modification times
     */
    private isRebuildNeeded;
    /**
     * Track a cache file for cleanup
     */
    private trackCacheFile;
    /**
     * Normalize path to use forward slashes (cross-platform)
     */
    private normalizePath;
    /**
     * Import a TypeScript file by compiling it on-demand
     * @param filePath - Path to the TypeScript file
     * @param providedProjectRoot - Optional project root path
     * @param forceInvalidateCache - Force cache invalidation (full reload)
     */
    importTypeScriptFile(filePath: string, providedProjectRoot?: string, forceInvalidateCache?: boolean): Promise<ModuleExport>;
    resolveAgentExport(mod: ModuleExport): Promise<AgentExportResult>;
}
//# sourceMappingURL=agent-loader.service.d.ts.map