}
}
+/**
+ * @typedef CSVWriterStatus The current status of the CSVWriter.
+ * @property {string} name The name of the output CSV file that this writer is writing to.
+ * @property {number} elapsed The number of milliseconds that have elapsed between this writer's creation and the output CSV file
+ * handle closing, or until now if the writer is still writing. Measured using `performance.now()`.
+ * @property {number} rows The estimated number of CSV rows that have been written. If the data passed to the writer is
+ * a string, the string is counted as one CSV row (i.e., raw string data is NOT parsed again). Includes the header row (first row).
+ * @property {boolean} done If `true`, the writer is finished writing to the output CSV file and the file handle is closed.
+ */
+
/**
* Write a streamed CSV file to disk.
*
this.#status = status;
}
- /**
- * @typedef CSVWriterStatus The current status of the CSVWriter.
- * @property {string} name The name of the output CSV file that this writer is writing to.
- * @property {number} elapsed The number of milliseconds that have elapsed between this writer's creation and the output CSV file
- * handle closing, or until now if the writer is still writing. Measured using `performance.now()`.
- * @property {number} rows The estimated number of CSV rows that have been written. If the data passed to the writer is
- * a string, the string is counted as one CSV row (i.e., raw string data is NOT parsed again). Includes the header row (first row).
- * @property {boolean} done If `true`, the writer is finished writing to the output CSV file and the file handle is closed.
- */
-
/** @type {CSVWriterStatus} */
get status() {
if (!this.#status.done) {
export { CSVReader, CSVTransformer, CSVWriter } from './core.js';
export { CSVNormalizer, CSVDenormalizer } from './normalization.js';
export { ErrorStrategies } from './errorStrategies.js';
+
+/** @typedef {import('./core.js').CSVReaderOptions} CSVReaderOptions */
+/** @typedef {import('./core.js').TransformationOutput} TransformationOutput */
+/** @typedef {import('./core.js').CSVTransformerOptions} CSVTransformerOptions */
+/** @typedef {import('./core.js').CSVTransformerOptionsRaw} CSVTransformerOptionsRaw */
+/** @typedef {import('./core.js').CSVTransformerOptionsBatch} CSVTransformerOptionsBatch */
+/** @typedef {import('./core.js').CSVWriterStatus} CSVWriterStatus */
+/** @typedef {import('./normalization.js').CSVNormalizerHeader} CSVNormalizerHeader */
+/** @typedef {import('./normalization.js').CSVNormalizerOptions} CSVNormalizerOptions */
+/** @typedef {import('./normalization.js').CSVNormalizerRow} CSVNormalizerRow */
+/** @typedef {import('./errorStrategies.js').RetryOptions} RetryOptions */
+/** @typedef {import('./errorStrategies.js').BackoffOptions} BackoffOptions */