@overwolf/ow-electron 31.7.8 → 34.3.0-beta.0

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.
package/electron.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- // Type definitions for Electron 31.7.7
1
+ // Type definitions for Electron 34.3.0
2
2
  // Project: http://electronjs.org/
3
3
  // Definitions by: The Electron Team <https://github.com/electron/electron>
4
4
  // Definitions: https://github.com/electron/typescript-definitions
@@ -480,7 +480,7 @@ declare namespace Electron {
480
480
  addListener(event: 'gpu-info-update', listener: () => void): this;
481
481
  removeListener(event: 'gpu-info-update', listener: () => void): this;
482
482
  /**
483
- * Emitted when `webContents` wants to do basic auth.
483
+ * Emitted when `webContents` or Utility process wants to do basic auth.
484
484
  *
485
485
  * The default behavior is to cancel all authentications. To override this you
486
486
  * should prevent the default behavior with `event.preventDefault()` and call
@@ -1416,21 +1416,22 @@ declare namespace Electron {
1416
1416
  */
1417
1417
  quit(): void;
1418
1418
  /**
1419
- * Relaunches the app when current instance exits.
1419
+ * Relaunches the app when the current instance exits.
1420
1420
  *
1421
1421
  * By default, the new instance will use the same working directory and command
1422
- * line arguments with current instance. When `args` is specified, the `args` will
1423
- * be passed as command line arguments instead. When `execPath` is specified, the
1424
- * `execPath` will be executed for relaunch instead of current app.
1422
+ * line arguments as the current instance. When `args` is specified, the `args`
1423
+ * will be passed as the command line arguments instead. When `execPath` is
1424
+ * specified, the `execPath` will be executed for the relaunch instead of the
1425
+ * current app.
1425
1426
  *
1426
- * Note that this method does not quit the app when executed, you have to call
1427
+ * Note that this method does not quit the app when executed. You have to call
1427
1428
  * `app.quit` or `app.exit` after calling `app.relaunch` to make the app restart.
1428
1429
  *
1429
- * When `app.relaunch` is called for multiple times, multiple instances will be
1430
- * started after current instance exited.
1430
+ * When `app.relaunch` is called multiple times, multiple instances will be started
1431
+ * after the current instance exits.
1431
1432
  *
1432
- * An example of restarting current instance immediately and adding a new command
1433
- * line argument to the new instance:
1433
+ * An example of restarting the current instance immediately and adding a new
1434
+ * command line argument to the new instance:
1434
1435
  */
1435
1436
  relaunch(options?: RelaunchOptions): void;
1436
1437
  /**
@@ -1577,6 +1578,11 @@ declare namespace Electron {
1577
1578
  * @platform linux,darwin
1578
1579
  */
1579
1580
  setBadgeCount(count?: number): boolean;
1581
+ /**
1582
+ * The handler is called when a password is needed to unlock a client certificate
1583
+ * for `hostname`.
1584
+ */
1585
+ setClientCertRequestPasswordHandler(handler: (clientCertRequestParams: ClientCertRequestParams) => Promise<string>): void;
1580
1586
  /**
1581
1587
  * Sets or removes a custom Jump List for the application, and returns one of the
1582
1588
  * following strings:
@@ -3651,11 +3657,12 @@ declare namespace Electron {
3651
3657
  */
3652
3658
  resizable?: boolean;
3653
3659
  /**
3654
- * Whether frameless window should have rounded corners on macOS. Default is
3655
- * `true`. Setting this property to `false` will prevent the window from being
3656
- * fullscreenable.
3660
+ * Whether frameless window should have rounded corners. Default is `true`. Setting
3661
+ * this property to `false` will prevent the window from being fullscreenable on
3662
+ * macOS. On Windows versions older than Windows 11 Build 22000 this property has
3663
+ * no effect, and frameless windows will not have rounded corners.
3657
3664
  *
3658
- * @platform darwin
3665
+ * @platform darwin,win32
3659
3666
  */
3660
3667
  roundedCorners?: boolean;
3661
3668
  /**
@@ -6824,6 +6831,10 @@ declare namespace Electron {
6824
6831
 
6825
6832
  // Docs: https://electronjs.org/docs/api/structures/cpu-usage
6826
6833
 
6834
+ /**
6835
+ * Total seconds of CPU time used since process startup.
6836
+ */
6837
+ cumulativeCPUUsage?: number;
6827
6838
  /**
6828
6839
  * The number of average idle CPU wakeups per second since the last call to
6829
6840
  * getCPUUsage. First call returns 0. Will always return 0 on Windows.
@@ -7140,32 +7151,32 @@ declare namespace Electron {
7140
7151
  *
7141
7152
  * On macOS, this displays a modal dialog that shows a message and certificate
7142
7153
  * information, and gives the user the option of trusting/importing the
7143
- * certificate. If you provide a `browserWindow` argument the dialog will be
7144
- * attached to the parent window, making it modal.
7154
+ * certificate. If you provide a `window` argument the dialog will be attached to
7155
+ * the parent window, making it modal.
7145
7156
  *
7146
7157
  * On Windows the options are more limited, due to the Win32 APIs used:
7147
7158
  *
7148
7159
  * * The `message` argument is not used, as the OS provides its own confirmation
7149
7160
  * dialog.
7150
- * * The `browserWindow` argument is ignored since it is not possible to make this
7161
+ * * The `window` argument is ignored since it is not possible to make this
7151
7162
  * confirmation dialog modal.
7152
7163
  *
7153
7164
  * @platform darwin,win32
7154
7165
  */
7155
- showCertificateTrustDialog(browserWindow: BrowserWindow, options: CertificateTrustDialogOptions): Promise<void>;
7166
+ showCertificateTrustDialog(window: BaseWindow, options: CertificateTrustDialogOptions): Promise<void>;
7156
7167
  /**
7157
7168
  * resolves when the certificate trust dialog is shown.
7158
7169
  *
7159
7170
  * On macOS, this displays a modal dialog that shows a message and certificate
7160
7171
  * information, and gives the user the option of trusting/importing the
7161
- * certificate. If you provide a `browserWindow` argument the dialog will be
7162
- * attached to the parent window, making it modal.
7172
+ * certificate. If you provide a `window` argument the dialog will be attached to
7173
+ * the parent window, making it modal.
7163
7174
  *
7164
7175
  * On Windows the options are more limited, due to the Win32 APIs used:
7165
7176
  *
7166
7177
  * * The `message` argument is not used, as the OS provides its own confirmation
7167
7178
  * dialog.
7168
- * * The `browserWindow` argument is ignored since it is not possible to make this
7179
+ * * The `window` argument is ignored since it is not possible to make this
7169
7180
  * confirmation dialog modal.
7170
7181
  *
7171
7182
  * @platform darwin,win32
@@ -7189,10 +7200,10 @@ declare namespace Electron {
7189
7200
  *
7190
7201
  * Shows a message box.
7191
7202
  *
7192
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7193
- * window, making it modal.
7203
+ * The `window` argument allows the dialog to attach itself to a parent window,
7204
+ * making it modal.
7194
7205
  */
7195
- showMessageBox(browserWindow: BrowserWindow, options: MessageBoxOptions): Promise<Electron.MessageBoxReturnValue>;
7206
+ showMessageBox(window: BaseWindow, options: MessageBoxOptions): Promise<Electron.MessageBoxReturnValue>;
7196
7207
  /**
7197
7208
  * resolves with a promise containing the following properties:
7198
7209
  *
@@ -7202,8 +7213,8 @@ declare namespace Electron {
7202
7213
  *
7203
7214
  * Shows a message box.
7204
7215
  *
7205
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7206
- * window, making it modal.
7216
+ * The `window` argument allows the dialog to attach itself to a parent window,
7217
+ * making it modal.
7207
7218
  */
7208
7219
  showMessageBox(options: MessageBoxOptions): Promise<Electron.MessageBoxReturnValue>;
7209
7220
  /**
@@ -7212,20 +7223,20 @@ declare namespace Electron {
7212
7223
  * Shows a message box, it will block the process until the message box is closed.
7213
7224
  * It returns the index of the clicked button.
7214
7225
  *
7215
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7216
- * window, making it modal. If `browserWindow` is not shown dialog will not be
7217
- * attached to it. In such case it will be displayed as an independent window.
7226
+ * The `window` argument allows the dialog to attach itself to a parent window,
7227
+ * making it modal. If `window` is not shown dialog will not be attached to it. In
7228
+ * such case it will be displayed as an independent window.
7218
7229
  */
7219
- showMessageBoxSync(browserWindow: BrowserWindow, options: MessageBoxSyncOptions): number;
7230
+ showMessageBoxSync(window: BaseWindow, options: MessageBoxSyncOptions): number;
7220
7231
  /**
7221
7232
  * the index of the clicked button.
7222
7233
  *
7223
7234
  * Shows a message box, it will block the process until the message box is closed.
7224
7235
  * It returns the index of the clicked button.
7225
7236
  *
7226
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7227
- * window, making it modal. If `browserWindow` is not shown dialog will not be
7228
- * attached to it. In such case it will be displayed as an independent window.
7237
+ * The `window` argument allows the dialog to attach itself to a parent window,
7238
+ * making it modal. If `window` is not shown dialog will not be attached to it. In
7239
+ * such case it will be displayed as an independent window.
7229
7240
  */
7230
7241
  showMessageBoxSync(options: MessageBoxSyncOptions): number;
7231
7242
  /**
@@ -7239,8 +7250,8 @@ declare namespace Electron {
7239
7250
  * bookmark data. `securityScopedBookmarks` must be enabled for this to be
7240
7251
  * populated. (For return values, see table here.)
7241
7252
  *
7242
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7243
- * window, making it modal.
7253
+ * The `window` argument allows the dialog to attach itself to a parent window,
7254
+ * making it modal.
7244
7255
  *
7245
7256
  * The `filters` specifies an array of file types that can be displayed or selected
7246
7257
  * when you want to limit the user to a specific type. For example:
@@ -7252,8 +7263,12 @@ declare namespace Electron {
7252
7263
  * **Note:** On Windows and Linux an open dialog can not be both a file selector
7253
7264
  * and a directory selector, so if you set `properties` to `['openFile',
7254
7265
  * 'openDirectory']` on these platforms, a directory selector will be shown.
7266
+ *
7267
+ * **Note:** On Linux `defaultPath` is not supported when using portal file chooser
7268
+ * dialogs unless the portal backend is version 4 or higher. You can use
7269
+ * `--xdg-portal-required-version` command-line switch to force gtk or kde dialogs.
7255
7270
  */
7256
- showOpenDialog(browserWindow: BrowserWindow, options: OpenDialogOptions): Promise<Electron.OpenDialogReturnValue>;
7271
+ showOpenDialog(window: BaseWindow, options: OpenDialogOptions): Promise<Electron.OpenDialogReturnValue>;
7257
7272
  /**
7258
7273
  * Resolve with an object containing the following:
7259
7274
  *
@@ -7265,8 +7280,8 @@ declare namespace Electron {
7265
7280
  * bookmark data. `securityScopedBookmarks` must be enabled for this to be
7266
7281
  * populated. (For return values, see table here.)
7267
7282
  *
7268
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7269
- * window, making it modal.
7283
+ * The `window` argument allows the dialog to attach itself to a parent window,
7284
+ * making it modal.
7270
7285
  *
7271
7286
  * The `filters` specifies an array of file types that can be displayed or selected
7272
7287
  * when you want to limit the user to a specific type. For example:
@@ -7278,14 +7293,18 @@ declare namespace Electron {
7278
7293
  * **Note:** On Windows and Linux an open dialog can not be both a file selector
7279
7294
  * and a directory selector, so if you set `properties` to `['openFile',
7280
7295
  * 'openDirectory']` on these platforms, a directory selector will be shown.
7296
+ *
7297
+ * **Note:** On Linux `defaultPath` is not supported when using portal file chooser
7298
+ * dialogs unless the portal backend is version 4 or higher. You can use
7299
+ * `--xdg-portal-required-version` command-line switch to force gtk or kde dialogs.
7281
7300
  */
7282
7301
  showOpenDialog(options: OpenDialogOptions): Promise<Electron.OpenDialogReturnValue>;
7283
7302
  /**
7284
7303
  * the file paths chosen by the user; if the dialog is cancelled it returns
7285
7304
  * `undefined`.
7286
7305
  *
7287
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7288
- * window, making it modal.
7306
+ * The `window` argument allows the dialog to attach itself to a parent window,
7307
+ * making it modal.
7289
7308
  *
7290
7309
  * The `filters` specifies an array of file types that can be displayed or selected
7291
7310
  * when you want to limit the user to a specific type. For example:
@@ -7297,14 +7316,18 @@ declare namespace Electron {
7297
7316
  * **Note:** On Windows and Linux an open dialog can not be both a file selector
7298
7317
  * and a directory selector, so if you set `properties` to `['openFile',
7299
7318
  * 'openDirectory']` on these platforms, a directory selector will be shown.
7319
+ *
7320
+ * **Note:** On Linux `defaultPath` is not supported when using portal file chooser
7321
+ * dialogs unless the portal backend is version 4 or higher. You can use
7322
+ * `--xdg-portal-required-version` command-line switch to force gtk or kde dialogs.
7300
7323
  */
7301
- showOpenDialogSync(browserWindow: BrowserWindow, options: OpenDialogSyncOptions): (string[]) | (undefined);
7324
+ showOpenDialogSync(window: BaseWindow, options: OpenDialogSyncOptions): (string[]) | (undefined);
7302
7325
  /**
7303
7326
  * the file paths chosen by the user; if the dialog is cancelled it returns
7304
7327
  * `undefined`.
7305
7328
  *
7306
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7307
- * window, making it modal.
7329
+ * The `window` argument allows the dialog to attach itself to a parent window,
7330
+ * making it modal.
7308
7331
  *
7309
7332
  * The `filters` specifies an array of file types that can be displayed or selected
7310
7333
  * when you want to limit the user to a specific type. For example:
@@ -7316,6 +7339,10 @@ declare namespace Electron {
7316
7339
  * **Note:** On Windows and Linux an open dialog can not be both a file selector
7317
7340
  * and a directory selector, so if you set `properties` to `['openFile',
7318
7341
  * 'openDirectory']` on these platforms, a directory selector will be shown.
7342
+ *
7343
+ * **Note:** On Linux `defaultPath` is not supported when using portal file chooser
7344
+ * dialogs unless the portal backend is version 4 or higher. You can use
7345
+ * `--xdg-portal-required-version` command-line switch to force gtk or kde dialogs.
7319
7346
  */
7320
7347
  showOpenDialogSync(options: OpenDialogSyncOptions): (string[]) | (undefined);
7321
7348
  /**
@@ -7328,8 +7355,8 @@ declare namespace Electron {
7328
7355
  * `securityScopedBookmarks` must be enabled for this to be present. (For return
7329
7356
  * values, see table here.)
7330
7357
  *
7331
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7332
- * window, making it modal.
7358
+ * The `window` argument allows the dialog to attach itself to a parent window,
7359
+ * making it modal.
7333
7360
  *
7334
7361
  * The `filters` specifies an array of file types that can be displayed, see
7335
7362
  * `dialog.showOpenDialog` for an example.
@@ -7337,7 +7364,7 @@ declare namespace Electron {
7337
7364
  * **Note:** On macOS, using the asynchronous version is recommended to avoid
7338
7365
  * issues when expanding and collapsing the dialog.
7339
7366
  */
7340
- showSaveDialog(browserWindow: BrowserWindow, options: SaveDialogOptions): Promise<Electron.SaveDialogReturnValue>;
7367
+ showSaveDialog(window: BaseWindow, options: SaveDialogOptions): Promise<Electron.SaveDialogReturnValue>;
7341
7368
  /**
7342
7369
  * Resolve with an object containing the following:
7343
7370
  *
@@ -7348,8 +7375,8 @@ declare namespace Electron {
7348
7375
  * `securityScopedBookmarks` must be enabled for this to be present. (For return
7349
7376
  * values, see table here.)
7350
7377
  *
7351
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7352
- * window, making it modal.
7378
+ * The `window` argument allows the dialog to attach itself to a parent window,
7379
+ * making it modal.
7353
7380
  *
7354
7381
  * The `filters` specifies an array of file types that can be displayed, see
7355
7382
  * `dialog.showOpenDialog` for an example.
@@ -7362,19 +7389,19 @@ declare namespace Electron {
7362
7389
  * the path of the file chosen by the user; if the dialog is cancelled it returns
7363
7390
  * an empty string.
7364
7391
  *
7365
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7366
- * window, making it modal.
7392
+ * The `window` argument allows the dialog to attach itself to a parent window,
7393
+ * making it modal.
7367
7394
  *
7368
7395
  * The `filters` specifies an array of file types that can be displayed, see
7369
7396
  * `dialog.showOpenDialog` for an example.
7370
7397
  */
7371
- showSaveDialogSync(browserWindow: BrowserWindow, options: SaveDialogSyncOptions): string;
7398
+ showSaveDialogSync(window: BaseWindow, options: SaveDialogSyncOptions): string;
7372
7399
  /**
7373
7400
  * the path of the file chosen by the user; if the dialog is cancelled it returns
7374
7401
  * an empty string.
7375
7402
  *
7376
- * The `browserWindow` argument allows the dialog to attach itself to a parent
7377
- * window, making it modal.
7403
+ * The `window` argument allows the dialog to attach itself to a parent window,
7404
+ * making it modal.
7378
7405
  *
7379
7406
  * The `filters` specifies an array of file types that can be displayed, see
7380
7407
  * `dialog.showOpenDialog` for an example.
@@ -8172,6 +8199,10 @@ declare namespace Electron {
8172
8199
 
8173
8200
  // Docs: https://electronjs.org/docs/api/ipc-main
8174
8201
 
8202
+ /**
8203
+ * Alias for `ipcMain.on`.
8204
+ */
8205
+ addListener(channel: string, listener: (event: IpcMainEvent, ...args: any[]) => void): this;
8175
8206
  /**
8176
8207
  * Adds a handler for an `invoke`able IPC. This handler will be called whenever a
8177
8208
  * renderer calls `ipcRenderer.invoke(channel, ...args)`.
@@ -8194,6 +8225,11 @@ declare namespace Electron {
8194
8225
  * `ipcMain.handle(channel, listener)`.
8195
8226
  */
8196
8227
  handleOnce(channel: string, listener: (event: IpcMainInvokeEvent, ...args: any[]) => (Promise<any>) | (any)): void;
8228
+ /**
8229
+ * Removes the specified `listener` from the listener array for the specified
8230
+ * `channel`.
8231
+ */
8232
+ off(channel: string, listener: (event: IpcMainEvent, ...args: any[]) => void): this;
8197
8233
  /**
8198
8234
  * Listens to `channel`, when a new message arrives `listener` would be called with
8199
8235
  * `listener(event, args...)`.
@@ -8205,7 +8241,8 @@ declare namespace Electron {
8205
8241
  */
8206
8242
  once(channel: string, listener: (event: IpcMainEvent, ...args: any[]) => void): this;
8207
8243
  /**
8208
- * Removes listeners of the specified `channel`.
8244
+ * Removes all listeners from the specified `channel`. Removes all listeners from
8245
+ * all channels if no channel is specified.
8209
8246
  */
8210
8247
  removeAllListeners(channel?: string): this;
8211
8248
  /**
@@ -8213,8 +8250,7 @@ declare namespace Electron {
8213
8250
  */
8214
8251
  removeHandler(channel: string): void;
8215
8252
  /**
8216
- * Removes the specified `listener` from the listener array for the specified
8217
- * `channel`.
8253
+ * Alias for `ipcMain.off`.
8218
8254
  */
8219
8255
  removeListener(channel: string, listener: (...args: any[]) => void): this;
8220
8256
  }
