/**
 * File-based implementation of ServerConfigRecord repository
 * Stores server configurations in mcp.json and /mcp/*.json files
 */
import { ServerConfigRecord, IServerConfigRecordRepository } from "../interfaces.js";
/**
 * File-based server configuration record repository
 * Uses existing mcp.json file structure
 */
export declare class FileServerConfigRecordRepository implements IServerConfigRecordRepository {
    private basePath;
    private globalConfigPath;
    private perAppConfigDir;
    private parser;
    constructor(basePath?: string);
    /**
     * Initialize the repository (ensure directories exist)
     */
    init(): Promise<void>;
    /**
     * Generate a stable ID for a server based on its location and name
     */
    private generateServerId;
    /**
     * Calculate checksum for a server config
     */
    private calculateChecksum;
    /**
     * Parse source from server ID
     */
    private parseServerId;
    /**
     * Load all server configurations from all sources
     */
    private loadAllServers;
    /**
     * Load a config file
     */
    private loadConfigFile;
    /**
     * Save a config file
     */
    private saveConfigFile;
    /**
     * Add a new server configuration record
     */
    add(server: Omit<ServerConfigRecord, "id">): Promise<ServerConfigRecord>;
    /**
     * Update an existing server configuration record
     */
    update(server: ServerConfigRecord): Promise<ServerConfigRecord | null>;
    /**
     * Delete a server configuration record
     */
    delete(id: string): Promise<boolean>;
    /**
     * Find a server configuration record by ID
     */
    findById(id: string): Promise<ServerConfigRecord | null>;
    /**
     * Find a server configuration record by name
     */
    findByName(name: string): Promise<ServerConfigRecord | null>;
    /**
     * Find all server configuration records
     */
    findAll(): Promise<ServerConfigRecord[]>;
}
//# sourceMappingURL=FileServerConfigRecordRepository.d.ts.map