vue-csv-processor
Version:
Vue 3 component library for CSV file processing with encoding detection and preview
35 lines (34 loc) • 1.51 kB
TypeScript
/**
* CSV parsing utility with support for various encodings and edge cases
*/
/**
* Parse CSV content into an array of objects
* @param {string|ArrayBuffer} content - The CSV content to parse
* @param {Object} options - Parsing options
* @param {boolean} options.hasHeaders - Whether the first row contains headers (default: true)
* @param {string} options.delimiter - Field delimiter (default: auto-detect)
* @param {boolean} options.trimFields - Whether to trim whitespace from fields (default: true)
* @param {string} options.encoding - Text encoding to use (default: 'UTF-8')
* @param {boolean} options.skipEmptyLines - Whether to skip empty lines (default: true)
* @returns {Object} Object containing { data, headers, errors }
*/
export function parseCSV(content: string | ArrayBuffer, options?: {
hasHeaders: boolean;
delimiter: string;
trimFields: boolean;
encoding: string;
skipEmptyLines: boolean;
}): Object;
/**
* Auto-detect the delimiter used in a CSV string
* @param {string} csvContent - First few lines of CSV content
* @returns {string} Detected delimiter (comma, semicolon, tab)
*/
export function detectDelimiter(csvContent: string): string;
/**
* Convert parsed CSV data to different formats
* @param {Array} data - Array of objects from parseCSV
* @param {string} format - Output format ('json', 'array', etc.)
* @returns {any} Formatted data
*/
export function formatCSVData(data: any[], format?: string): any;