import { readFile } from "node:fs/promises"; import { Document } from "@langchain/core/documents"; import { BaseDocumentLoader } from "@langchain/core/document_loaders/base"; //#region src/document_loaders/fs/buffer.d.ts /** * Abstract class that extends the `BaseDocumentLoader` class. It * represents a document loader that loads documents from a buffer. The * `load()` method is implemented to read the buffer contents and metadata * based on the type of `filePathOrBlob`, and then calls the `parse()` * method to parse the buffer and return the documents. */ declare abstract class BufferLoader extends BaseDocumentLoader { filePathOrBlob: string | Blob; constructor(filePathOrBlob: string | Blob); /** * Abstract method that needs to be implemented by subclasses. It is used * to parse the buffer and return the documents. * @param raw The buffer to be parsed. * @param metadata Metadata of the document. * @returns Promise that resolves with an array of `Document` objects. */ protected abstract parse(raw: Buffer, metadata: Document["metadata"]): Promise; /** * Method that reads the buffer contents and metadata based on the type of * `filePathOrBlob`, and then calls the `parse()` method to parse the * buffer and return the documents. * @returns Promise that resolves with an array of `Document` objects. */ load(): Promise; /** * Static method that imports the `readFile` function from the * `fs/promises` module in Node.js. It is used to dynamically import the * function when needed. If the import fails, it throws an error * indicating that the `fs/promises` module is not available in the * current environment. * @returns Promise that resolves with an object containing the `readFile` function. */ static imports(): Promise<{ readFile: typeof readFile; }>; } //#endregion export { BufferLoader }; //# sourceMappingURL=buffer.d.ts.map