import { StorageProvider } from '../core/storage/StorageProvider.js';
/**
 * Main MCP server class for Memory Bank
 *
 * This class is responsible for setting up and running the MCP server
 * that provides tools and resources for managing memory banks.
 */
export declare class MemoryBankServer {
    private server;
    private memoryBankManager;
    private isRunning;
    /**
     * Creates a new MemoryBankServer instance
     *
     * Initializes the MCP server with the necessary handlers for tools and resources.
     * @param initialMode Initial mode (optional)
     * @param projectPath Project path (optional)
     * @param userId GitHub profile URL for tracking changes (optional)
     * @param folderName Memory Bank folder name (optional, default: 'memory-bank')
     * @param debugMode Enable debug mode (optional, default: false)
     * @param storageProvider Storage provider (optional)
     */
    constructor(initialMode?: string, projectPath?: string, userId?: string, folderName?: string, debugMode?: boolean, storageProvider?: StorageProvider);
    /**
     * Starts the MCP server
     *
     * Connects the server to the stdio transport and begins listening for requests.
     */
    run(): Promise<void>;
    /**
     * Gracefully shuts down the server
     */
    shutdown(): Promise<void>;
}
