import { AxioDB } from '../../../Services/Indexation.operation'; import { TCPResponse } from '../../types/protocol.types'; /** * Operation Handler - Handles CRUD operation TCP commands * Reuses existing CRUDController logic */ export default class OperationHandler { private controller; private axioDB; constructor(axioDB: AxioDB); /** * Handle INSERT_DOCUMENT command */ handleInsertDocument(requestId: string, params: any): Promise; /** * Handle INSERT_MANY_DOCUMENTS command */ handleInsertManyDocuments(requestId: string, params: any): Promise; /** * Handle QUERY_DOCUMENTS command */ handleQueryDocuments(requestId: string, params: any): Promise; /** * Handle QUERY_BY_ID command */ handleQueryById(requestId: string, params: any): Promise; /** * Handle UPDATE_DOCUMENT_BY_ID command */ handleUpdateById(requestId: string, params: any): Promise; /** * Handle UPDATE_DOCUMENTS_BY_QUERY command */ handleUpdateByQuery(requestId: string, params: any): Promise; /** * Handle DELETE_DOCUMENT_BY_ID command */ handleDeleteById(requestId: string, params: any): Promise; /** * Handle DELETE_DOCUMENTS_BY_QUERY command */ handleDeleteByQuery(requestId: string, params: any): Promise; /** * Handle AGGREGATE command */ handleAggregate(requestId: string, params: any): Promise; /** * Handle TOTAL_DOCUMENTS command */ handleTotalDocuments(requestId: string, params: any): Promise; /** * Handle CREATE_INDEX command */ handleCreateIndex(requestId: string, params: any): Promise; /** * Handle LIST_INDEXES command */ handleListIndexes(requestId: string, params: any): Promise; /** * Handle DROP_INDEX command */ handleDropIndex(requestId: string, params: any): Promise; }