@memory-bank/mcp
Version:
Memory-enabled Co-Pilot (MCP) server for managing project documentation and context
68 lines • 2.13 kB
TypeScript
import type { IJsonDocumentRepository } from "../../../domain/repositories/IJsonDocumentRepository.js";
import type { IIndexService } from "../../../infrastructure/index/index.js";
import type { IUseCase } from "../../interfaces/IUseCase.js";
/**
* Input data for delete JSON document use case
*/
export interface DeleteJsonDocumentInput {
/**
* Branch name (required for branch documents, omit for global)
*/
branchName?: string;
/**
* Document path (either path or id must be provided)
*/
path?: string;
/**
* Document ID (either path or id must be provided)
*/
id?: string;
}
/**
* Output data for delete JSON document use case
*/
export interface DeleteJsonDocumentOutput {
/**
* Indicates if document was successfully deleted
*/
success: boolean;
/**
* Location where document was deleted from (branch name or "global")
*/
location: string;
/**
* Additional delete operation details
*/
details: {
/**
* Document path or ID that was deleted
*/
identifier: string;
/**
* Deletion timestamp
*/
timestamp: string;
};
}
/**
* Use case for deleting a JSON document
*/
export declare class DeleteJsonDocumentUseCase implements IUseCase<DeleteJsonDocumentInput, DeleteJsonDocumentOutput> {
private readonly jsonRepository;
private readonly indexService;
private readonly globalRepository?;
/**
* Constructor
* @param jsonRepository JSON document repository
* @param indexService Index service for updating indexes after delete
* @param globalRepository Global JSON document repository (optional)
*/
constructor(jsonRepository: IJsonDocumentRepository, indexService: IIndexService, globalRepository?: IJsonDocumentRepository | undefined);
/**
* Execute the use case
* @param input Input data
* @returns Promise resolving to output data
*/
execute(input: DeleteJsonDocumentInput): Promise<DeleteJsonDocumentOutput>;
}
//# sourceMappingURL=DeleteJsonDocumentUseCase.d.ts.map