sfcc-dev-mcp
Version:
MCP server for Salesforce B2C Commerce Cloud development assistance including logs, debugging, and development tools
90 lines • 2.96 kB
TypeScript
/**
* SFCC Documentation Client (Refactored)
*
* This module provides functionality to query and retrieve SFCC class documentation
* from converted Markdown files. It orchestrates specialized modules to handle
* different aspects of documentation processing.
*
* Responsibilities:
* - Orchestrating specialized modules
* - Managing initialization and caching
* - Providing public API for documentation access
* - Applying filters and search functionality
*/
import { CacheManager } from '../utils/cache.js';
import { SFCCClassInfo } from './docs/documentation-scanner.js';
import { SFCCClassDetails, SFCCMethod } from './docs/class-content-parser.js';
export { SFCCClassInfo, SFCCMethod, SFCCClassDetails };
export type { SFCCProperty, SFCCConstant } from './docs/class-content-parser.js';
export interface ClassDetailsFilterOptions {
includeDescription?: boolean;
includeConstants?: boolean;
includeProperties?: boolean;
includeMethods?: boolean;
includeInheritance?: boolean;
search?: string;
}
export declare class SFCCDocumentationClient {
private docsPath;
private classCache;
private cacheManager;
private initialized;
private logger;
private documentationScanner;
private classContentParser;
constructor();
/**
* Initialize the documentation client by scanning all available classes
*/
initialize(): Promise<void>;
/**
* Get a list of all available SFCC classes
*/
getAvailableClasses(): Promise<string[]>;
/**
* Search for classes by name (partial matching)
*/
searchClasses(query: string): Promise<string[]>;
/**
* Get the raw documentation content for a class
*/
getClassDocumentation(className: string): Promise<string | null>;
/**
* Parse class documentation and extract structured information
*/
getClassDetails(className: string): Promise<SFCCClassDetails | null>;
/**
* Get class details with optional expansion of referenced types and filtering
*/
getClassDetailsExpanded(className: string, expand?: boolean, filterOptions?: ClassDetailsFilterOptions): Promise<SFCCClassDetails & {
referencedTypes?: SFCCClassDetails[];
} | null>;
/**
* Apply filters and search to class details
*/
private applyFiltersAndSearch;
/**
* Check if a name or description matches the search term (case-insensitive)
*/
private matchesSearch;
/**
* Search for methods across all classes
*/
searchMethods(methodName: string): Promise<{
className: string;
method: SFCCMethod;
}[]>;
/**
* Get cache statistics for monitoring performance
*/
getCacheStats(): ReturnType<CacheManager['getAllStats']>;
/**
* Clear all caches
*/
clearCache(): void;
/**
* Cleanup resources and destroy caches
*/
destroy(): void;
}
//# sourceMappingURL=docs-client.d.ts.map