browserless 10.11.4 → 10.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.d.ts +82 -0
  2. package/package.json +7 -4
package/index.d.ts ADDED
@@ -0,0 +1,82 @@
1
+ import type { Browser, BrowserContext, HTTPResponse, Page, PDFOptions, Viewport } from 'puppeteer'
2
+
3
+ export interface BrowserlessOptions {
4
+ timeout?: number
5
+ launchOpts?: LaunchOptions
6
+ }
7
+
8
+ export interface LaunchOptions {
9
+ headless?: boolean | 'new'
10
+ args?: string[]
11
+ executablePath?: string
12
+ timeout?: number
13
+ mode?: 'launch' | 'connect'
14
+ proxyServer?: string
15
+ proxyBypassList?: string[]
16
+ [key: string]: unknown
17
+ }
18
+
19
+ export interface BrowserContextOptions {
20
+ proxyServer?: string
21
+ proxyBypassList?: string[]
22
+ viewport?: Viewport
23
+ }
24
+
25
+ export interface ContextOptions extends BrowserContextOptions {
26
+ retry?: number
27
+ timeout?: number
28
+ }
29
+
30
+ export interface Context {
31
+ respawn: () => void
32
+ context: () => Promise<BrowserContext>
33
+ browser: () => Promise<Browser>
34
+ evaluate: <T>(fn: (page: Page, response?: HTTPResponse | undefined, error?: Error) => T | Promise<T>, gotoOpts?: GotoOptions) => Promise<T>
35
+ goto: (page: Page, url: string, opts?: GotoOptions) => Promise<GotoResult>
36
+ html: (url: string, opts?: GotoOptions) => Promise<string>
37
+ page: (name?: string) => Promise<Page>
38
+ pdf: (page: Page, opts?: PDFOptions) => Promise<Buffer>
39
+ screenshot: (page: Page, opts?: ScreenshotOptions) => Promise<Buffer>
40
+ text: (url: string, opts?: GotoOptions) => Promise<string>
41
+ getDevice: (deviceName: string) => Viewport | undefined
42
+ destroyContext: (opts?: { force?: boolean }) => Promise<void>
43
+ withPage: <T>(fn: (page: Page, goto: unknown) => Promise<T>, opts?: { timeout?: number }) => Promise<T>
44
+ }
45
+
46
+ export interface GotoOptions {
47
+ waitUntil?: 'load' | 'domcontentloaded' | 'networkidle0' | 'networkidle2'
48
+ timeout?: number
49
+ headers?: Record<string, string>
50
+ [key: string]: unknown
51
+ }
52
+
53
+ export interface GotoResult {
54
+ response: HTTPResponse | null
55
+ error: Error | null
56
+ }
57
+
58
+ export interface ScreenshotOptions {
59
+ type?: 'png' | 'jpeg' | 'webp'
60
+ fullPage?: boolean
61
+ clip?: {
62
+ x: number
63
+ y: number
64
+ width: number
65
+ height: number
66
+ }
67
+ omitBackground?: boolean
68
+ encoding?: 'binary' | 'base64'
69
+ }
70
+
71
+ export interface Browserless {
72
+ createContext: (opts?: ContextOptions) => Promise<Context>
73
+ respawn: () => void
74
+ browser: () => Promise<Browser>
75
+ close: () => Promise<void>
76
+ isClosed: () => boolean
77
+ driver: unknown
78
+ }
79
+
80
+ declare function browserless(options?: BrowserlessOptions): Promise<Browserless>
81
+
82
+ export default browserless
package/package.json CHANGED
@@ -2,8 +2,9 @@
2
2
  "name": "browserless",
3
3
  "description": "The headless Chrome/Chromium driver on top of Puppeteer. Take screenshots, generate PDFs, extract text and HTML with a production-ready API.",
4
4
  "homepage": "https://browserless.js.org",
5
- "version": "10.11.4",
5
+ "version": "10.12.1",
6
6
  "main": "src/index.js",
7
+ "types": "index.d.ts",
7
8
  "author": {
8
9
  "email": "hello@microlink.io",
9
10
  "name": "microlink.io",
@@ -34,7 +35,7 @@
34
35
  "web-scraping"
35
36
  ],
36
37
  "dependencies": {
37
- "@browserless/errors": "^10.11.3",
38
+ "@browserless/errors": "^10.12.1",
38
39
  "@browserless/goto": "^10.11.4",
39
40
  "@browserless/pdf": "^10.11.4",
40
41
  "@browserless/screenshot": "^10.11.4",
@@ -50,13 +51,15 @@
50
51
  "@browserless/test": "^10.11.4",
51
52
  "ava": "5",
52
53
  "ps-list": "7",
54
+ "puppeteer": "^24.37.5",
53
55
  "tinyspawn": "latest"
54
56
  },
55
57
  "engines": {
56
58
  "node": ">= 24"
57
59
  },
58
60
  "files": [
59
- "src"
61
+ "src",
62
+ "index.d.ts"
60
63
  ],
61
64
  "scripts": {
62
65
  "test": "ava"
@@ -67,5 +70,5 @@
67
70
  "timeout": "2m",
68
71
  "workerThreads": false
69
72
  },
70
- "gitHead": "9ff2a0f0dad20d64a5c47a04a989ee77d1ee5ae8"
73
+ "gitHead": "04b12b821bc166e1d40ad31013c2ea99e85c3d00"
71
74
  }