import { Tool } from '@modelcontextprotocol/sdk/types.js';
import { MemoryCache } from '../cache/memory-cache.js';
export declare class BCTools {
    private cache;
    private appExtractor;
    private symbolParser;
    private configuredSources;
    private discoveredFiles;
    constructor(cache: MemoryCache);
    /**
     * Get all available tools
     */
    getTools(): Tool[];
    /**
     * Execute a tool
     */
    executeTool(name: string, arguments_: any): Promise<any>;
    /**
     * Load an app file
     */
    private loadAppFile;
    /**
     * Query objects across apps
     */
    private queryObjects;
    /**
     * Analyze dependencies
     */
    private analyzeDependencies;
    /**
     * Find references to an object/field/method
     */
    private findReferences;
    /**
     * Get detailed object information
     */
    private getObjectDetails;
    /**
     * List all loaded apps
     */
    private listLoadedApps;
    /**
     * Get app information
     */
    private getAppInfo;
    /**
     * Clear cache
     */
    private clearCache;
    /**
     * Configure app sources
     */
    private configureAppSources;
    /**
     * Get app sources
     */
    private getAppSources;
    /**
     * Scan for app files in configured sources
     */
    private scanForAppFiles;
    /**
     * Scan a directory for app files
     */
    private scanDirectory;
    /**
     * Get configured app sources
     */
    getConfiguredSources(): string[];
    /**
     * Helper: Get object counts for an app
     */
    private getObjectCounts;
    /**
     * Helper: Get all objects from an app
     */
    private getAllObjects;
    /**
     * Helper: Check if an object references the target
     */
    private checkObjectReferences;
    /**
     * Helper: Check if a type definition references the target
     */
    private typeDefinitionReferences;
    /**
     * Helper: Determine reference type
     */
    private determineReferenceType;
}
//# sourceMappingURL=bc-tools.d.ts.map