ngxsmk-datatable
Version:
A powerful, feature-rich Angular datatable component with virtual scrolling, built for Angular 17+
61 lines (60 loc) • 1.6 kB
TypeScript
import { Subject } from 'rxjs';
import { ClipboardConfig, ClipboardEvent } from '../interfaces/clipboard.interface';
import { NgxsmkRow } from '../interfaces/row.interface';
import { NgxsmkColumn } from '../interfaces/column.interface';
import * as i0 from "@angular/core";
export declare class ClipboardService {
private config;
clipboardEvent$: Subject<ClipboardEvent>;
constructor();
/**
* Set clipboard configuration
*/
setConfig(config: Partial<ClipboardConfig>): void;
/**
* Get current configuration
*/
getConfig(): ClipboardConfig;
/**
* Copy data to clipboard
*/
copy(rows: NgxsmkRow[], columns: NgxsmkColumn[], includeHeaders?: boolean): string;
/**
* Parse pasted data
*/
paste(clipboardData: string): any[][];
/**
* Copy data to system clipboard
*/
copyToClipboard(text: string): Promise<boolean>;
/**
* Format data for copying
*/
private formatData;
/**
* Format data as TSV (Tab-separated values)
*/
private formatAsTSV;
/**
* Format data as CSV (Comma-separated values)
*/
private formatAsCSV;
/**
* Escape CSV value
*/
private escapeCSVValue;
/**
* Parse clipboard data
*/
private parseData;
/**
* Parse CSV line (handles quoted values)
*/
private parseCSVLine;
/**
* Get nested property value
*/
private getNestedValue;
static ɵfac: i0.ɵɵFactoryDeclaration<ClipboardService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<ClipboardService>;
}