UNPKG

bc-symbols-mcp

Version:

MCP server for analyzing Business Central .app files and BC object structures

59 lines 1.93 kB
import { BCApp } from '../types/bc-types.js'; import { LazyMemoryCache } from '../cache/lazy-cache.js'; export declare class OptimizedAppExtractor { private lazyCache; constructor(cache?: LazyMemoryCache); /** * Extract and process a Business Central .app file with lazy loading * @param filePath Path to the .app file * @returns Promise<BCApp> Processed app data with lazy-loaded symbols */ extractAppLazy(filePath: string): Promise<BCApp>; /** * Load objects of specific type for an app */ loadObjectsByType(filePath: string, objectType: string): Promise<any[]>; /** * Load specific object for an app */ loadObject(filePath: string, objectType: string, objectId: number, objectName: string): Promise<any | null>; /** * Get object metadata without loading full objects */ getObjectMetadata(filePath: string, objectType: string, objectId?: number, objectName?: string): any[]; /** * Get loading statistics for an app */ getLoadingStats(filePath: string): any; /** * Pre-load commonly used object types for better performance */ preloadCommonObjects(filePath: string): Promise<void>; /** * Get cache statistics */ getCacheStats(): any; /** * Calculate SHA-256 hash of file buffer */ private calculateFileHash; /** * Extract a specific file from the ZIP archive */ private extractFileFromZip; /** * Parse NavxManifest.xml content */ private parseManifest; /** * Transform parsed XML manifest to our BCManifest format */ private transformManifest; private transformIdRanges; private transformDependencies; private transformFeatures; private transformSuppressWarnings; private transformResourceExposurePolicy; private transformBuildInfo; } //# sourceMappingURL=app-extractor-optimized.d.ts.map