1- 'use strict' ;
2-
3- const electron = require ( 'electron' ) ;
4- const fs = require ( 'fs' ) ;
1+ import * as electron from 'electron' ;
2+ import * as fs from 'fs' ;
3+ import { ipcMainInternal } from './ipc-main-internal' ;
4+ import * as ipcMainUtils from './ipc-main-internal-utils' ;
5+ import * as guestViewManager from './guest-view-manager' ;
6+ import * as typeUtils from '../common/type-utils' ;
7+ import { IpcMainInvokeEvent } from 'electron/main' ;
58
69const eventBinding = process . _linkedBinding ( 'electron_browser_event' ) ;
710const clipboard = process . _linkedBinding ( 'electron_common_clipboard' ) ;
811
9- const { ipcMainInternal } = require ( '@electron/internal/browser/ipc-main-internal' ) ;
10- const ipcMainUtils = require ( '@electron/internal/browser/ipc-main-internal-utils' ) ;
11- const guestViewManager = require ( '@electron/internal/browser/guest-view-manager' ) ;
12- const typeUtils = require ( '@electron/internal/common/type-utils' ) ;
13-
14- const emitCustomEvent = function ( contents , eventName , ...args ) {
12+ const emitCustomEvent = function ( contents : electron . WebContents , eventName : string , ...args : any [ ] ) {
1513 const event = eventBinding . createWithSender ( contents ) ;
1614
1715 electron . app . emit ( eventName , event , contents , ...args ) ;
@@ -20,22 +18,22 @@ const emitCustomEvent = function (contents, eventName, ...args) {
2018 return event ;
2119} ;
2220
23- const logStack = function ( contents , code , stack ) {
21+ const logStack = function ( contents : electron . WebContents , code : string , stack : string ) {
2422 if ( stack ) {
2523 console . warn ( `WebContents (${ contents . id } ): ${ code } ` , stack ) ;
2624 }
2725} ;
2826
2927// Implements window.close()
30- ipcMainInternal . on ( 'ELECTRON_BROWSER_WINDOW_CLOSE' , function ( event ) {
28+ ipcMainInternal . on ( 'ELECTRON_BROWSER_WINDOW_CLOSE' , function ( event : ElectronInternal . IpcMainInternalEvent ) {
3129 const window = event . sender . getOwnerBrowserWindow ( ) ;
3230 if ( window ) {
3331 window . close ( ) ;
3432 }
3533 event . returnValue = null ;
3634} ) ;
3735
38- ipcMainInternal . handle ( 'ELECTRON_BROWSER_GET_LAST_WEB_PREFERENCES' , function ( event ) {
36+ ipcMainInternal . handle ( 'ELECTRON_BROWSER_GET_LAST_WEB_PREFERENCES' , function ( event : IpcMainInvokeEvent ) {
3937 return event . sender . getLastWebPreferences ( ) ;
4038} ) ;
4139
@@ -51,18 +49,18 @@ const allowedClipboardMethods = (() => {
5149 }
5250} ) ( ) ;
5351
54- ipcMainUtils . handleSync ( 'ELECTRON_BROWSER_CLIPBOARD_SYNC' , function ( event , method , ...args ) {
52+ ipcMainUtils . handleSync ( 'ELECTRON_BROWSER_CLIPBOARD_SYNC' , function ( event : IpcMainInvokeEvent , method : string , ...args : any [ ] ) {
5553 if ( ! allowedClipboardMethods . has ( method ) ) {
5654 throw new Error ( `Invalid method: ${ method } ` ) ;
5755 }
5856
59- return typeUtils . serialize ( electron . clipboard [ method ] ( ...typeUtils . deserialize ( args ) ) ) ;
57+ return typeUtils . serialize ( ( electron . clipboard as any ) [ method ] ( ...typeUtils . deserialize ( args ) ) ) ;
6058} ) ;
6159
6260if ( BUILDFLAG ( ENABLE_DESKTOP_CAPTURER ) ) {
6361 const desktopCapturer = require ( '@electron/internal/browser/desktop-capturer' ) ;
6462
65- ipcMainInternal . handle ( 'ELECTRON_BROWSER_DESKTOP_CAPTURER_GET_SOURCES' , async function ( event , options , stack ) {
63+ ipcMainInternal . handle ( 'ELECTRON_BROWSER_DESKTOP_CAPTURER_GET_SOURCES' , async function ( event : IpcMainInvokeEvent , options : Electron . SourcesOptions , stack : string ) {
6664 logStack ( event . sender , 'desktopCapturer.getSources()' , stack ) ;
6765 const customEvent = emitCustomEvent ( event . sender , 'desktop-capturer-get-sources' ) ;
6866
@@ -74,7 +72,7 @@ if (BUILDFLAG(ENABLE_DESKTOP_CAPTURER)) {
7472 return typeUtils . serialize ( await desktopCapturer . getSourcesImpl ( event , options ) ) ;
7573 } ) ;
7674
77- ipcMainInternal . handle ( 'ELECTRON_BROWSER_DESKTOP_CAPTURER_GET_MEDIA_SOURCE_ID_FOR_WEB_CONTENTS' , function ( event , webContentsId , stack ) {
75+ ipcMainInternal . handle ( 'ELECTRON_BROWSER_DESKTOP_CAPTURER_GET_MEDIA_SOURCE_ID_FOR_WEB_CONTENTS' , function ( event : IpcMainInvokeEvent , webContentsId : number ) {
7876 return desktopCapturer . getMediaSourceIdForWebContents ( event , webContentsId ) ;
7977 } ) ;
8078}
@@ -83,7 +81,7 @@ const isRemoteModuleEnabled = BUILDFLAG(ENABLE_REMOTE_MODULE)
8381 ? require ( '@electron/internal/browser/remote/server' ) . isRemoteModuleEnabled
8482 : ( ) => false ;
8583
86- const getPreloadScript = async function ( preloadPath ) {
84+ const getPreloadScript = async function ( preloadPath : string ) {
8785 let preloadSrc = null ;
8886 let preloadError = null ;
8987 try {
@@ -94,7 +92,7 @@ const getPreloadScript = async function (preloadPath) {
9492 return { preloadPath, preloadSrc, preloadError } ;
9593} ;
9694
97- ipcMainUtils . handleSync ( 'ELECTRON_BROWSER_SANDBOX_LOAD' , async function ( event ) {
95+ ipcMainUtils . handleSync ( 'ELECTRON_BROWSER_SANDBOX_LOAD' , async function ( event : IpcMainInvokeEvent ) {
9896 const preloadPaths = event . sender . _getPreloadPaths ( ) ;
9997 const webPreferences = event . sender . getLastWebPreferences ( ) || { } ;
10098
@@ -115,7 +113,7 @@ ipcMainUtils.handleSync('ELECTRON_BROWSER_SANDBOX_LOAD', async function (event)
115113 } ;
116114} ) ;
117115
118- ipcMainInternal . on ( 'ELECTRON_BROWSER_PRELOAD_ERROR' , function ( event , preloadPath , error ) {
116+ ipcMainInternal . on ( 'ELECTRON_BROWSER_PRELOAD_ERROR' , function ( event : ElectronInternal . IpcMainInternalEvent , preloadPath : string , error : Error ) {
119117 event . sender . emit ( 'preload-error' , event , preloadPath , error ) ;
120118} ) ;
121119
@@ -131,7 +129,7 @@ ipcMainUtils.handleSync('ELECTRON_CRASH_REPORTER_GET_UPLOAD_TO_SERVER', () => {
131129 return electron . crashReporter . getUploadToServer ( ) ;
132130} ) ;
133131
134- ipcMainUtils . handleSync ( 'ELECTRON_CRASH_REPORTER_SET_UPLOAD_TO_SERVER' , ( event , uploadToServer ) => {
132+ ipcMainUtils . handleSync ( 'ELECTRON_CRASH_REPORTER_SET_UPLOAD_TO_SERVER' , ( event : IpcMainInvokeEvent , uploadToServer : boolean ) => {
135133 return electron . crashReporter . setUploadToServer ( uploadToServer ) ;
136134} ) ;
137135
0 commit comments