@langchain/community
Version:
Third-party integrations for LangChain.js
50 lines (49 loc) • 1.71 kB
TypeScript
import { Document, DocumentInterface } from "@langchain/core/documents";
import { BaseDocumentLoader, DocumentLoader } from "@langchain/core/document_loaders/base";
import { Browserbase, ClientOptions, LoadOptions } from "@browserbasehq/sdk";
//#region src/document_loaders/web/browserbase.d.ts
type BrowserbaseLoaderOptions = ClientOptions & LoadOptions;
/**
* Load pre-rendered web pages using a headless browser hosted on Browserbase.
*
* Depends on `@browserbasehq/sdk` package.
* Get your API key from https://browserbase.com
*
* @example
* ```typescript
* import { BrowserbaseLoader } from "@langchain/classic/document_loaders/web/browserbase";
*
* const loader = new BrowserbaseLoader(["https://example.com"], {
* apiKey: process.env.BROWSERBASE_API_KEY,
* textContent: true,
* });
*
* const docs = await loader.load();
* ```
*
* @param {string[]} urls - The URLs of the web pages to load.
* @param {BrowserbaseLoaderOptions} [options] - Browserbase client options.
*/
declare class BrowserbaseLoader extends BaseDocumentLoader implements DocumentLoader {
urls: string[];
options: BrowserbaseLoaderOptions;
browserbase: Browserbase;
constructor(urls: string[], options?: BrowserbaseLoaderOptions);
/**
* Load pages from URLs.
*
* @returns {Promise<DocumentInterface[]>} - A promise which resolves to a list of documents.
*/
load(): Promise<DocumentInterface[]>;
/**
* Load pages from URLs.
*
* @returns {Generator<DocumentInterface>} - A generator that yields documents.
*/
lazyLoad(): AsyncGenerator<Document<{
url: string;
}>, void, unknown>;
}
//#endregion
export { BrowserbaseLoader };
//# sourceMappingURL=browserbase.d.ts.map