ngxsmk-datatable
Version:
A powerful, feature-rich Angular datatable component with virtual scrolling, built for Angular 17+
73 lines (72 loc) • 1.88 kB
TypeScript
import { BatchOperationsConfig, BatchOperation, BatchOperationResult, BatchProgress, BulkEditOperation, BatchUndoInfo } from '../interfaces/batch-operations.interface';
import * as i0 from "@angular/core";
/**
* Batch Operations Service
* Handles bulk edit, bulk delete, and mass operations
*/
export declare class BatchOperationsService {
private config;
private customOperations;
private undoStack;
private progressSubject;
readonly progress$: import("rxjs").Observable<BatchProgress>;
constructor();
/**
* Configure batch operations
*/
configure(config: BatchOperationsConfig): void;
/**
* Register custom operation
*/
registerOperation(operation: BatchOperation): void;
/**
* Bulk edit
*/
bulkEdit(rows: any[], operations: BulkEditOperation[]): Promise<BatchOperationResult>;
/**
* Bulk delete
*/
bulkDelete(rows: any[]): Promise<BatchOperationResult>;
/**
* Execute custom operation
*/
executeOperation(operationId: string, rows: any[], params?: any): Promise<BatchOperationResult>;
/**
* Undo last operation
*/
undo(): any[] | null;
/**
* Can undo
*/
canUndo(): boolean;
/**
* Get undo history
*/
getUndoHistory(): BatchUndoInfo[];
/**
* Apply edit operation to value
*/
private applyEditOperation;
/**
* Emit progress
*/
private emitProgress;
/**
* Create cancelled result
*/
private createCancelledResult;
/**
* Add to undo stack
*/
private addToUndoStack;
/**
* Generate unique ID
*/
private generateId;
/**
* Sleep utility
*/
private sleep;
static ɵfac: i0.ɵɵFactoryDeclaration<BatchOperationsService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<BatchOperationsService>;
}