@@ -8251,10 +8287,11 @@ declare namespace Electron {
8251
8287
  */
8252
8288
  sender: WebContents;
8253
8289
  /**
8254
- * The frame that sent this message
8290
+ * The frame that sent this message. May be `null` if accessed after the frame has
8291
+ * either navigated or been destroyed.
8255
8292
  *
8256
8293
  */
8257
- readonly senderFrame: WebFrameMain;
8294
+ readonly senderFrame: (WebFrameMain) | (null);
8258
8295
  }
8259
8296
 
8260
8297
  interface IpcMainInvokeEvent extends Event {
@@ -8274,10 +8311,11 @@ declare namespace Electron {
8274
8311
  */
8275
8312
  sender: WebContents;
8276
8313
  /**
8277
- * The frame that sent this message
8314
+ * The frame that sent this message. May be `null` if accessed after the frame has
8315
+ * either navigated or been destroyed.
8278
8316
  *
8279
8317
  */
8280
- readonly senderFrame: WebFrameMain;
8318
+ readonly senderFrame: (WebFrameMain) | (null);
8281
8319
  }
8282
8320
 
8283
8321
  interface IpcRenderer extends NodeJS.EventEmitter {
@@ -8320,12 +8358,20 @@ declare namespace Electron {
8320
8358
  */
8321
8359
  invoke(channel: string, ...args: any[]): Promise<any>;
8322
8360
  /**
8323
- * Alias for `ipcRenderer.removeListener`.
8361
+ * Removes the specified `listener` from the listener array for the specified
8362
+ * `channel`.
8324
8363
  */
8325
8364
  off(channel: string, listener: (event: IpcRendererEvent, ...args: any[]) => void): this;
8326
8365
  /**
8327
8366
  * Listens to `channel`, when a new message arrives `listener` would be called with
8328
8367
  * `listener(event, args...)`.
8368
+ *
8369
+ * :::warning Do not expose the `event` argument to the renderer for security
8370
+ * reasons! Wrap any callback that you receive from the renderer in another
8371
+ * function like this: `ipcRenderer.on('my-channel', (event, ...args) =>
8372
+ * callback(...args))`. Not wrapping the callback in such a function would expose
8373
+ * dangerous Electron APIs to the renderer process. See the security guide for more
8374
+ * info. :::
8329
8375
  */
8330
8376
  on(channel: string, listener: (event: IpcRendererEvent, ...args: any[]) => void): this;
8331
8377
  /**
@@ -8348,12 +8394,12 @@ declare namespace Electron {
8348
8394
  */
8349
8395
  postMessage(channel: string, message: any, transfer?: MessagePort[]): void;
8350
8396
  /**
8351
- * Removes all listeners, or those of the specified `channel`.
8397
+ * Removes all listeners from the specified `channel`. Removes all listeners from
8398
+ * all channels if no channel is specified.
8352
8399
  */
8353
- removeAllListeners(channel: string): this;
8400
+ removeAllListeners(channel?: string): this;
8354
8401
  /**
8355
- * Removes the specified `listener` from the listener array for the specified
8356
- * `channel`.
8402
+ * Alias for `ipcRenderer.off`.
8357
8403
  */
8358
8404
  removeListener(channel: string, listener: (event: IpcRendererEvent, ...args: any[]) => void): this;
8359
8405
  /**
@@ -8659,9 +8705,9 @@ declare namespace Electron {
8659
8705
  */
8660
8706
  append(menuItem: MenuItem): void;
8661
8707
  /**
8662
- * Closes the context menu in the `browserWindow`.
8708
+ * Closes the context menu in the `window`.
8663
8709
  */
8664
- closePopup(browserWindow?: BrowserWindow): void;
8710
+ closePopup(window?: BaseWindow): void;
8665
8711
  /**
8666
8712
  * the item with the specified `id`
8667
8713
  */
@@ -8671,7 +8717,7 @@ declare namespace Electron {
8671
8717
  */
8672
8718
  insert(pos: number, menuItem: MenuItem): void;
8673
8719
  /**
8674
- * Pops up this menu as a context menu in the `BrowserWindow`.
8720
+ * Pops up this menu as a context menu in the `BaseWindow`.
8675
8721
  */
8676
8722
  popup(options?: PopupOptions): void;
8677
8723
  /**
@@ -9166,26 +9212,90 @@ declare namespace Electron {
9166
9212
  themeSource: ('system' | 'light' | 'dark');
9167
9213
  }
9168
9214
 
9215
+ interface NavigationEntry {
9216
+
9217
+ // Docs: https://electronjs.org/docs/api/structures/navigation-entry
9218
+
9219
+ /**
9220
+ * A base64 encoded data string containing Chromium page state including
9221
+ * information like the current scroll position or form values. It is committed by
9222
+ * Chromium before a navigation event and on a regular interval.
9223
+ */
9224
+ pageState?: string;
9225
+ title: string;
9226
+ url: string;
9227
+ }
9228
+
9169
9229
  class NavigationHistory {
9170
9230
 
9171
9231
  // Docs: https://electronjs.org/docs/api/navigation-history
9172
9232
 
9233
+ /**
9234
+ * Whether the browser can go back to previous web page.
9235
+ */
9236
+ canGoBack(): boolean;
9237
+ /**
9238
+ * Whether the browser can go forward to next web page.
9239
+ */
9240
+ canGoForward(): boolean;
9241
+ /**
9242
+ * Whether the web page can go to the specified relative `offset` from the current
9243
+ * entry.
9244
+ */
9245
+ canGoToOffset(offset: number): boolean;
9246
+ /**
9247
+ * Clears the navigation history.
9248
+ */
9249
+ clear(): void;
9173
9250
  /**
9174
9251
  * The index of the current page, from which we would go back/forward or reload.
9175
9252
  */
9176
9253
  getActiveIndex(): number;
9177
9254
  /**
9178
- * * `url` string - The URL of the navigation entry at the given index.
9179
- * * `title` string - The page title of the navigation entry at the given index.
9255
+ * WebContents complete history.
9256
+ */
9257
+ getAllEntries(): NavigationEntry[];
9258
+ /**
9259
+ * Navigation entry at the given index.
9180
9260
  *
9181
9261
  * If index is out of bounds (greater than history length or less than 0), null
9182
9262
  * will be returned.
9183
9263
  */
9184
- getEntryAtIndex(index: number): EntryAtIndex;
9264
+ getEntryAtIndex(index: number): NavigationEntry;
9265
+ /**
9266
+ * Makes the browser go back a web page.
9267
+ */
9268
+ goBack(): void;
9269
+ /**
9270
+ * Makes the browser go forward a web page.
9271
+ */
9272
+ goForward(): void;
9273
+ /**
9274
+ * Navigates browser to the specified absolute web page index.
9275
+ */
9276
+ goToIndex(index: number): void;
9277
+ /**
9278
+ * Navigates to the specified relative offset from the current entry.
9279
+ */
9280
+ goToOffset(offset: number): void;
9185
9281
  /**
9186
9282
  * History length.
9187
9283
  */
9188
9284
  length(): number;
9285
+ /**
9286
+ * Removes the navigation entry at the given index. Can't remove entry at the
9287
+ * "current active index".
9288
+ *
9289
+ * Whether the navigation entry was removed from the webContents history.
9290
+ */
9291
+ removeEntryAtIndex(index: number): boolean;
9292
+ /**
9293
+ * the promise will resolve when the page has finished loading the selected
9294
+ * navigation entry (see `did-finish-load`), and rejects if the page fails to load
9295
+ * (see `did-fail-load`). A noop rejection handler is already attached, which
9296
+ * avoids unhandled rejection errors.
9297
+ */
9298
+ restore(options: RestoreOptions): Promise<void>;
9189
9299
  }
9190
9300
 
9191
9301
  interface Net {
@@ -9578,6 +9688,24 @@ declare namespace Electron {
9578
9688
  userText?: string;
9579
9689
  }
9580
9690
 
9691
+ interface OffscreenSharedTexture {
9692
+
9693
+ // Docs: https://electronjs.org/docs/api/structures/offscreen-shared-texture
9694
+
9695
+ /**
9696
+ * Release the resources. The `texture` cannot be directly passed to another
9697
+ * process, users need to maintain texture lifecycles in main process, but it is
9698
+ * safe to pass the `textureInfo` to another process. Only a limited number of
9699
+ * textures can exist at the same time, so it's important that you call
9700
+ * `texture.release()` as soon as you're done with the texture.
9701
+ */
9702
+ release: () => void;
9703
+ /**
9704
+ * The shared texture info.
9705
+ */
9706
+ textureInfo: TextureInfo;
9707
+ }
9708
+
9581
9709
  interface OpenExternalPermissionRequest extends PermissionRequest {
9582
9710
 
9583
9711
  // Docs: https://electronjs.org/docs/api/structures/open-external-permission-request
@@ -9829,23 +9957,23 @@ declare namespace Electron {
9829
9957
  *
9830
9958
  * @platform darwin
9831
9959
  */
9832
- on(event: 'thermal-state-change', listener: () => void): this;
9960
+ on(event: 'thermal-state-change', listener: (details: Event<PowerMonitorThermalStateChangeEventParams>) => void): this;
9833
9961
  /**
9834
9962
  * @platform darwin
9835
9963
  */
9836
- off(event: 'thermal-state-change', listener: () => void): this;
9964
+ off(event: 'thermal-state-change', listener: (details: Event<PowerMonitorThermalStateChangeEventParams>) => void): this;
9837
9965
  /**
9838
9966
  * @platform darwin
9839
9967
  */
9840
- once(event: 'thermal-state-change', listener: () => void): this;
9968
+ once(event: 'thermal-state-change', listener: (details: Event<PowerMonitorThermalStateChangeEventParams>) => void): this;
9841
9969
  /**
9842
9970
  * @platform darwin
9843
9971
  */
9844
- addListener(event: 'thermal-state-change', listener: () => void): this;
9972
+ addListener(event: 'thermal-state-change', listener: (details: Event<PowerMonitorThermalStateChangeEventParams>) => void): this;
9845
9973
  /**
9846
9974
  * @platform darwin
9847
9975
  */
9848
- removeListener(event: 'thermal-state-change', listener: () => void): this;
9976
+ removeListener(event: 'thermal-state-change', listener: (details: Event<PowerMonitorThermalStateChangeEventParams>) => void): this;
9849
9977
  /**
9850
9978
  * Emitted as soon as the systems screen is unlocked.
9851
9979
  *
@@ -11541,6 +11669,11 @@ declare namespace Electron {
11541
11669
  * `https://my.website.example.co.uk/` will end up clearing all cookies for
11542
11670
  * `example.co.uk`.
11543
11671
  *
11672
+ * **Note:** Clearing cache data will also clear the shared dictionary cache. This
11673
+ * means that any dictionaries used for compression may be reloaded after clearing
11674
+ * the cache. If you wish to clear the shared dictionary cache but leave other
11675
+ * cached data intact, you may want to use the `clearSharedDictionaryCache` method.
11676
+ *
11544
11677
  * For more information, refer to Chromium's `BrowsingDataRemover` interface.
11545
11678
  */
11546
11679
  clearData(options?: ClearDataOptions): Promise<void>;
@@ -11550,6 +11683,15 @@ declare namespace Electron {
11550
11683
  * Clears the host resolver cache.
11551
11684
  */
11552
11685
  clearHostResolverCache(): Promise<void>;
11686
+ /**
11687
+ * resolves when the dictionary cache has been cleared, both in memory and on disk.
11688
+ */
11689
+ clearSharedDictionaryCache(): Promise<void>;
11690
+ /**
11691
+ * resolves when the dictionary cache has been cleared for the specified isolation
11692
+ * key, both in memory and on disk.
11693
+ */
11694
+ clearSharedDictionaryCacheForIsolationKey(options: ClearSharedDictionaryCacheForIsolationKeyOptions): Promise<void>;
11553
11695
  /**
11554
11696
  * resolves when the storage data has been cleared.
11555
11697
  */
@@ -11649,6 +11791,28 @@ declare namespace Electron {
11649
11791
  * an array of paths to preload scripts that have been registered.
11650
11792
  */
11651
11793
  getPreloads(): string[];
11794
+ /**
11795
+ * an array of shared dictionary information entries in Chromium's networking
11796
+ * service's storage.
11797
+ *
11798
+ * To get information about all present shared dictionaries, call
11799
+ * `getSharedDictionaryUsageInfo()`.
11800
+ */
11801
+ getSharedDictionaryInfo(options: SharedDictionaryInfoOptions): Promise<Electron.SharedDictionaryInfo[]>;
11802
+ /**
11803
+ * an array of shared dictionary information entries in Chromium's networking
11804
+ * service's storage.
11805
+ *
11806
+ * Shared dictionaries are used to power advanced compression of data sent over the
11807
+ * wire, specifically with Brotli and ZStandard. You don't need to call any of the
11808
+ * shared dictionary APIs in Electron to make use of this advanced web feature, but
11809
+ * if you do, they allow deeper control and inspection of the shared dictionaries
11810
+ * used during decompression.
11811
+ *
11812
+ * To get detailed information about a specific shared dictionary entry, call
11813
+ * `getSharedDictionaryInfo(options)`.
11814
+ */
11815
+ getSharedDictionaryUsageInfo(): Promise<Electron.SharedDictionaryUsageInfo[]>;
11652
11816
  /**
11653
11817
  * An array of language codes the spellchecker is enabled for. If this list is
11654
11818
  * empty the spellchecker will fallback to using `en-US`. By default on launch if
@@ -11793,12 +11957,18 @@ declare namespace Electron {
11793
11957
  * via the `navigator.mediaDevices.getDisplayMedia` API. Use the desktopCapturer
11794
11958
  * API to choose which stream(s) to grant access to.
11795
11959
  *
11960
+ * `useSystemPicker` allows an application to use the system picker instead of
11961
+ * providing a specific video source from `getSources`. This option is
11962
+ * experimental, and currently available for MacOS 15+ only. If the system picker
11963
+ * is available and `useSystemPicker` is set to `true`, the handler will not be
11964
+ * invoked.
11965
+ *
11796
11966
  * Passing a WebFrameMain object as a video or audio stream will capture the video
11797
11967
  * or audio stream from that frame.
11798
11968
  *
11799
11969
  * Passing `null` instead of a function resets the handler to its default state.
11800
11970
  */
11801
- setDisplayMediaRequestHandler(handler: ((request: DisplayMediaRequestHandlerHandlerRequest, callback: (streams: Streams) => void) => void) | (null)): void;
11971
+ setDisplayMediaRequestHandler(handler: ((request: DisplayMediaRequestHandlerHandlerRequest, callback: (streams: Streams) => void) => void) | (null), opts?: DisplayMediaRequestHandlerOpts): void;
11802
11972
  /**
11803
11973
  * Sets download saving directory. By default, the download directory will be the
11804
11974
  * `Downloads` under the respective app folder.
@@ -11812,7 +11982,7 @@ declare namespace Electron {
11812
11982
  * make a permission request if the check is denied. To clear the handler, call
11813
11983
  * `setPermissionCheckHandler(null)`.
11814
11984
  */
11815
- setPermissionCheckHandler(handler: ((webContents: (WebContents) | (null), permission: 'clipboard-read' | 'clipboard-sanitized-write' | 'geolocation' | 'fullscreen' | 'hid' | 'idle-detection' | 'media' | 'mediaKeySystem' | 'midi' | 'midiSysex' | 'notifications' | 'openExternal' | 'pointerLock' | 'serial' | 'storage-access' | 'top-level-storage-access' | 'usb', requestingOrigin: string, details: PermissionCheckHandlerHandlerDetails) => boolean) | (null)): void;
11985
+ setPermissionCheckHandler(handler: ((webContents: (WebContents) | (null), permission: 'clipboard-read' | 'clipboard-sanitized-write' | 'geolocation' | 'fullscreen' | 'hid' | 'idle-detection' | 'media' | 'mediaKeySystem' | 'midi' | 'midiSysex' | 'notifications' | 'openExternal' | 'pointerLock' | 'serial' | 'storage-access' | 'top-level-storage-access' | 'usb' | 'deprecated-sync-clipboard-read', requestingOrigin: string, details: PermissionCheckHandlerHandlerDetails) => boolean) | (null)): void;
11816
11986
  /**
11817
11987
  * Sets the handler which can be used to respond to permission requests for the
11818
11988
  * `session`. Calling `callback(true)` will allow the permission and
@@ -11954,6 +12124,81 @@ declare namespace Electron {
11954
12124
  readonly webRequest: WebRequest;
11955
12125
  }
11956
12126
 
12127
+ interface SharedDictionaryInfo {
12128
+
12129
+ // Docs: https://electronjs.org/docs/api/structures/shared-dictionary-info
12130
+
12131
+ /**
12132
+ * URL of the dictionary.
12133
+ */
12134
+ dictionaryUrl: string;
12135
+ /**
12136
+ * The expiration time for the dictionary which was declared in 'use-as-dictionary'
12137
+ * response header's `expires` option in seconds.
12138
+ */
12139
+ expirationDuration: number;
12140
+ /**
12141
+ * The sha256 hash of the dictionary binary.
12142
+ */
12143
+ hash: string;
12144
+ /**
12145
+ * The Id for the dictionary which was declared in 'use-as-dictionary' response
12146
+ * header's `id` option.
12147
+ */
12148
+ id: string;
12149
+ /**
12150
+ * The time of when the dictionary was received from the network layer.
12151
+ */
12152
+ lastFetchTime: Date;
12153
+ /**
12154
+ * The time when the dictionary was last used.
12155
+ */
12156
+ lastUsedTime: Date;
12157
+ /**
12158
+ * The matching path pattern for the dictionary which was declared in
12159
+ * 'use-as-dictionary' response header's `match` option.
12160
+ */
12161
+ match: string;
12162
+ /**
12163
+ * An array of matching destinations for the dictionary which was declared in
12164
+ * 'use-as-dictionary' response header's `match-dest` option.
12165
+ */
12166
+ matchDestinations: string[];
12167
+ /**
12168
+ * The time of when the dictionary was received from the server. For cached
12169
+ * responses, this time could be "far" in the past.
12170
+ */
12171
+ responseTime: Date;
12172
+ /**
12173
+ * The amount of bytes stored for this shared dictionary information object in
12174
+ * Chromium's internal storage (usually Sqlite).
12175
+ */
12176
+ size: number;
12177
+ }
12178
+
12179
+ interface SharedDictionaryUsageInfo {
12180
+
12181
+ // Docs: https://electronjs.org/docs/api/structures/shared-dictionary-usage-info
12182
+
12183
+ /**
12184
+ * The origin of the frame where the request originates. It’s specific to the
12185
+ * individual frame making the request and is defined by its scheme, host, and
12186
+ * port. In practice, will look like a URL.
12187
+ */
12188
+ frameOrigin: string;
12189
+ /**
12190
+ * The site of the top-level browsing context (the main frame or tab that contains
12191
+ * the request). It’s less granular than `frameOrigin` and focuses on the broader
12192
+ * "site" scope. In practice, will look like a URL.
12193
+ */
12194
+ topFrameSite: string;
12195
+ /**
12196
+ * The amount of bytes stored for this shared dictionary information object in
12197
+ * Chromium's internal storage (usually Sqlite).
12198
+ */
12199
+ totalSizeBytes: number;
12200
+ }
12201
+
11957
12202
  interface SharedWorkerInfo {
11958
12203
 
11959
12204
  // Docs: https://electronjs.org/docs/api/structures/shared-worker-info
@@ -12444,9 +12689,12 @@ declare namespace Electron {
12444
12689
  * semitransparent backgrounds. This maps to
12445
12690
  * NSWorkspace.accessibilityDisplayShouldReduceTransparency
12446
12691
  *
12692
+ * **Deprecated:** Use the new `nativeTheme.prefersReducedTransparency` API.
12693
+ *
12694
+ * @deprecated
12447
12695
  * @platform darwin
12448
12696
  */
12449
- accessibilityDisplayShouldReduceTransparency(): boolean;
12697
+ accessibilityDisplayShouldReduceTransparency: boolean;
12450
12698
  /**
12451
12699
  * A `string` property that can be `dark`, `light` or `unknown`.
12452
12700
  *
@@ -13821,37 +14069,123 @@ declare namespace Electron {
13821
14069
  // Docs: https://electronjs.org/docs/api/utility-process
13822
14070
 
13823
14071
  static fork(modulePath: string, args?: string[], options?: ForkOptions): UtilityProcess;
14072
+ /**
14073
+ * Emitted when the child process needs to terminate due to non continuable error
14074
+ * from V8.
14075
+ *
14076
+ * No matter if you listen to the `error` event, the `exit` event will be emitted
14077
+ * after the child process terminates.
14078
+ *
14079
+ * @experimental
14080
+ */
14081
+ on(event: 'error', listener: (
14082
+ /**
14083
+ * Type of error. One of the following values:
14084
+ */
14085
+ type: ('FatalError'),
14086
+ /**
14087
+ * Source location from where the error originated.
14088
+ */
14089
+ location: string,
14090
+ /**
14091
+ * `Node.js diagnostic report`.
14092
+ */
14093
+ report: string) => void): this;
14094
+ /**
14095
+ * @experimental
14096
+ */
14097
+ off(event: 'error', listener: (
14098
+ /**
14099
+ * Type of error. One of the following values:
14100
+ */
14101
+ type: ('FatalError'),
14102
+ /**
14103
+ * Source location from where the error originated.
14104
+ */
14105
+ location: string,
14106
+ /**
14107
+ * `Node.js diagnostic report`.
14108
+ */
14109
+ report: string) => void): this;
14110
+ /**
14111
+ * @experimental
14112
+ */
14113
+ once(event: 'error', listener: (
14114
+ /**
14115
+ * Type of error. One of the following values:
14116
+ */
14117
+ type: ('FatalError'),
14118
+ /**
14119
+ * Source location from where the error originated.
14120
+ */
14121
+ location: string,
14122
+ /**
14123
+ * `Node.js diagnostic report`.
14124
+ */
14125
+ report: string) => void): this;
14126
+ /**
14127
+ * @experimental
14128
+ */
14129
+ addListener(event: 'error', listener: (
14130
+ /**
14131
+ * Type of error. One of the following values:
14132
+ */
14133
+ type: ('FatalError'),
14134
+ /**
14135
+ * Source location from where the error originated.
14136
+ */
14137
+ location: string,
14138
+ /**
14139
+ * `Node.js diagnostic report`.
14140
+ */
14141
+ report: string) => void): this;
14142
+ /**
14143
+ * @experimental
14144
+ */
14145
+ removeListener(event: 'error', listener: (
14146
+ /**
14147
+ * Type of error. One of the following values:
14148
+ */
14149
+ type: ('FatalError'),
14150
+ /**
14151
+ * Source location from where the error originated.
14152
+ */
14153
+ location: string,
14154
+ /**
14155
+ * `Node.js diagnostic report`.
14156
+ */
14157
+ report: string) => void): this;
13824
14158
  /**
13825
14159
  * Emitted after the child process ends.
13826
14160
  */
13827
14161
  on(event: 'exit', listener: (
13828
14162
  /**
13829
- * Contains the exit code for the process obtained from waitpid on posix, or
13830
- * GetExitCodeProcess on windows.
14163
+ * Contains the exit code for the process obtained from waitpid on POSIX, or
14164
+ * GetExitCodeProcess on Windows.
13831
14165
  */
13832
14166
  code: number) => void): this;
13833
14167
  off(event: 'exit', listener: (
13834
14168
  /**
13835
- * Contains the exit code for the process obtained from waitpid on posix, or
13836
- * GetExitCodeProcess on windows.
14169
+ * Contains the exit code for the process obtained from waitpid on POSIX, or
14170
+ * GetExitCodeProcess on Windows.
13837
14171
  */
13838
14172
  code: number) => void): this;
13839
14173
  once(event: 'exit', listener: (
13840
14174
  /**
13841
- * Contains the exit code for the process obtained from waitpid on posix, or
13842
- * GetExitCodeProcess on windows.
14175
+ * Contains the exit code for the process obtained from waitpid on POSIX, or
14176
+ * GetExitCodeProcess on Windows.
13843
14177
  */
13844
14178
  code: number) => void): this;
13845
14179
  addListener(event: 'exit', listener: (
13846
14180
  /**
13847
- * Contains the exit code for the process obtained from waitpid on posix, or
13848
- * GetExitCodeProcess on windows.
14181
+ * Contains the exit code for the process obtained from waitpid on POSIX, or
14182
+ * GetExitCodeProcess on Windows.
13849
14183
  */
13850
14184
  code: number) => void): this;
13851
14185
  removeListener(event: 'exit', listener: (
13852
14186
  /**
13853
- * Contains the exit code for the process obtained from waitpid on posix, or
13854
- * GetExitCodeProcess on windows.
14187
+ * Contains the exit code for the process obtained from waitpid on POSIX, or
14188
+ * GetExitCodeProcess on Windows.
13855
14189
  */
13856
14190
  code: number) => void): this;
13857
14191
  /**
@@ -13886,9 +14220,12 @@ declare namespace Electron {
13886
14220
  postMessage(message: any, transfer?: MessagePortMain[]): void;
13887
14221
  /**
13888
14222
  * A `Integer | undefined` representing the process identifier (PID) of the child
13889
- * process. If the child process fails to spawn due to errors, then the value is
14223
+ * process. Until the child process has spawned successfully, the value is
13890
14224
  * `undefined`. When the child process exits, then the value is `undefined` after
13891
14225
  * the `exit` event is emitted.
14226
+ *
14227
+ * **Note:** You can use the `pid` to determine if the process is currently
14228
+ * running.
13892
14229
  */
13893
14230
  pid: (number) | (undefined);
13894
14231
  /**
@@ -13933,6 +14270,11 @@ declare namespace Electron {
13933
14270
  * The bounds of this View, relative to its parent.
13934
14271
  */
13935
14272
  getBounds(): Rectangle;
14273
+ /**
14274
+ * Whether the view should be drawn. Note that this is different from whether the
14275
+ * view is visible on screen—it may still be obscured or out of view.
14276
+ */
14277
+ getVisible(): boolean;
13936
14278
  /**
13937
14279
  * If the view passed as a parameter is not a child of this view, this method is a
13938
14280
  * no-op.
@@ -13967,6 +14309,10 @@ declare namespace Electron {
13967
14309
  * `RGB`.
13968
14310
  */
13969
14311
  setBackgroundColor(color: string): void;
14312
+ /**
14313
+ * **Note:** The area cutout of the view's border still captures clicks.
14314
+ */
14315
+ setBorderRadius(radius: number): void;
13970
14316
  setBounds(bounds: Rectangle): void;
13971
14317
  setVisible(visible: boolean): void;
13972
14318
  /**
@@ -15130,23 +15476,23 @@ declare namespace Electron {
15130
15476
  * The usage is the same with the `login` event of `app`.
15131
15477
  */
15132
15478
  on(event: 'login', listener: (event: Event,
15133
- authenticationResponseDetails: AuthenticationResponseDetails,
15479
+ authenticationResponseDetails: LoginAuthenticationResponseDetails,
15134
15480
  authInfo: AuthInfo,
15135
15481
  callback: (username?: string, password?: string) => void) => void): this;
15136
15482
  off(event: 'login', listener: (event: Event,
15137
- authenticationResponseDetails: AuthenticationResponseDetails,
15483
+ authenticationResponseDetails: LoginAuthenticationResponseDetails,
15138
15484
  authInfo: AuthInfo,
15139
15485
  callback: (username?: string, password?: string) => void) => void): this;
15140
15486
  once(event: 'login', listener: (event: Event,
15141
- authenticationResponseDetails: AuthenticationResponseDetails,
15487
+ authenticationResponseDetails: LoginAuthenticationResponseDetails,
15142
15488
  authInfo: AuthInfo,
15143
15489
  callback: (username?: string, password?: string) => void) => void): this;
15144
15490
  addListener(event: 'login', listener: (event: Event,
15145
- authenticationResponseDetails: AuthenticationResponseDetails,
15491
+ authenticationResponseDetails: LoginAuthenticationResponseDetails,
15146
15492
  authInfo: AuthInfo,
15147
15493
  callback: (username?: string, password?: string) => void) => void): this;
15148
15494
  removeListener(event: 'login', listener: (event: Event,
15149
- authenticationResponseDetails: AuthenticationResponseDetails,
15495
+ authenticationResponseDetails: LoginAuthenticationResponseDetails,
15150
15496
  authInfo: AuthInfo,
15151
15497
  callback: (username?: string, password?: string) => void) => void): this;
15152
15498
  /**
@@ -15215,32 +15561,43 @@ declare namespace Electron {
15215
15561
  /**
15216
15562
  * Emitted when a new frame is generated. Only the dirty area is passed in the
15217
15563
  * buffer.
15564
+ *
15565
+ * When using shared texture (set `webPreferences.offscreen.useSharedTexture` to
15566
+ * `true`) feature, you can pass the texture handle to external rendering pipeline
15567
+ * without the overhead of copying data between CPU and GPU memory, with Chromium's
15568
+ * hardware acceleration support. This feature is helpful for high-performance
15569
+ * rendering scenarios.
15570
+ *
15571
+ * Only a limited number of textures can exist at the same time, so it's important
15572
+ * that you call `texture.release()` as soon as you're done with the texture. By
15573
+ * managing the texture lifecycle by yourself, you can safely pass the
15574
+ * `texture.textureInfo` to other processes through IPC.
15218
15575
  */
15219
- on(event: 'paint', listener: (event: Event,
15576
+ on(event: 'paint', listener: (details: Event<WebContentsPaintEventParams>,
15220
15577
  dirtyRect: Rectangle,
15221
15578
  /**
15222
15579
  * The image data of the whole frame.
15223
15580
  */
15224
15581
  image: NativeImage) => void): this;
15225
- off(event: 'paint', listener: (event: Event,
15582
+ off(event: 'paint', listener: (details: Event<WebContentsPaintEventParams>,
15226
15583
  dirtyRect: Rectangle,
15227
15584
  /**
15228
15585
  * The image data of the whole frame.
15229
15586
  */
15230
15587
  image: NativeImage) => void): this;
15231
- once(event: 'paint', listener: (event: Event,
15588
+ once(event: 'paint', listener: (details: Event<WebContentsPaintEventParams>,
15232
15589
  dirtyRect: Rectangle,
15233
15590
  /**
15234
15591
  * The image data of the whole frame.
15235
15592
  */
15236
15593
  image: NativeImage) => void): this;
15237
- addListener(event: 'paint', listener: (event: Event,
15594
+ addListener(event: 'paint', listener: (details: Event<WebContentsPaintEventParams>,
15238
15595
  dirtyRect: Rectangle,
15239
15596
  /**
15240
15597
  * The image data of the whole frame.
15241
15598
  */
15242
15599
  image: NativeImage) => void): this;
15243
- removeListener(event: 'paint', listener: (event: Event,
15600
+ removeListener(event: 'paint', listener: (details: Event<WebContentsPaintEventParams>,
15244
15601
  dirtyRect: Rectangle,
15245
15602
  /**
15246
15603
  * The image data of the whole frame.
@@ -15828,14 +16185,28 @@ declare namespace Electron {
15828
16185
  beginFrameSubscription(callback: (image: NativeImage, dirtyRect: Rectangle) => void): void;
15829
16186
  /**
15830
16187
  * Whether the browser can go back to previous web page.
16188
+ *
16189
+ * **Deprecated:** Should use the new `contents.navigationHistory.canGoBack` API.
16190
+ *
16191
+ * @deprecated
15831
16192
  */
15832
16193
  canGoBack(): boolean;
15833
16194
  /**
15834
16195
  * Whether the browser can go forward to next web page.
16196
+ *
16197
+ * **Deprecated:** Should use the new `contents.navigationHistory.canGoForward`
16198
+ * API.
16199
+ *
16200
+ * @deprecated
15835
16201
  */
15836
16202
  canGoForward(): boolean;
15837
16203
  /**
15838
16204
  * Whether the web page can go to `offset`.
16205
+ *
16206
+ * **Deprecated:** Should use the new `contents.navigationHistory.canGoToOffset`
16207
+ * API.
16208
+ *
16209
+ * @deprecated
15839
16210
  */
15840
16211
  canGoToOffset(offset: number): boolean;
15841
16212
  /**
@@ -15853,6 +16224,10 @@ declare namespace Electron {
15853
16224
  centerSelection(): void;
15854
16225
  /**
15855
16226
  * Clears the navigation history.
16227
+ *
16228
+ * **Deprecated:** Should use the new `contents.navigationHistory.clear` API.
16229
+ *
16230
+ * @deprecated
15856
16231
  */
15857
16232
  clearHistory(): void;
15858
16233
  /**
@@ -16023,18 +16398,34 @@ declare namespace Electron {
16023
16398
  getZoomLevel(): number;
16024
16399
  /**
16025
16400
  * Makes the browser go back a web page.
16401
+ *
16402
+ * **Deprecated:** Should use the new `contents.navigationHistory.goBack` API.
16403
+ *
16404
+ * @deprecated
16026
16405
  */
16027
16406
  goBack(): void;
16028
16407
  /**
16029
16408
  * Makes the browser go forward a web page.
16409
+ *
16410
+ * **Deprecated:** Should use the new `contents.navigationHistory.goForward` API.
16411
+ *
16412
+ * @deprecated
16030
16413
  */
16031
16414
  goForward(): void;
16032
16415
  /**
16033
16416
  * Navigates browser to the specified absolute web page index.
16417
+ *
16418
+ * **Deprecated:** Should use the new `contents.navigationHistory.goToIndex` API.
16419
+ *
16420
+ * @deprecated
16034
16421
  */
16035
16422
  goToIndex(index: number): void;
16036
16423
  /**
16037
16424
  * Navigates to the specified offset from the "current entry".
16425
+ *
16426
+ * **Deprecated:** Should use the new `contents.navigationHistory.goToOffset` API.
16427
+ *
16428
+ * @deprecated
16038
16429
  */
16039
16430
  goToOffset(offset: number): void;
16040
16431
  /**
@@ -16078,7 +16469,7 @@ declare namespace Electron {
16078
16469
  isAudioMuted(): boolean;
16079
16470
  /**
16080
16471
  * Whether this page is being captured. It returns true when the capturer count is
16081
- * large then 0.
16472
+ * greater than 0.
16082
16473
  */
16083
16474
  isBeingCaptured(): boolean;
16084
16475
  /**
@@ -16792,6 +17183,18 @@ declare namespace Electron {
16792
17183
  once(event: 'dom-ready', listener: () => void): this;
16793
17184
  addListener(event: 'dom-ready', listener: () => void): this;
16794
17185
  removeListener(event: 'dom-ready', listener: () => void): this;
17186
+ /**
17187
+ * A promise that resolves with the currently running JavaScript call stack. If no
17188
+ * JavaScript runs in the frame, the promise will never resolve. In cases where the
17189
+ * call stack is otherwise unable to be collected, it will return `undefined`.
17190
+ *
17191
+ * This can be useful to determine why the frame is unresponsive in cases where
17192
+ * there's long-running JavaScript. For more information, see the proposed Crash
17193
+ * Reporting API.
17194
+ *
17195
+ * @experimental
17196
+ */
17197
+ collectJavaScriptCallStack(): (Promise<string>) | (Promise<void>);
16795
17198
  /**
16796
17199
  * A promise that resolves with the result of the executed code or is rejected if
16797
17200
  * execution throws or results in a rejected promise.
@@ -16803,6 +17206,10 @@ declare namespace Electron {
16803
17206
  * this limitation.
16804
17207
  */
16805
17208
  executeJavaScript(code: string, userGesture?: boolean): Promise<unknown>;
17209
+ /**
17210
+ * Whether the frame is destroyed.
17211
+ */
17212
+ isDestroyed(): boolean;
16806
17213
  /**
16807
17214
  * Send a message to the renderer process, optionally transferring ownership of
16808
17215
  * zero or more `MessagePortMain` objects.
@@ -16829,6 +17236,14 @@ declare namespace Electron {
16829
17236
  * `ipcRenderer` module.
16830
17237
  */
16831
17238
  send(channel: string, ...args: any[]): void;
17239
+ /**
17240
+ * A `Boolean` representing whether the frame is detached from the frame tree. If a
17241
+ * frame is accessed while the corresponding page is running any unload listeners,
17242
+ * it may become detached as the newly navigated page replaced it in the frame
17243
+ * tree.
17244
+ *
17245
+ */
17246
+ readonly detached: boolean;
16832
17247
  /**
16833
17248
  * A `WebFrameMain[]` collection containing the direct descendents of `frame`.
16834
17249
  *
@@ -17027,6 +17442,12 @@ declare namespace Electron {
17027
17442
  * RuntimeEnabledFeatures.json5 file.
17028
17443
  */
17029
17444
  enableBlinkFeatures?: string;
17445
+ /**
17446
+ * Whether to enable the `paste` execCommand. Default is `false`.
17447
+ *
17448
+ * @deprecated
17449
+ */
17450
+ enableDeprecatedPaste?: boolean;
17030
17451
  /**
17031
17452
  * Whether to enable preferred size mode. The preferred size is the minimum size
17032
17453
  * needed to contain the layout of the document—without requiring scrolling.
@@ -17083,7 +17504,7 @@ declare namespace Electron {
17083
17504
  * Whether to enable offscreen rendering for the browser window. Defaults to
17084
17505
  * `false`. See the offscreen rendering tutorial for more details.
17085
17506
  */
17086
- offscreen?: boolean;
17507
+ offscreen?: (Offscreen) | (boolean);
17087
17508
  /**
17088
17509
  * Sets the session used by the page according to the session's partition string.
17089
17510
  * If `partition` starts with `persist:`, the page will use a persistent session
@@ -18149,6 +18570,7 @@ declare namespace Electron {
18149
18570
 
18150
18571
  interface AuthenticationResponseDetails {
18151
18572
  url: string;
18573
+ pid: number;
18152
18574
  }
18153
18575
 
18154
18576
  interface AuthInfo {
@@ -18214,7 +18636,11 @@ declare namespace Electron {
18214
18636
  * The type of pairing prompt being requested. One of the following values:
18215
18637
  */
18216
18638
  pairingKind: ('confirm' | 'confirmPin' | 'providePin');
18217
- frame: WebFrameMain;
18639
+ /**
18640
+ * The frame initiating this handler. May be `null` if accessed after the frame has
18641
+ * either navigated or been destroyed.
18642
+ */
18643
+ frame: (WebFrameMain) | (null);
18218
18644
  /**
18219
18645
  * The pin value to verify if `pairingKind` is `confirmPin`.
18220
18646
  */
@@ -18259,7 +18685,9 @@ declare namespace Electron {
18259
18685
 
18260
18686
  interface ClearDataOptions {
18261
18687
  /**
18262
- * The types of data to clear. By default, this will clear all types of data.
18688
+ * The types of data to clear. By default, this will clear all types of data. This
18689
+ * can potentially include data types not explicitly listed here. (See Chromium's
18690
+ * `BrowsingDataRemover` for the full list.)
18263
18691
  */
18264
18692
  dataTypes?: Array<'backgroundFetch' | 'cache' | 'cookies' | 'downloads' | 'fileSystems' | 'indexedDB' | 'localStorage' | 'serviceWorkers' | 'webSQL'>;
18265
18693
  /**
@@ -18281,6 +18709,21 @@ declare namespace Electron {
18281
18709
  originMatchingMode?: ('third-parties-included' | 'origin-in-all-contexts');
18282
18710
  }
18283
18711
 
18712
+ interface ClearSharedDictionaryCacheForIsolationKeyOptions {
18713
+ /**
18714
+ * The origin of the frame where the request originates. It’s specific to the
18715
+ * individual frame making the request and is defined by its scheme, host, and
18716
+ * port. In practice, will look like a URL.
18717
+ */
18718
+ frameOrigin: string;
18719
+ /**
18720
+ * The site of the top-level browsing context (the main frame or tab that contains
18721
+ * the request). It’s less granular than `frameOrigin` and focuses on the broader
18722
+ * "site" scope. In practice, will look like a URL.
18723
+ */
18724
+ topFrameSite: string;
18725
+ }
18726
+
18284
18727
  interface ClearStorageDataOptions {
18285
18728
  /**
18286
18729
  * Should follow `window.location.origin`’s representation `scheme://host:port`.
@@ -18299,6 +18742,21 @@ declare namespace Electron {
18299
18742
  quotas?: Array<'temporary' | 'syncable'>;
18300
18743
  }
18301
18744
 
18745
+ interface ClientCertRequestParams {
18746
+ /**
18747
+ * the hostname of the site requiring a client certificate
18748
+ */
18749
+ hostname: string;
18750
+ /**
18751
+ * the token (or slot) name of the cryptographic device
18752
+ */
18753
+ tokenName: string;
18754
+ /**
18755
+ * whether there have been previous failed attempts at prompting the password
18756
+ */
18757
+ isRetry: boolean;
18758
+ }
18759
+
18302
18760
  interface ClientRequestConstructorOptions {
18303
18761
  /**
18304
18762
  * The HTTP request method. Defaults to the GET method.
@@ -18482,9 +18940,10 @@ declare namespace Electron {
18482
18940
  */
18483
18941
  y: number;
18484
18942
  /**
18485
- * Frame from which the context menu was invoked.
18943
+ * Frame from which the context menu was invoked. May be `null` if accessed after
18944
+ * the frame has either navigated or been destroyed.
18486
18945
  */
18487
- frame: WebFrameMain;
18946
+ frame: (WebFrameMain) | (null);
18488
18947
  /**
18489
18948
  * URL of the link that encloses the node the context menu was invoked on.
18490
18949
  */
@@ -18844,7 +19303,7 @@ declare namespace Electron {
18844
19303
  */
18845
19304
  reason: ('clean-exit' | 'abnormal-exit' | 'killed' | 'crashed' | 'oom' | 'launch-failed' | 'integrity-failure');
18846
19305
  /**
18847
- * The exit code for the process (e.g. status from waitpid if on posix, from
19306
+ * The exit code for the process (e.g. status from waitpid if on POSIX, from
18848
19307
  * GetExitCodeProcess on Windows).
18849
19308
  */
18850
19309
  exitCode: number;
@@ -19008,9 +19467,10 @@ declare namespace Electron {
19008
19467
 
19009
19468
  interface DisplayMediaRequestHandlerHandlerRequest {
19010
19469
  /**
19011
- * Frame that is requesting access to media.
19470
+ * Frame that is requesting access to media. May be `null` if accessed after the
19471
+ * frame has either navigated or been destroyed.
19012
19472
  */
19013
- frame: WebFrameMain;
19473
+ frame: (WebFrameMain) | (null);
19014
19474
  /**
19015
19475
  * Origin of the page making the request.
19016
19476
  */
@@ -19029,6 +19489,14 @@ declare namespace Electron {
19029
19489
  userGesture: boolean;
19030
19490
  }
19031
19491
 
19492
+ interface DisplayMediaRequestHandlerOpts {
19493
+ /**
19494
+ * true if the available native system picker should be used. Default is `false`.
19495
+ * _macOS_ _Experimental_
19496
+ */
19497
+ useSystemPicker: boolean;
19498
+ }
19499
+
19032
19500
  interface DownloadURLOptions {
19033
19501
  /**
19034
19502
  * HTTP request headers.
@@ -19055,17 +19523,6 @@ declare namespace Electron {
19055
19523
  uploadThroughput?: number;
19056
19524
  }
19057
19525
 
19058
- interface EntryAtIndex {
19059
- /**
19060
- * The URL of the navigation entry at the given index.
19061
- */
19062
- url: string;
19063
- /**
19064
- * The page title of the navigation entry at the given index.
19065
- */
19066
- title: string;
19067
- }
19068
-
19069
19526
  interface FeedURLOptions {
19070
19527
  url: string;
19071
19528
  /**
@@ -19166,6 +19623,13 @@ declare namespace Electron {
19166
19623
  * @platform darwin
19167
19624
  */
19168
19625
  allowLoadingUnsignedLibraries?: boolean;
19626
+ /**
19627
+ * With this flag, all HTTP 401 and 407 network requests created via the net module
19628
+ * will allow responding to them via the `app#login` event in the main process
19629
+ * instead of the default `login` event on the `ClientRequest` object. Default is
19630
+ * `false`.
19631
+ */
19632
+ respondToAuthRequestsFromMainProcess?: boolean;
19169
19633
  }
19170
19634
 
19171
19635
  interface FoundInPageEvent extends DOMEvent {
@@ -19173,19 +19637,25 @@ declare namespace Electron {
19173
19637
  }
19174
19638
 
19175
19639
  interface FrameCreatedDetails {
19176
- frame: WebFrameMain;
19640
+ /**
19641
+ * The created frame. May be `null` if accessed after the frame has either
19642
+ * navigated or been destroyed.
19643
+ */
19644
+ frame: (WebFrameMain) | (null);
19177
19645
  }
19178
19646
 
19179
19647
  interface FromPartitionOptions {
19180
19648
  /**
19181
- * Whether to enable cache.
19649
+ * Whether to enable cache. Default is `true` unless the `--disable-http-cache`
19650
+ * switch is used.
19182
19651
  */
19183
19652
  cache: boolean;
19184
19653
  }
19185
19654
 
19186
19655
  interface FromPathOptions {
19187
19656
  /**
19188
- * Whether to enable cache.
19657
+ * Whether to enable cache. Default is `true` unless the `--disable-http-cache`
19658
+ * switch is used.
19189
19659
  */
19190
19660
  cache: boolean;
19191
19661
  }
@@ -19250,12 +19720,20 @@ declare namespace Electron {
19250
19720
 
19251
19721
  interface HidDeviceAddedDetails {
19252
19722
  device: HIDDevice;
19253
- frame: WebFrameMain;
19723
+ /**
19724
+ * The frame initiating this event. May be `null` if accessed after the frame has
19725
+ * either navigated or been destroyed.
19726
+ */
19727
+ frame: (WebFrameMain) | (null);
19254
19728
  }
19255
19729
 
19256
19730
  interface HidDeviceRemovedDetails {
19257
19731
  device: HIDDevice;
19258
- frame: WebFrameMain;
19732
+ /**
19733
+ * The frame initiating this event. May be `null` if accessed after the frame has
19734
+ * either navigated or been destroyed.
19735
+ */
19736
+ frame: (WebFrameMain) | (null);
19259
19737
  }
19260
19738
 
19261
19739
  interface HidDeviceRevokedDetails {
@@ -19449,6 +19927,10 @@ declare namespace Electron {
19449
19927
  baseURLForDataURL?: string;
19450
19928
  }
19451
19929
 
19930
+ interface LoginAuthenticationResponseDetails {
19931
+ url: string;
19932
+ }
19933
+
19452
19934
  interface LoginItemSettings {
19453
19935
  /**
19454
19936
  * `true` if the app is set to open at login.
@@ -19850,7 +20332,8 @@ declare namespace Electron {
19850
20332
  */
19851
20333
  silent?: boolean;
19852
20334
  /**
19853
- * An icon to use in the notification.
20335
+ * An icon to use in the notification. If a string is passed, it must be a valid
20336
+ * path to a local icon file.
19854
20337
  */
19855
20338
  icon?: (string) | (NativeImage);
19856
20339
  /**
@@ -19906,13 +20389,27 @@ declare namespace Electron {
19906
20389
  toastXml?: string;
19907
20390
  }
19908
20391
 
20392
+ interface Offscreen {
20393
+ /**
20394
+ * Whether to use GPU shared texture for accelerated paint event. Defaults to
20395
+ * `false`. See the offscreen rendering tutorial for more details.
20396
+ *
20397
+ * @experimental
20398
+ */
20399
+ useSharedTexture?: boolean;
20400
+ }
20401
+
19909
20402
  interface OnBeforeRedirectListenerDetails {
19910
20403
  id: number;
19911
20404
  url: string;
19912
20405
  method: string;
19913
20406
  webContentsId?: number;
19914
20407
  webContents?: WebContents;
19915
- frame?: WebFrameMain;
20408
+ /**
20409
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20410
+ * or been destroyed.
20411
+ */
20412
+ frame?: (WebFrameMain) | (null);
19916
20413
  /**
19917
20414
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
19918
20415
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -19937,7 +20434,11 @@ declare namespace Electron {
19937
20434
  method: string;
19938
20435
  webContentsId?: number;
19939
20436
  webContents?: WebContents;
19940
- frame?: WebFrameMain;
20437
+ /**
20438
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20439
+ * or been destroyed.
20440
+ */
20441
+ frame?: (WebFrameMain) | (null);
19941
20442
  /**
19942
20443
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
19943
20444
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -19954,7 +20455,11 @@ declare namespace Electron {
19954
20455
  method: string;
19955
20456
  webContentsId?: number;
19956
20457
  webContents?: WebContents;
19957
- frame?: WebFrameMain;
20458
+ /**
20459
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20460
+ * or been destroyed.
20461
+ */
20462
+ frame?: (WebFrameMain) | (null);
19958
20463
  /**
19959
20464
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
19960
20465
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -19972,7 +20477,11 @@ declare namespace Electron {
19972
20477
  method: string;
19973
20478
  webContentsId?: number;
19974
20479
  webContents?: WebContents;
19975
- frame?: WebFrameMain;
20480
+ /**
20481
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20482
+ * or been destroyed.
20483
+ */
20484
+ frame?: (WebFrameMain) | (null);
19976
20485
  /**
19977
20486
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
19978
20487
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -19993,7 +20502,11 @@ declare namespace Electron {
19993
20502
  method: string;
19994
20503
  webContentsId?: number;
19995
20504
  webContents?: WebContents;
19996
- frame?: WebFrameMain;
20505
+ /**
20506
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20507
+ * or been destroyed.
20508
+ */
20509
+ frame?: (WebFrameMain) | (null);
19997
20510
  /**
19998
20511
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
19999
20512
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -20014,7 +20527,11 @@ declare namespace Electron {
20014
20527
  method: string;
20015
20528
  webContentsId?: number;
20016
20529
  webContents?: WebContents;
20017
- frame?: WebFrameMain;
20530
+ /**
20531
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20532
+ * or been destroyed.
20533
+ */
20534
+ frame?: (WebFrameMain) | (null);
20018
20535
  /**
20019
20536
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
20020
20537
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -20033,7 +20550,11 @@ declare namespace Electron {
20033
20550
  method: string;
20034
20551
  webContentsId?: number;
20035
20552
  webContents?: WebContents;
20036
- frame?: WebFrameMain;
20553
+ /**
20554
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20555
+ * or been destroyed.
20556
+ */
20557
+ frame?: (WebFrameMain) | (null);
20037
20558
  /**
20038
20559
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
20039
20560
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -20056,7 +20577,11 @@ declare namespace Electron {
20056
20577
  method: string;
20057
20578
  webContentsId?: number;
20058
20579
  webContents?: WebContents;
20059
- frame?: WebFrameMain;
20580
+ /**
20581
+ * Requesting frame. May be `null` if accessed after the frame has either navigated
20582
+ * or been destroyed.
20583
+ */
20584
+ frame?: (WebFrameMain) | (null);
20060
20585
  /**
20061
20586
  * Can be `mainFrame`, `subFrame`, `stylesheet`, `script`, `image`, `font`,
20062
20587
  * `object`, `xhr`, `ping`, `cspReport`, `media`, `webSocket` or `other`.
@@ -20292,7 +20817,7 @@ declare namespace Electron {
20292
20817
  /**
20293
20818
  * Default is the focused window.
20294
20819
  */
20295
- window?: BrowserWindow;
20820
+ window?: BaseWindow;
20296
20821
  /**
20297
20822
  * Default is the current mouse cursor position. Must be declared if `y` is
20298
20823
  * declared.
@@ -20326,6 +20851,14 @@ declare namespace Electron {
20326
20851
  callback?: () => void;
20327
20852
  }
20328
20853
 
20854
+ interface PowerMonitorThermalStateChangeEventParams {
20855
+ /**
20856
+ * The system's new thermal state. Can be `unknown`, `nominal`, `fair`, `serious`,
20857
+ * `critical`.
20858
+ */
20859
+ state: ('unknown' | 'nominal' | 'fair' | 'serious' | 'critical');
20860
+ }
20861
+
20329
20862
  interface PreconnectOptions {
20330
20863
  /**
20331
20864
  * URL for preconnect. Only the origin is relevant for opening the socket.
@@ -20575,6 +21108,19 @@ declare namespace Electron {
20575
21108
  pin?: (string) | (null);
20576
21109
  }
20577
21110
 
21111
+ interface RestoreOptions {
21112
+ /**
21113
+ * Result of a prior `getAllEntries()` call
21114
+ */
21115
+ entries: NavigationEntry[];
21116
+ /**
21117
+ * Index of the stack that should be loaded. If you set it to `0`, the webContents
21118
+ * will load the first (oldest) entry. If you leave it undefined, Electron will
21119
+ * automatically load the last (newest) entry.
21120
+ */
21121
+ index?: number;
21122
+ }
21123
+
20578
21124
  interface Result {
20579
21125
  requestId: number;
20580
21126
  /**
@@ -20701,17 +21247,29 @@ declare namespace Electron {
20701
21247
 
20702
21248
  interface SelectHidDeviceDetails {
20703
21249
  deviceList: HIDDevice[];
20704
- frame: WebFrameMain;
21250
+ /**
21251
+ * The frame initiating this event. May be `null` if accessed after the frame has
21252
+ * either navigated or been destroyed.
21253
+ */
21254
+ frame: (WebFrameMain) | (null);
20705
21255
  }
20706
21256
 
20707
21257
  interface SelectUsbDeviceDetails {
20708
21258
  deviceList: USBDevice[];
20709
- frame: WebFrameMain;
21259
+ /**
21260
+ * The frame initiating this event. May be `null` if accessed after the frame has
21261
+ * either navigated or been destroyed.
21262
+ */
21263
+ frame: (WebFrameMain) | (null);
20710
21264
  }
20711
21265
 
20712
21266
  interface SerialPortRevokedDetails {
20713
21267
  port: SerialPort;
20714
- frame: WebFrameMain;
21268
+ /**
21269
+ * The frame initiating this event. May be `null` if accessed after the frame has
21270
+ * either navigated or been destroyed.
21271
+ */
21272
+ frame: (WebFrameMain) | (null);
20715
21273
  /**
20716
21274
  * The origin that the device has been revoked from.
20717
21275
  */
@@ -20777,6 +21335,21 @@ declare namespace Electron {
20777
21335
  name?: string;
20778
21336
  }
20779
21337
 
21338
+ interface SharedDictionaryInfoOptions {
21339
+ /**
21340
+ * The origin of the frame where the request originates. It’s specific to the
21341
+ * individual frame making the request and is defined by its scheme, host, and
21342
+ * port. In practice, will look like a URL.
21343
+ */
21344
+ frameOrigin: string;
21345
+ /**
21346
+ * The site of the top-level browsing context (the main frame or tab that contains
21347
+ * the request). It’s less granular than `frameOrigin` and focuses on the broader
21348
+ * "site" scope. In practice, will look like a URL.
21349
+ */
21350
+ topFrameSite: string;
21351
+ }
21352
+
20780
21353
  interface SourcesOptions {
20781
21354
  /**
20782
21355
  * An array of strings that lists the types of desktop sources to be captured,
@@ -20853,6 +21426,58 @@ declare namespace Electron {
20853
21426
  swapFree: number;
20854
21427
  }
20855
21428
 
21429
+ interface TextureInfo {
21430
+ /**
21431
+ * The widget type of the texture. Can be `popup` or `frame`.
21432
+ */
21433
+ widgetType: ('popup' | 'frame');
21434
+ /**
21435
+ * The pixel format of the texture. Can be `rgba` or `bgra`.
21436
+ */
21437
+ pixelFormat: ('rgba' | 'bgra');
21438
+ /**
21439
+ * The full dimensions of the video frame.
21440
+ */
21441
+ codedSize: Size;
21442
+ /**
21443
+ * A subsection of [0, 0, codedSize.width(), codedSize.height()]. In OSR case, it
21444
+ * is expected to have the full section area.
21445
+ */
21446
+ visibleRect: Rectangle;
21447
+ /**
21448
+ * The region of the video frame that capturer would like to populate. In OSR case,
21449
+ * it is the same with `dirtyRect` that needs to be painted.
21450
+ */
21451
+ contentRect: Rectangle;
21452
+ /**
21453
+ * The time in microseconds since the capture start.
21454
+ */
21455
+ timestamp: number;
21456
+ /**
21457
+ * Extra metadata. See comments in src\media\base\video_frame_metadata.h for
21458
+ * accurate details.
21459
+ */
21460
+ metadata: Metadata;
21461
+ /**
21462
+ * The handle to the shared texture.
21463
+ *
21464
+ * @platform win32,darwin
21465
+ */
21466
+ sharedTextureHandle: Buffer;
21467
+ /**
21468
+ * Each plane's info of the shared texture.
21469
+ *
21470
+ * @platform linux
21471
+ */
21472
+ planes: Planes[];
21473
+ /**
21474
+ * The modifier is retrieved from GBM library and passed to EGL driver.
21475
+ *
21476
+ * @platform linux
21477
+ */
21478
+ modifier: string;
21479
+ }
21480
+
20856
21481
  interface TitleBarOverlay {
20857
21482
  /**
20858
21483
  * The CSS color of the Window Controls Overlay when enabled. Default is the system
@@ -21203,16 +21828,17 @@ declare namespace Electron {
21203
21828
  */
21204
21829
  isMainFrame: boolean;
21205
21830
  /**
21206
- * The frame to be navigated.
21831
+ * The frame to be navigated. May be `null` if accessed after the frame has either
21832
+ * navigated or been destroyed.
21207
21833
  */
21208
- frame: WebFrameMain;
21834
+ frame: (WebFrameMain) | (null);
21209
21835
  /**
21210
21836
  * The frame which initiated the navigation, which can be a parent frame (e.g. via
21211
21837
  * `window.open` with a frame's name), or null if the navigation was not initiated
21212
21838
  * by a frame. This can also be null if the initiating frame was deleted before the
21213
21839
  * event was emitted.
21214
21840
  */
21215
- initiator?: WebFrameMain;
21841
+ initiator?: (WebFrameMain) | (null);
21216
21842
  }
21217
21843
 
21218
21844
  interface WebContentsDidStartNavigationEventParams {
@@ -21231,16 +21857,27 @@ declare namespace Electron {
21231
21857
  */
21232
21858
  isMainFrame: boolean;
21233
21859
  /**
21234
- * The frame to be navigated.
21860
+ * The frame to be navigated. May be `null` if accessed after the frame has either
21861
+ * navigated or been destroyed.
21235
21862
  */
21236
- frame: WebFrameMain;
21863
+ frame: (WebFrameMain) | (null);
21237
21864
  /**
21238
21865
  * The frame which initiated the navigation, which can be a parent frame (e.g. via
21239
21866
  * `window.open` with a frame's name), or null if the navigation was not initiated
21240
21867
  * by a frame. This can also be null if the initiating frame was deleted before the
21241
21868
  * event was emitted.
21242
21869
  */
21243
- initiator?: WebFrameMain;
21870
+ initiator?: (WebFrameMain) | (null);
21871
+ }
21872
+
21873
+ interface WebContentsPaintEventParams {
21874
+ /**
21875
+ * The GPU shared texture of the frame, when
21876
+ * `webPreferences.offscreen.useSharedTexture` is `true`.
21877
+ *
21878
+ * @experimental
21879
+ */
21880
+ texture?: OffscreenSharedTexture;
21244
21881
  }
21245
21882
 
21246
21883
  interface WebContentsPrintOptions {
@@ -21337,16 +21974,17 @@ declare namespace Electron {
21337
21974
  */
21338
21975
  isMainFrame: boolean;
21339
21976
  /**
21340
- * The frame to be navigated.
21977
+ * The frame to be navigated. May be `null` if accessed after the frame has either
21978
+ * navigated or been destroyed.
21341
21979
  */
21342
- frame: WebFrameMain;
21980
+ frame: (WebFrameMain) | (null);
21343
21981
  /**
21344
21982
  * The frame which initiated the navigation, which can be a parent frame (e.g. via
21345
21983
  * `window.open` with a frame's name), or null if the navigation was not initiated
21346
21984
  * by a frame. This can also be null if the initiating frame was deleted before the
21347
21985
  * event was emitted.
21348
21986
  */
21349
- initiator?: WebFrameMain;
21987
+ initiator?: (WebFrameMain) | (null);
21350
21988
  }
21351
21989
 
21352
21990
  interface WebContentsWillNavigateEventParams {
@@ -21365,16 +22003,17 @@ declare namespace Electron {
21365
22003
  */
21366
22004
  isMainFrame: boolean;
21367
22005
  /**
21368
- * The frame to be navigated.
22006
+ * The frame to be navigated. May be `null` if accessed after the frame has either
22007
+ * navigated or been destroyed.
21369
22008
  */
21370
- frame: WebFrameMain;
22009
+ frame: (WebFrameMain) | (null);
21371
22010
  /**
21372
22011
  * The frame which initiated the navigation, which can be a parent frame (e.g. via
21373
22012
  * `window.open` with a frame's name), or null if the navigation was not initiated
21374
22013
  * by a frame. This can also be null if the initiating frame was deleted before the
21375
22014
  * event was emitted.
21376
22015
  */
21377
- initiator?: WebFrameMain;
22016
+ initiator?: (WebFrameMain) | (null);
21378
22017
  }
21379
22018
 
21380
22019
  interface WebContentsWillRedirectEventParams {
@@ -21393,16 +22032,17 @@ declare namespace Electron {
21393
22032
  */
21394
22033
  isMainFrame: boolean;
21395
22034
  /**
21396
- * The frame to be navigated.
22035
+ * The frame to be navigated. May be `null` if accessed after the frame has either
22036
+ * navigated or been destroyed.
21397
22037
  */
21398
- frame: WebFrameMain;
22038
+ frame: (WebFrameMain) | (null);
21399
22039
  /**
21400
22040
  * The frame which initiated the navigation, which can be a parent frame (e.g. via
21401
22041
  * `window.open` with a frame's name), or null if the navigation was not initiated
21402
22042
  * by a frame. This can also be null if the initiating frame was deleted before the
21403
22043
  * event was emitted.
21404
22044
  */
21405
- initiator?: WebFrameMain;
22045
+ initiator?: (WebFrameMain) | (null);
21406
22046
  }
21407
22047
 
21408
22048
  interface WebRTCUDPPortRange {
@@ -21669,6 +22309,26 @@ declare namespace Electron {
21669
22309
  canLoop: boolean;
21670
22310
  }
21671
22311
 
22312
+ interface Metadata {
22313
+ /**
22314
+ * Updated area of frame, can be considered as the `dirty` area.
22315
+ */
22316
+ captureUpdateRect?: Rectangle;
22317
+ /**
22318
+ * May reflect the frame's contents origin if region capture is used internally.
22319
+ */
22320
+ regionCaptureRect?: Rectangle;
22321
+ /**
22322
+ * Full size of the source frame.
22323
+ */
22324
+ sourceSize?: Rectangle;
22325
+ /**
22326
+ * The increasing count of captured frame. May contain gaps if frames are dropped
22327
+ * between two consecutively received frames.
22328
+ */
22329
+ frameCount?: number;
22330
+ }
22331
+
21672
22332
  interface PageRanges {
21673
22333
  /**
21674
22334
  * Index of the first page to print (0-based).
@@ -21798,6 +22458,27 @@ declare namespace Electron {
21798
22458
  editFlags: EditFlags;
21799
22459
  }
21800
22460
 
22461
+ interface Planes {
22462
+ /**
22463
+ * The strides and offsets in bytes to be used when accessing the buffers via a
22464
+ * memory mapping. One per plane per entry.
22465
+ */
22466
+ stride: number;
22467
+ /**
22468
+ * The strides and offsets in bytes to be used when accessing the buffers via a
22469
+ * memory mapping. One per plane per entry.
22470
+ */
22471
+ offset: number;
22472
+ /**
22473
+ * Size in bytes of the plane. This is necessary to map the buffers.
22474
+ */
22475
+ size: number;
22476
+ /**
22477
+ * File descriptor for the underlying memory object (usually dmabuf).
22478
+ */
22479
+ fd: number;
22480
+ }
22481
+
21801
22482
  interface Video {
21802
22483
  /**
21803
22484
  * The id of the stream being granted. This will usually come from a
@@ -21841,7 +22522,9 @@ declare namespace Electron {
21841
22522
  type CertificateTrustDialogOptions = Electron.CertificateTrustDialogOptions;
21842
22523
  type ClearCodeCachesOptions = Electron.ClearCodeCachesOptions;
21843
22524
  type ClearDataOptions = Electron.ClearDataOptions;
22525
+ type ClearSharedDictionaryCacheForIsolationKeyOptions = Electron.ClearSharedDictionaryCacheForIsolationKeyOptions;
21844
22526
  type ClearStorageDataOptions = Electron.ClearStorageDataOptions;
22527
+ type ClientCertRequestParams = Electron.ClientCertRequestParams;
21845
22528
  type ClientRequestConstructorOptions = Electron.ClientRequestConstructorOptions;
21846
22529
  type CloseOpts = Electron.CloseOpts;
21847
22530
  type Config = Electron.Config;
@@ -21873,9 +22556,9 @@ declare namespace Electron {
21873
22556
  type DidStartNavigationEvent = Electron.DidStartNavigationEvent;
21874
22557
  type DisplayBalloonOptions = Electron.DisplayBalloonOptions;
21875
22558
  type DisplayMediaRequestHandlerHandlerRequest = Electron.DisplayMediaRequestHandlerHandlerRequest;
22559
+ type DisplayMediaRequestHandlerOpts = Electron.DisplayMediaRequestHandlerOpts;
21876
22560
  type DownloadURLOptions = Electron.DownloadURLOptions;
21877
22561
  type EnableNetworkEmulationOptions = Electron.EnableNetworkEmulationOptions;
21878
- type EntryAtIndex = Electron.EntryAtIndex;
21879
22562
  type FeedURLOptions = Electron.FeedURLOptions;
21880
22563
  type FileIconOptions = Electron.FileIconOptions;
21881
22564
  type FileSystemAccessRestrictedDetails = Electron.FileSystemAccessRestrictedDetails;
@@ -21904,6 +22587,7 @@ declare namespace Electron {
21904
22587
  type LoadExtensionOptions = Electron.LoadExtensionOptions;
21905
22588
  type LoadFileOptions = Electron.LoadFileOptions;
21906
22589
  type LoadURLOptions = Electron.LoadURLOptions;
22590
+ type LoginAuthenticationResponseDetails = Electron.LoginAuthenticationResponseDetails;
21907
22591
  type LoginItemSettings = Electron.LoginItemSettings;
21908
22592
  type LoginItemSettingsOptions = Electron.LoginItemSettingsOptions;
21909
22593
  type MenuItemConstructorOptions = Electron.MenuItemConstructorOptions;
@@ -21914,6 +22598,7 @@ declare namespace Electron {
21914
22598
  type MessageEvent = Electron.MessageEvent;
21915
22599
  type MoveToApplicationsFolderOptions = Electron.MoveToApplicationsFolderOptions;
21916
22600
  type NotificationConstructorOptions = Electron.NotificationConstructorOptions;
22601
+ type Offscreen = Electron.Offscreen;
21917
22602
  type OnBeforeRedirectListenerDetails = Electron.OnBeforeRedirectListenerDetails;
21918
22603
  type OnBeforeRequestListenerDetails = Electron.OnBeforeRequestListenerDetails;
21919
22604
  type OnBeforeSendHeadersListenerDetails = Electron.OnBeforeSendHeadersListenerDetails;
@@ -21936,6 +22621,7 @@ declare namespace Electron {
21936
22621
  type PermissionCheckHandlerHandlerDetails = Electron.PermissionCheckHandlerHandlerDetails;
21937
22622
  type PluginCrashedEvent = Electron.PluginCrashedEvent;
21938
22623
  type PopupOptions = Electron.PopupOptions;
22624
+ type PowerMonitorThermalStateChangeEventParams = Electron.PowerMonitorThermalStateChangeEventParams;
21939
22625
  type PreconnectOptions = Electron.PreconnectOptions;
21940
22626
  type PrintToPDFOptions = Electron.PrintToPDFOptions;
21941
22627
  type Privileges = Electron.Privileges;
@@ -21951,6 +22637,7 @@ declare namespace Electron {
21951
22637
  type ResolveHostOptions = Electron.ResolveHostOptions;
21952
22638
  type ResourceUsage = Electron.ResourceUsage;
21953
22639
  type Response = Electron.Response;
22640
+ type RestoreOptions = Electron.RestoreOptions;
21954
22641
  type Result = Electron.Result;
21955
22642
  type SaveDialogOptions = Electron.SaveDialogOptions;
21956
22643
  type SaveDialogReturnValue = Electron.SaveDialogReturnValue;
@@ -21959,10 +22646,12 @@ declare namespace Electron {
21959
22646
  type SelectUsbDeviceDetails = Electron.SelectUsbDeviceDetails;
21960
22647
  type SerialPortRevokedDetails = Electron.SerialPortRevokedDetails;
21961
22648
  type Settings = Electron.Settings;
22649
+ type SharedDictionaryInfoOptions = Electron.SharedDictionaryInfoOptions;
21962
22650
  type SourcesOptions = Electron.SourcesOptions;
21963
22651
  type StartLoggingOptions = Electron.StartLoggingOptions;
21964
22652
  type Streams = Electron.Streams;
21965
22653
  type SystemMemoryInfo = Electron.SystemMemoryInfo;
22654
+ type TextureInfo = Electron.TextureInfo;
21966
22655
  type TitleBarOverlay = Electron.TitleBarOverlay;
21967
22656
  type TitleBarOverlayOptions = Electron.TitleBarOverlayOptions;
21968
22657
  type TitleOptions = Electron.TitleOptions;
@@ -21989,6 +22678,7 @@ declare namespace Electron {
21989
22678
  type WebContentsAudioStateChangedEventParams = Electron.WebContentsAudioStateChangedEventParams;
21990
22679
  type WebContentsDidRedirectNavigationEventParams = Electron.WebContentsDidRedirectNavigationEventParams;
21991
22680
  type WebContentsDidStartNavigationEventParams = Electron.WebContentsDidStartNavigationEventParams;
22681
+ type WebContentsPaintEventParams = Electron.WebContentsPaintEventParams;
21992
22682
  type WebContentsPrintOptions = Electron.WebContentsPrintOptions;
21993
22683
  type WebContentsViewConstructorOptions = Electron.WebContentsViewConstructorOptions;
21994
22684
  type WebContentsWillFrameNavigateEventParams = Electron.WebContentsWillFrameNavigateEventParams;
@@ -22005,8 +22695,10 @@ declare namespace Electron {
22005
22695
  type LaunchItems = Electron.LaunchItems;
22006
22696
  type Margins = Electron.Margins;
22007
22697
  type MediaFlags = Electron.MediaFlags;
22698
+ type Metadata = Electron.Metadata;
22008
22699
  type PageRanges = Electron.PageRanges;
22009
22700
  type Params = Electron.Params;
22701
+ type Planes = Electron.Planes;
22010
22702
  type Video = Electron.Video;
22011
22703
  type BaseWindowConstructorOptions = Electron.BaseWindowConstructorOptions;
22012
22704
  type BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
@@ -22040,8 +22732,10 @@ declare namespace Electron {
22040
22732
  type MimeTypedBuffer = Electron.MimeTypedBuffer;
22041
22733
  type MouseInputEvent = Electron.MouseInputEvent;
22042
22734
  type MouseWheelInputEvent = Electron.MouseWheelInputEvent;
22735
+ type NavigationEntry = Electron.NavigationEntry;
22043
22736
  type NotificationAction = Electron.NotificationAction;
22044
22737
  type NotificationResponse = Electron.NotificationResponse;
22738
+ type OffscreenSharedTexture = Electron.OffscreenSharedTexture;
22045
22739
  type OpenExternalPermissionRequest = Electron.OpenExternalPermissionRequest;
22046
22740
  type PaymentDiscount = Electron.PaymentDiscount;
22047
22741
  type PermissionRequest = Electron.PermissionRequest;
@@ -22066,6 +22760,8 @@ declare namespace Electron {
22066
22760
  type SegmentedControlSegment = Electron.SegmentedControlSegment;
22067
22761
  type SerialPort = Electron.SerialPort;
22068
22762
  type ServiceWorkerInfo = Electron.ServiceWorkerInfo;
22763
+ type SharedDictionaryInfo = Electron.SharedDictionaryInfo;
22764
+ type SharedDictionaryUsageInfo = Electron.SharedDictionaryUsageInfo;
22069
22765
  type SharedWorkerInfo = Electron.SharedWorkerInfo;
22070
22766
  type SharingItem = Electron.SharingItem;
22071
22767
  type ShortcutDetails = Electron.ShortcutDetails;
@@ -22183,7 +22879,9 @@ declare namespace Electron {
22183
22879
  type CertificateTrustDialogOptions = Electron.CertificateTrustDialogOptions;
22184
22880
  type ClearCodeCachesOptions = Electron.ClearCodeCachesOptions;
22185
22881
  type ClearDataOptions = Electron.ClearDataOptions;
22882
+ type ClearSharedDictionaryCacheForIsolationKeyOptions = Electron.ClearSharedDictionaryCacheForIsolationKeyOptions;
22186
22883
  type ClearStorageDataOptions = Electron.ClearStorageDataOptions;
22884
+ type ClientCertRequestParams = Electron.ClientCertRequestParams;
22187
22885
  type ClientRequestConstructorOptions = Electron.ClientRequestConstructorOptions;
22188
22886
  type CloseOpts = Electron.CloseOpts;
22189
22887
  type Config = Electron.Config;
@@ -22215,9 +22913,9 @@ declare namespace Electron {
22215
22913
  type DidStartNavigationEvent = Electron.DidStartNavigationEvent;
22216
22914
  type DisplayBalloonOptions = Electron.DisplayBalloonOptions;
22217
22915
  type DisplayMediaRequestHandlerHandlerRequest = Electron.DisplayMediaRequestHandlerHandlerRequest;
22916
+ type DisplayMediaRequestHandlerOpts = Electron.DisplayMediaRequestHandlerOpts;
22218
22917
  type DownloadURLOptions = Electron.DownloadURLOptions;
22219
22918
  type EnableNetworkEmulationOptions = Electron.EnableNetworkEmulationOptions;
22220
- type EntryAtIndex = Electron.EntryAtIndex;
22221
22919
  type FeedURLOptions = Electron.FeedURLOptions;
22222
22920
  type FileIconOptions = Electron.FileIconOptions;
22223
22921
  type FileSystemAccessRestrictedDetails = Electron.FileSystemAccessRestrictedDetails;
@@ -22246,6 +22944,7 @@ declare namespace Electron {
22246
22944
  type LoadExtensionOptions = Electron.LoadExtensionOptions;
22247
22945
  type LoadFileOptions = Electron.LoadFileOptions;
22248
22946
  type LoadURLOptions = Electron.LoadURLOptions;
22947
+ type LoginAuthenticationResponseDetails = Electron.LoginAuthenticationResponseDetails;
22249
22948
  type LoginItemSettings = Electron.LoginItemSettings;
22250
22949
  type LoginItemSettingsOptions = Electron.LoginItemSettingsOptions;
22251
22950
  type MenuItemConstructorOptions = Electron.MenuItemConstructorOptions;
@@ -22256,6 +22955,7 @@ declare namespace Electron {
22256
22955
  type MessageEvent = Electron.MessageEvent;
22257
22956
  type MoveToApplicationsFolderOptions = Electron.MoveToApplicationsFolderOptions;
22258
22957
  type NotificationConstructorOptions = Electron.NotificationConstructorOptions;
22958
+ type Offscreen = Electron.Offscreen;
22259
22959
  type OnBeforeRedirectListenerDetails = Electron.OnBeforeRedirectListenerDetails;
22260
22960
  type OnBeforeRequestListenerDetails = Electron.OnBeforeRequestListenerDetails;
22261
22961
  type OnBeforeSendHeadersListenerDetails = Electron.OnBeforeSendHeadersListenerDetails;
@@ -22278,6 +22978,7 @@ declare namespace Electron {
22278
22978
  type PermissionCheckHandlerHandlerDetails = Electron.PermissionCheckHandlerHandlerDetails;
22279
22979
  type PluginCrashedEvent = Electron.PluginCrashedEvent;
22280
22980
  type PopupOptions = Electron.PopupOptions;
22981
+ type PowerMonitorThermalStateChangeEventParams = Electron.PowerMonitorThermalStateChangeEventParams;
22281
22982
  type PreconnectOptions = Electron.PreconnectOptions;
22282
22983
  type PrintToPDFOptions = Electron.PrintToPDFOptions;
22283
22984
  type Privileges = Electron.Privileges;
@@ -22293,6 +22994,7 @@ declare namespace Electron {
22293
22994
  type ResolveHostOptions = Electron.ResolveHostOptions;
22294
22995
  type ResourceUsage = Electron.ResourceUsage;
22295
22996
  type Response = Electron.Response;
22997
+ type RestoreOptions = Electron.RestoreOptions;
22296
22998
  type Result = Electron.Result;
22297
22999
  type SaveDialogOptions = Electron.SaveDialogOptions;
22298
23000
  type SaveDialogReturnValue = Electron.SaveDialogReturnValue;
@@ -22301,10 +23003,12 @@ declare namespace Electron {
22301
23003
  type SelectUsbDeviceDetails = Electron.SelectUsbDeviceDetails;
22302
23004
  type SerialPortRevokedDetails = Electron.SerialPortRevokedDetails;
22303
23005
  type Settings = Electron.Settings;
23006
+ type SharedDictionaryInfoOptions = Electron.SharedDictionaryInfoOptions;
22304
23007
  type SourcesOptions = Electron.SourcesOptions;
22305
23008
  type StartLoggingOptions = Electron.StartLoggingOptions;
22306
23009
  type Streams = Electron.Streams;
22307
23010
  type SystemMemoryInfo = Electron.SystemMemoryInfo;
23011
+ type TextureInfo = Electron.TextureInfo;
22308
23012
  type TitleBarOverlay = Electron.TitleBarOverlay;
22309
23013
  type TitleBarOverlayOptions = Electron.TitleBarOverlayOptions;
22310
23014
  type TitleOptions = Electron.TitleOptions;
@@ -22331,6 +23035,7 @@ declare namespace Electron {
22331
23035
  type WebContentsAudioStateChangedEventParams = Electron.WebContentsAudioStateChangedEventParams;
22332
23036
  type WebContentsDidRedirectNavigationEventParams = Electron.WebContentsDidRedirectNavigationEventParams;
22333
23037
  type WebContentsDidStartNavigationEventParams = Electron.WebContentsDidStartNavigationEventParams;
23038
+ type WebContentsPaintEventParams = Electron.WebContentsPaintEventParams;
22334
23039
  type WebContentsPrintOptions = Electron.WebContentsPrintOptions;
22335
23040
  type WebContentsViewConstructorOptions = Electron.WebContentsViewConstructorOptions;
22336
23041
  type WebContentsWillFrameNavigateEventParams = Electron.WebContentsWillFrameNavigateEventParams;
@@ -22347,8 +23052,10 @@ declare namespace Electron {
22347
23052
  type LaunchItems = Electron.LaunchItems;
22348
23053
  type Margins = Electron.Margins;
22349
23054
  type MediaFlags = Electron.MediaFlags;
23055
+ type Metadata = Electron.Metadata;
22350
23056
  type PageRanges = Electron.PageRanges;
22351
23057
  type Params = Electron.Params;
23058
+ type Planes = Electron.Planes;
22352
23059
  type Video = Electron.Video;
22353
23060
  type BaseWindowConstructorOptions = Electron.BaseWindowConstructorOptions;
22354
23061
  type BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
@@ -22382,8 +23089,10 @@ declare namespace Electron {
22382
23089
  type MimeTypedBuffer = Electron.MimeTypedBuffer;
22383
23090
  type MouseInputEvent = Electron.MouseInputEvent;
22384
23091
  type MouseWheelInputEvent = Electron.MouseWheelInputEvent;
23092
+ type NavigationEntry = Electron.NavigationEntry;
22385
23093
  type NotificationAction = Electron.NotificationAction;
22386
23094
  type NotificationResponse = Electron.NotificationResponse;
23095
+ type OffscreenSharedTexture = Electron.OffscreenSharedTexture;
22387
23096
  type OpenExternalPermissionRequest = Electron.OpenExternalPermissionRequest;
22388
23097
  type PaymentDiscount = Electron.PaymentDiscount;
22389
23098
  type PermissionRequest = Electron.PermissionRequest;
@@ -22408,6 +23117,8 @@ declare namespace Electron {
22408
23117
  type SegmentedControlSegment = Electron.SegmentedControlSegment;
22409
23118
  type SerialPort = Electron.SerialPort;
22410
23119
  type ServiceWorkerInfo = Electron.ServiceWorkerInfo;
23120
+ type SharedDictionaryInfo = Electron.SharedDictionaryInfo;
23121
+ type SharedDictionaryUsageInfo = Electron.SharedDictionaryUsageInfo;
22411
23122
  type SharedWorkerInfo = Electron.SharedWorkerInfo;
22412
23123
  type SharingItem = Electron.SharingItem;
22413
23124
  type ShortcutDetails = Electron.ShortcutDetails;
@@ -22457,7 +23168,9 @@ declare namespace Electron {
22457
23168
  type CertificateTrustDialogOptions = Electron.CertificateTrustDialogOptions;
22458
23169
  type ClearCodeCachesOptions = Electron.ClearCodeCachesOptions;
22459
23170
  type ClearDataOptions = Electron.ClearDataOptions;
23171
+ type ClearSharedDictionaryCacheForIsolationKeyOptions = Electron.ClearSharedDictionaryCacheForIsolationKeyOptions;
22460
23172
  type ClearStorageDataOptions = Electron.ClearStorageDataOptions;
23173
+ type ClientCertRequestParams = Electron.ClientCertRequestParams;
22461
23174
  type ClientRequestConstructorOptions = Electron.ClientRequestConstructorOptions;
22462
23175
  type CloseOpts = Electron.CloseOpts;
22463
23176
  type Config = Electron.Config;
@@ -22489,9 +23202,9 @@ declare namespace Electron {
22489
23202
  type DidStartNavigationEvent = Electron.DidStartNavigationEvent;
22490
23203
  type DisplayBalloonOptions = Electron.DisplayBalloonOptions;
22491
23204
  type DisplayMediaRequestHandlerHandlerRequest = Electron.DisplayMediaRequestHandlerHandlerRequest;
23205
+ type DisplayMediaRequestHandlerOpts = Electron.DisplayMediaRequestHandlerOpts;
22492
23206
  type DownloadURLOptions = Electron.DownloadURLOptions;
22493
23207
  type EnableNetworkEmulationOptions = Electron.EnableNetworkEmulationOptions;
22494
- type EntryAtIndex = Electron.EntryAtIndex;
22495
23208
  type FeedURLOptions = Electron.FeedURLOptions;
22496
23209
  type FileIconOptions = Electron.FileIconOptions;
22497
23210
  type FileSystemAccessRestrictedDetails = Electron.FileSystemAccessRestrictedDetails;
@@ -22520,6 +23233,7 @@ declare namespace Electron {
22520
23233
  type LoadExtensionOptions = Electron.LoadExtensionOptions;
22521
23234
  type LoadFileOptions = Electron.LoadFileOptions;
22522
23235
  type LoadURLOptions = Electron.LoadURLOptions;
23236
+ type LoginAuthenticationResponseDetails = Electron.LoginAuthenticationResponseDetails;
22523
23237
  type LoginItemSettings = Electron.LoginItemSettings;
22524
23238
  type LoginItemSettingsOptions = Electron.LoginItemSettingsOptions;
22525
23239
  type MenuItemConstructorOptions = Electron.MenuItemConstructorOptions;
@@ -22530,6 +23244,7 @@ declare namespace Electron {
22530
23244
  type MessageEvent = Electron.MessageEvent;
22531
23245
  type MoveToApplicationsFolderOptions = Electron.MoveToApplicationsFolderOptions;
22532
23246
  type NotificationConstructorOptions = Electron.NotificationConstructorOptions;
23247
+ type Offscreen = Electron.Offscreen;
22533
23248
  type OnBeforeRedirectListenerDetails = Electron.OnBeforeRedirectListenerDetails;
22534
23249
  type OnBeforeRequestListenerDetails = Electron.OnBeforeRequestListenerDetails;
22535
23250
  type OnBeforeSendHeadersListenerDetails = Electron.OnBeforeSendHeadersListenerDetails;
@@ -22552,6 +23267,7 @@ declare namespace Electron {
22552
23267
  type PermissionCheckHandlerHandlerDetails = Electron.PermissionCheckHandlerHandlerDetails;
22553
23268
  type PluginCrashedEvent = Electron.PluginCrashedEvent;
22554
23269
  type PopupOptions = Electron.PopupOptions;
23270
+ type PowerMonitorThermalStateChangeEventParams = Electron.PowerMonitorThermalStateChangeEventParams;
22555
23271
  type PreconnectOptions = Electron.PreconnectOptions;
22556
23272
  type PrintToPDFOptions = Electron.PrintToPDFOptions;
22557
23273
  type Privileges = Electron.Privileges;
@@ -22567,6 +23283,7 @@ declare namespace Electron {
22567
23283
  type ResolveHostOptions = Electron.ResolveHostOptions;
22568
23284
  type ResourceUsage = Electron.ResourceUsage;
22569
23285
  type Response = Electron.Response;
23286
+ type RestoreOptions = Electron.RestoreOptions;
22570
23287
  type Result = Electron.Result;
22571
23288
  type SaveDialogOptions = Electron.SaveDialogOptions;
22572
23289
  type SaveDialogReturnValue = Electron.SaveDialogReturnValue;
@@ -22575,10 +23292,12 @@ declare namespace Electron {
22575
23292
  type SelectUsbDeviceDetails = Electron.SelectUsbDeviceDetails;
22576
23293
  type SerialPortRevokedDetails = Electron.SerialPortRevokedDetails;
22577
23294
  type Settings = Electron.Settings;
23295
+ type SharedDictionaryInfoOptions = Electron.SharedDictionaryInfoOptions;
22578
23296
  type SourcesOptions = Electron.SourcesOptions;
22579
23297
  type StartLoggingOptions = Electron.StartLoggingOptions;
22580
23298
  type Streams = Electron.Streams;
22581
23299
  type SystemMemoryInfo = Electron.SystemMemoryInfo;
23300
+ type TextureInfo = Electron.TextureInfo;
22582
23301
  type TitleBarOverlay = Electron.TitleBarOverlay;
22583
23302
  type TitleBarOverlayOptions = Electron.TitleBarOverlayOptions;
22584
23303
  type TitleOptions = Electron.TitleOptions;
@@ -22605,6 +23324,7 @@ declare namespace Electron {
22605
23324
  type WebContentsAudioStateChangedEventParams = Electron.WebContentsAudioStateChangedEventParams;
22606
23325
  type WebContentsDidRedirectNavigationEventParams = Electron.WebContentsDidRedirectNavigationEventParams;
22607
23326
  type WebContentsDidStartNavigationEventParams = Electron.WebContentsDidStartNavigationEventParams;
23327
+ type WebContentsPaintEventParams = Electron.WebContentsPaintEventParams;
22608
23328
  type WebContentsPrintOptions = Electron.WebContentsPrintOptions;
22609
23329
  type WebContentsViewConstructorOptions = Electron.WebContentsViewConstructorOptions;
22610
23330
  type WebContentsWillFrameNavigateEventParams = Electron.WebContentsWillFrameNavigateEventParams;
@@ -22621,8 +23341,10 @@ declare namespace Electron {
22621
23341
  type LaunchItems = Electron.LaunchItems;
22622
23342
  type Margins = Electron.Margins;
22623
23343
  type MediaFlags = Electron.MediaFlags;
23344
+ type Metadata = Electron.Metadata;
22624
23345
  type PageRanges = Electron.PageRanges;
22625
23346
  type Params = Electron.Params;
23347
+ type Planes = Electron.Planes;
22626
23348
  type Video = Electron.Video;
22627
23349
  type BaseWindowConstructorOptions = Electron.BaseWindowConstructorOptions;
22628
23350
  type BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
@@ -22656,8 +23378,10 @@ declare namespace Electron {
22656
23378
  type MimeTypedBuffer = Electron.MimeTypedBuffer;
22657
23379
  type MouseInputEvent = Electron.MouseInputEvent;
22658
23380
  type MouseWheelInputEvent = Electron.MouseWheelInputEvent;
23381
+ type NavigationEntry = Electron.NavigationEntry;
22659
23382
  type NotificationAction = Electron.NotificationAction;
22660
23383
  type NotificationResponse = Electron.NotificationResponse;
23384
+ type OffscreenSharedTexture = Electron.OffscreenSharedTexture;
22661
23385
  type OpenExternalPermissionRequest = Electron.OpenExternalPermissionRequest;
22662
23386
  type PaymentDiscount = Electron.PaymentDiscount;
22663
23387
  type PermissionRequest = Electron.PermissionRequest;
@@ -22682,6 +23406,8 @@ declare namespace Electron {
22682
23406
  type SegmentedControlSegment = Electron.SegmentedControlSegment;
22683
23407
  type SerialPort = Electron.SerialPort;
22684
23408
  type ServiceWorkerInfo = Electron.ServiceWorkerInfo;
23409
+ type SharedDictionaryInfo = Electron.SharedDictionaryInfo;
23410
+ type SharedDictionaryUsageInfo = Electron.SharedDictionaryUsageInfo;
22685
23411
  type SharedWorkerInfo = Electron.SharedWorkerInfo;
22686
23412
  type SharingItem = Electron.SharingItem;
22687
23413
  type ShortcutDetails = Electron.ShortcutDetails;
@@ -22728,7 +23454,9 @@ declare namespace Electron {
22728
23454
  type CertificateTrustDialogOptions = Electron.CertificateTrustDialogOptions;
22729
23455
  type ClearCodeCachesOptions = Electron.ClearCodeCachesOptions;
22730
23456
  type ClearDataOptions = Electron.ClearDataOptions;
23457
+ type ClearSharedDictionaryCacheForIsolationKeyOptions = Electron.ClearSharedDictionaryCacheForIsolationKeyOptions;
22731
23458
  type ClearStorageDataOptions = Electron.ClearStorageDataOptions;
23459
+ type ClientCertRequestParams = Electron.ClientCertRequestParams;
22732
23460
  type ClientRequestConstructorOptions = Electron.ClientRequestConstructorOptions;
22733
23461
  type CloseOpts = Electron.CloseOpts;
22734
23462
  type Config = Electron.Config;
@@ -22760,9 +23488,9 @@ declare namespace Electron {
22760
23488
  type DidStartNavigationEvent = Electron.DidStartNavigationEvent;
22761
23489
  type DisplayBalloonOptions = Electron.DisplayBalloonOptions;
22762
23490
  type DisplayMediaRequestHandlerHandlerRequest = Electron.DisplayMediaRequestHandlerHandlerRequest;
23491
+ type DisplayMediaRequestHandlerOpts = Electron.DisplayMediaRequestHandlerOpts;
22763
23492
  type DownloadURLOptions = Electron.DownloadURLOptions;
22764
23493
  type EnableNetworkEmulationOptions = Electron.EnableNetworkEmulationOptions;
22765
- type EntryAtIndex = Electron.EntryAtIndex;
22766
23494
  type FeedURLOptions = Electron.FeedURLOptions;
22767
23495
  type FileIconOptions = Electron.FileIconOptions;
22768
23496
  type FileSystemAccessRestrictedDetails = Electron.FileSystemAccessRestrictedDetails;
@@ -22791,6 +23519,7 @@ declare namespace Electron {
22791
23519
  type LoadExtensionOptions = Electron.LoadExtensionOptions;
22792
23520
  type LoadFileOptions = Electron.LoadFileOptions;
22793
23521
  type LoadURLOptions = Electron.LoadURLOptions;
23522
+ type LoginAuthenticationResponseDetails = Electron.LoginAuthenticationResponseDetails;
22794
23523
  type LoginItemSettings = Electron.LoginItemSettings;
22795
23524
  type LoginItemSettingsOptions = Electron.LoginItemSettingsOptions;
22796
23525
  type MenuItemConstructorOptions = Electron.MenuItemConstructorOptions;
@@ -22801,6 +23530,7 @@ declare namespace Electron {
22801
23530
  type MessageEvent = Electron.MessageEvent;
22802
23531
  type MoveToApplicationsFolderOptions = Electron.MoveToApplicationsFolderOptions;
22803
23532
  type NotificationConstructorOptions = Electron.NotificationConstructorOptions;
23533
+ type Offscreen = Electron.Offscreen;
22804
23534
  type OnBeforeRedirectListenerDetails = Electron.OnBeforeRedirectListenerDetails;
22805
23535
  type OnBeforeRequestListenerDetails = Electron.OnBeforeRequestListenerDetails;
22806
23536
  type OnBeforeSendHeadersListenerDetails = Electron.OnBeforeSendHeadersListenerDetails;
@@ -22823,6 +23553,7 @@ declare namespace Electron {
22823
23553
  type PermissionCheckHandlerHandlerDetails = Electron.PermissionCheckHandlerHandlerDetails;
22824
23554
  type PluginCrashedEvent = Electron.PluginCrashedEvent;
22825
23555
  type PopupOptions = Electron.PopupOptions;
23556
+ type PowerMonitorThermalStateChangeEventParams = Electron.PowerMonitorThermalStateChangeEventParams;
22826
23557
  type PreconnectOptions = Electron.PreconnectOptions;
22827
23558
  type PrintToPDFOptions = Electron.PrintToPDFOptions;
22828
23559
  type Privileges = Electron.Privileges;
@@ -22838,6 +23569,7 @@ declare namespace Electron {
22838
23569
  type ResolveHostOptions = Electron.ResolveHostOptions;
22839
23570
  type ResourceUsage = Electron.ResourceUsage;
22840
23571
  type Response = Electron.Response;
23572
+ type RestoreOptions = Electron.RestoreOptions;
22841
23573
  type Result = Electron.Result;
22842
23574
  type SaveDialogOptions = Electron.SaveDialogOptions;
22843
23575
  type SaveDialogReturnValue = Electron.SaveDialogReturnValue;
@@ -22846,10 +23578,12 @@ declare namespace Electron {
22846
23578
  type SelectUsbDeviceDetails = Electron.SelectUsbDeviceDetails;
22847
23579
  type SerialPortRevokedDetails = Electron.SerialPortRevokedDetails;
22848
23580
  type Settings = Electron.Settings;
23581
+ type SharedDictionaryInfoOptions = Electron.SharedDictionaryInfoOptions;
22849
23582
  type SourcesOptions = Electron.SourcesOptions;
22850
23583
  type StartLoggingOptions = Electron.StartLoggingOptions;
22851
23584
  type Streams = Electron.Streams;
22852
23585
  type SystemMemoryInfo = Electron.SystemMemoryInfo;
23586
+ type TextureInfo = Electron.TextureInfo;
22853
23587
  type TitleBarOverlay = Electron.TitleBarOverlay;
22854
23588
  type TitleBarOverlayOptions = Electron.TitleBarOverlayOptions;
22855
23589
  type TitleOptions = Electron.TitleOptions;
@@ -22876,6 +23610,7 @@ declare namespace Electron {
22876
23610
  type WebContentsAudioStateChangedEventParams = Electron.WebContentsAudioStateChangedEventParams;
22877
23611
  type WebContentsDidRedirectNavigationEventParams = Electron.WebContentsDidRedirectNavigationEventParams;
22878
23612
  type WebContentsDidStartNavigationEventParams = Electron.WebContentsDidStartNavigationEventParams;
23613
+ type WebContentsPaintEventParams = Electron.WebContentsPaintEventParams;
22879
23614
  type WebContentsPrintOptions = Electron.WebContentsPrintOptions;
22880
23615
  type WebContentsViewConstructorOptions = Electron.WebContentsViewConstructorOptions;
22881
23616
  type WebContentsWillFrameNavigateEventParams = Electron.WebContentsWillFrameNavigateEventParams;
@@ -22892,8 +23627,10 @@ declare namespace Electron {
22892
23627
  type LaunchItems = Electron.LaunchItems;
22893
23628
  type Margins = Electron.Margins;
22894
23629
  type MediaFlags = Electron.MediaFlags;
23630
+ type Metadata = Electron.Metadata;
22895
23631
  type PageRanges = Electron.PageRanges;
22896
23632
  type Params = Electron.Params;
23633
+ type Planes = Electron.Planes;
22897
23634
  type Video = Electron.Video;
22898
23635
  type BaseWindowConstructorOptions = Electron.BaseWindowConstructorOptions;
22899
23636
  type BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
@@ -22927,8 +23664,10 @@ declare namespace Electron {
22927
23664
  type MimeTypedBuffer = Electron.MimeTypedBuffer;
22928
23665
  type MouseInputEvent = Electron.MouseInputEvent;
22929
23666
  type MouseWheelInputEvent = Electron.MouseWheelInputEvent;
23667
+ type NavigationEntry = Electron.NavigationEntry;
22930
23668
  type NotificationAction = Electron.NotificationAction;
22931
23669
  type NotificationResponse = Electron.NotificationResponse;
23670
+ type OffscreenSharedTexture = Electron.OffscreenSharedTexture;
22932
23671
  type OpenExternalPermissionRequest = Electron.OpenExternalPermissionRequest;
22933
23672
  type PaymentDiscount = Electron.PaymentDiscount;
22934
23673
  type PermissionRequest = Electron.PermissionRequest;
@@ -22953,6 +23692,8 @@ declare namespace Electron {
22953
23692
  type SegmentedControlSegment = Electron.SegmentedControlSegment;
22954
23693
  type SerialPort = Electron.SerialPort;
22955
23694
  type ServiceWorkerInfo = Electron.ServiceWorkerInfo;
23695
+ type SharedDictionaryInfo = Electron.SharedDictionaryInfo;
23696
+ type SharedDictionaryUsageInfo = Electron.SharedDictionaryUsageInfo;
22956
23697
  type SharedWorkerInfo = Electron.SharedWorkerInfo;
22957
23698
  type SharingItem = Electron.SharingItem;
22958
23699
  type ShortcutDetails = Electron.ShortcutDetails;
@@ -23087,7 +23828,9 @@ declare namespace Electron {
23087
23828
  type CertificateTrustDialogOptions = Electron.CertificateTrustDialogOptions;
23088
23829
  type ClearCodeCachesOptions = Electron.ClearCodeCachesOptions;
23089
23830
  type ClearDataOptions = Electron.ClearDataOptions;
23831
+ type ClearSharedDictionaryCacheForIsolationKeyOptions = Electron.ClearSharedDictionaryCacheForIsolationKeyOptions;
23090
23832
  type ClearStorageDataOptions = Electron.ClearStorageDataOptions;
23833
+ type ClientCertRequestParams = Electron.ClientCertRequestParams;
23091
23834
  type ClientRequestConstructorOptions = Electron.ClientRequestConstructorOptions;
23092
23835
  type CloseOpts = Electron.CloseOpts;
23093
23836
  type Config = Electron.Config;
@@ -23119,9 +23862,9 @@ declare namespace Electron {
23119
23862
  type DidStartNavigationEvent = Electron.DidStartNavigationEvent;
23120
23863
  type DisplayBalloonOptions = Electron.DisplayBalloonOptions;
23121
23864
  type DisplayMediaRequestHandlerHandlerRequest = Electron.DisplayMediaRequestHandlerHandlerRequest;
23865
+ type DisplayMediaRequestHandlerOpts = Electron.DisplayMediaRequestHandlerOpts;
23122
23866
  type DownloadURLOptions = Electron.DownloadURLOptions;
23123
23867
  type EnableNetworkEmulationOptions = Electron.EnableNetworkEmulationOptions;
23124
- type EntryAtIndex = Electron.EntryAtIndex;
23125
23868
  type FeedURLOptions = Electron.FeedURLOptions;
23126
23869
  type FileIconOptions = Electron.FileIconOptions;
23127
23870
  type FileSystemAccessRestrictedDetails = Electron.FileSystemAccessRestrictedDetails;
@@ -23150,6 +23893,7 @@ declare namespace Electron {
23150
23893
  type LoadExtensionOptions = Electron.LoadExtensionOptions;
23151
23894
  type LoadFileOptions = Electron.LoadFileOptions;
23152
23895
  type LoadURLOptions = Electron.LoadURLOptions;
23896
+ type LoginAuthenticationResponseDetails = Electron.LoginAuthenticationResponseDetails;
23153
23897
  type LoginItemSettings = Electron.LoginItemSettings;
23154
23898
  type LoginItemSettingsOptions = Electron.LoginItemSettingsOptions;
23155
23899
  type MenuItemConstructorOptions = Electron.MenuItemConstructorOptions;
@@ -23160,6 +23904,7 @@ declare namespace Electron {
23160
23904
  type MessageEvent = Electron.MessageEvent;
23161
23905
  type MoveToApplicationsFolderOptions = Electron.MoveToApplicationsFolderOptions;
23162
23906
  type NotificationConstructorOptions = Electron.NotificationConstructorOptions;
23907
+ type Offscreen = Electron.Offscreen;
23163
23908
  type OnBeforeRedirectListenerDetails = Electron.OnBeforeRedirectListenerDetails;
23164
23909
  type OnBeforeRequestListenerDetails = Electron.OnBeforeRequestListenerDetails;
23165
23910
  type OnBeforeSendHeadersListenerDetails = Electron.OnBeforeSendHeadersListenerDetails;
@@ -23182,6 +23927,7 @@ declare namespace Electron {
23182
23927
  type PermissionCheckHandlerHandlerDetails = Electron.PermissionCheckHandlerHandlerDetails;
23183
23928
  type PluginCrashedEvent = Electron.PluginCrashedEvent;
23184
23929
  type PopupOptions = Electron.PopupOptions;
23930
+ type PowerMonitorThermalStateChangeEventParams = Electron.PowerMonitorThermalStateChangeEventParams;
23185
23931
  type PreconnectOptions = Electron.PreconnectOptions;
23186
23932
  type PrintToPDFOptions = Electron.PrintToPDFOptions;
23187
23933
  type Privileges = Electron.Privileges;
@@ -23197,6 +23943,7 @@ declare namespace Electron {
23197
23943
  type ResolveHostOptions = Electron.ResolveHostOptions;
23198
23944
  type ResourceUsage = Electron.ResourceUsage;
23199
23945
  type Response = Electron.Response;
23946
+ type RestoreOptions = Electron.RestoreOptions;
23200
23947
  type Result = Electron.Result;
23201
23948
  type SaveDialogOptions = Electron.SaveDialogOptions;
23202
23949
  type SaveDialogReturnValue = Electron.SaveDialogReturnValue;
@@ -23205,10 +23952,12 @@ declare namespace Electron {
23205
23952
  type SelectUsbDeviceDetails = Electron.SelectUsbDeviceDetails;
23206
23953
  type SerialPortRevokedDetails = Electron.SerialPortRevokedDetails;
23207
23954
  type Settings = Electron.Settings;
23955
+ type SharedDictionaryInfoOptions = Electron.SharedDictionaryInfoOptions;
23208
23956
  type SourcesOptions = Electron.SourcesOptions;
23209
23957
  type StartLoggingOptions = Electron.StartLoggingOptions;
23210
23958
  type Streams = Electron.Streams;
23211
23959
  type SystemMemoryInfo = Electron.SystemMemoryInfo;
23960
+ type TextureInfo = Electron.TextureInfo;
23212
23961
  type TitleBarOverlay = Electron.TitleBarOverlay;
23213
23962
  type TitleBarOverlayOptions = Electron.TitleBarOverlayOptions;
23214
23963
  type TitleOptions = Electron.TitleOptions;
@@ -23235,6 +23984,7 @@ declare namespace Electron {
23235
23984
  type WebContentsAudioStateChangedEventParams = Electron.WebContentsAudioStateChangedEventParams;
23236
23985
  type WebContentsDidRedirectNavigationEventParams = Electron.WebContentsDidRedirectNavigationEventParams;
23237
23986
  type WebContentsDidStartNavigationEventParams = Electron.WebContentsDidStartNavigationEventParams;
23987
+ type WebContentsPaintEventParams = Electron.WebContentsPaintEventParams;
23238
23988
  type WebContentsPrintOptions = Electron.WebContentsPrintOptions;
23239
23989
  type WebContentsViewConstructorOptions = Electron.WebContentsViewConstructorOptions;
23240
23990
  type WebContentsWillFrameNavigateEventParams = Electron.WebContentsWillFrameNavigateEventParams;
@@ -23251,8 +24001,10 @@ declare namespace Electron {
23251
24001
  type LaunchItems = Electron.LaunchItems;
23252
24002
  type Margins = Electron.Margins;
23253
24003
  type MediaFlags = Electron.MediaFlags;
24004
+ type Metadata = Electron.Metadata;
23254
24005
  type PageRanges = Electron.PageRanges;
23255
24006
  type Params = Electron.Params;
24007
+ type Planes = Electron.Planes;
23256
24008
  type Video = Electron.Video;
23257
24009
  type BaseWindowConstructorOptions = Electron.BaseWindowConstructorOptions;
23258
24010
  type BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
@@ -23286,8 +24038,10 @@ declare namespace Electron {
23286
24038
  type MimeTypedBuffer = Electron.MimeTypedBuffer;
23287
24039
  type MouseInputEvent = Electron.MouseInputEvent;
23288
24040
  type MouseWheelInputEvent = Electron.MouseWheelInputEvent;
24041
+ type NavigationEntry = Electron.NavigationEntry;
23289
24042
  type NotificationAction = Electron.NotificationAction;
23290
24043
  type NotificationResponse = Electron.NotificationResponse;
24044
+ type OffscreenSharedTexture = Electron.OffscreenSharedTexture;
23291
24045
  type OpenExternalPermissionRequest = Electron.OpenExternalPermissionRequest;
23292
24046
  type PaymentDiscount = Electron.PaymentDiscount;
23293
24047
  type PermissionRequest = Electron.PermissionRequest;
@@ -23312,6 +24066,8 @@ declare namespace Electron {
23312
24066
  type SegmentedControlSegment = Electron.SegmentedControlSegment;
23313
24067
  type SerialPort = Electron.SerialPort;
23314
24068
  type ServiceWorkerInfo = Electron.ServiceWorkerInfo;
24069
+ type SharedDictionaryInfo = Electron.SharedDictionaryInfo;
24070
+ type SharedDictionaryUsageInfo = Electron.SharedDictionaryUsageInfo;
23315
24071
  type SharedWorkerInfo = Electron.SharedWorkerInfo;
23316
24072
  type SharingItem = Electron.SharingItem;
23317
24073
  type ShortcutDetails = Electron.ShortcutDetails;