1 declare namespace Electron {
2 interface RemoteMainInterface {
6 // interface MenuItemConstructorOptions {
7 // click?: (menuItem: Menu.PluginMenuItem, browserWindow: BrowserWindow | undefined, event: KeyboardEvent) => void;
10 // interface MenuItem {
11 // click: (item: MenuItemConstructorOptions, window: BrowserWindow, event: Event) => void;
14 interface App extends NodeJS.EventEmitter {
15 on(event: "newFile", listener: (sender: Electron.WebContents) => void): this;
16 on(event: "newWindow", listener: (sender: Electron.WebContents) => void): this;
17 on(event: "reloadTab", listener: (tabId: number) => void): this;
18 on(event: "closeTab", listener: (windowId: number, tabId: number) => void): this;
19 on(event: "closeCurrentTab", listener: (windowId: number) => void): this;
20 on(event: "reopenClosedTab", listener: (windowId: number) => void): this;
21 on(event: "closeCurrentWindow", listener: (windowId: number) => void): this;
22 on(event: "toggleWindowFullscreen", listener: (windowId: number) => void): this;
23 on(event: "closeCommunityTab", listener: () => void): this;
24 on(event: "closeAllTab", listener: () => void): this;
25 on(event: "chromeGpu", listener: (windowId: number) => void): this;
26 on(event: "openFileUrlClipboard", listener: (sender: Electron.WebContents) => void): this;
27 on(event: "openFileBrowser", listener: (sender: Electron.WebContents) => void): this;
29 event: "restoreClosedTab",
30 listener: (windowId: number, title: string, uri: string) => void,
32 on(event: "handle-page-command", listener: (item: any, window: BrowserWindow) => void): this;
33 on(event: "log", listener: (data: any) => void): this;
34 on(event: "signOut", listener: () => void): this;
35 on(event: "themes-add-repository", listener: () => void): this;
36 on(event: "themes-remove-repository", listener: () => void): this;
37 on(event: "toggleSettingsDeveloperTools", listener: () => void): this;
38 on(event: "toggleCurrentWindowDevTools", listener: () => void): this;
39 on(event: "toggleCurrentTabDevTools", listener: (windowId: number) => void): this;
41 event: "handlePluginMenuAction",
42 listener: (windowId: number, pluginMenuAction: Menu.MenuAction) => void,
44 on(event: "handlePluginManageAction", listener: () => void): this;
45 on(event: "handleWidgetManageAction", listener: () => void): this;
46 on(event: "handleUrl", listener: (url: string) => void): this;
47 on(event: "openUrlInNewTab", listener: (url: string) => void): this;
48 on(event: "openUrlFromCommunity", listener: (url: string) => void): this;
49 on(event: "openSettingsView", listener: () => void): this;
50 on(event: "windowClose", listener: (windowId: number) => void): this;
51 on(event: "windowFocus", listener: (windowId: number) => void): this;
52 on(event: "syncThemesStart", listener: () => void): this;
53 on(event: "syncThemesEnd", listener: (themes: Themes.Theme[]) => void): this;
54 on(event: "loadCreatorTheme", listener: (themes: Themes.Theme) => void): this;
55 on(event: "loadCurrentTheme", listener: (themes: Themes.Theme) => void): this;
56 on(event: "loadCreatorThemes", listener: (themes: Themes.Theme[]) => void): this;
57 on(event: "requestBoundsForTabView", listener: (windowId: number) => void): this;
58 on(event: "relaunchApp", listener: () => void): this;
59 on(event: "quitApp", listener: () => void): this;
60 on(event: "reloadCurrentTheme", listener: () => void): this;
61 on(event: "focusLastWindow", listener: () => void): this;
63 event: "needUpdateMenu",
67 actionCheckedState?: { [key: string]: boolean },
71 event: "handleCallbackForTab",
72 listener: (tabId: number, callbackID: number, args: any) => void,
74 on(event: "enableColorSpaceSrgbWasChanged", listener: (enable: boolean) => void): this;
75 on(event: "chromiumFlagsChanged", listener: (enable: boolean) => void): this;
76 on(event: "disableThemesChanged", listener: (enable: boolean) => void): this;
78 emit(event: string, ...args: any[]): boolean;
79 emit(event: "newFile", sender: Electron.WebContents): boolean;
80 emit(event: "newWindow", sender: Electron.WebContents): boolean;
81 emit(event: "reloadTab", tabId: number): boolean;
82 emit(event: "closeCommunityTab"): boolean;
83 emit(event: "closeTab", windowId: number, tabId: number): boolean;
84 emit(event: "closeCurrentTab", windowId: number): boolean;
85 emit(event: "reopenClosedTab", windowId: number): boolean;
86 emit(event: "closeCurrentWindow", windowId: number): boolean;
87 emit(event: "toggleWindowFullscreen", windowId: number): boolean;
88 emit(event: "toggleCurrentWindowFullscreen", sender: Electron.WebContents): boolean;
89 emit(event: "closeAllTab"): boolean;
90 emit(event: "chromeGpu", windowId: number): boolean;
91 emit(event: "openFileUrlClipboard", sender: Electron.WebContents): boolean;
92 emit(event: "openFileBrowser", sender: Electron.WebContents): boolean;
93 emit(event: "restoreClosedTab", windowId: number, title: string, uri: string): boolean;
94 emit(event: "handle-page-command", item: any, window: BrowserWindow): boolean;
95 emit(event: "log", data: any): boolean;
96 emit(event: "signOut"): boolean;
97 emit(event: "themes-add-repository"): boolean;
98 emit(event: "themes-remove-repository"): boolean;
99 emit(event: "toggleSettingsDeveloperTools"): boolean;
100 emit(event: "toggleCurrentWindowDevTools"): boolean;
101 emit(event: "toggleCurrentTabDevTools", windowId: number): boolean;
103 event: "handlePluginMenuAction",
105 pluginMenuAction: Menu.MenuAction,
107 emit(event: "handlePluginManageAction"): boolean;
108 emit(event: "handleWidgetManageAction"): boolean;
109 emit(event: "handleUrl", url: string): boolean;
110 emit(event: "openUrlInNewTab", url: string): boolean;
111 emit(event: "openUrlFromCommunity", url: string): boolean;
112 emit(event: "openSettingsView"): boolean;
113 emit(event: "windowClose", windowId: number): void;
114 emit(event: "windowFocus", windowId: number): void;
115 emit(event: "syncThemesStart"): void;
116 emit(event: "syncThemesEnd", themes: Themes.Theme[]): void;
117 emit(event: "loadCreatorTheme", themes: Themes.Theme): void;
118 emit(event: "loadCurrentTheme", themes: Themes.Theme): void;
119 emit(event: "loadCreatorThemes", themes: Themes.Theme[]): void;
120 emit(event: "requestBoundsForTabView", windowId: number): void;
121 emit(event: "relaunchApp"): void;
122 emit(event: "quitApp"): void;
123 emit(event: "reloadCurrentTheme"): void;
124 emit(event: "focusLastWindow"): void;
126 event: "needUpdateMenu",
129 actionCheckedState?: { [key: string]: boolean },
131 emit(event: "handleCallbackForTab", tabId: number, callbackID: number, args: any): void;
132 emit(event: "enableColorSpaceSrgbWasChanged", enable: boolean): void;
133 emit(event: "chromiumFlagsChanged", enable: boolean): void;
134 emit(event: "disableThemesChanged", enable: boolean): void;
137 interface IpcMain extends NodeJS.EventEmitter {
138 on(channel: string, listener: (event: IpcMainInvokeEvent, args: any) => void): this;
139 on(channel: "setTitle", listener: (event: IpcMainInvokeEvent, title: string) => void): this;
141 channel: "openCommunity",
142 listener: (event: IpcMainInvokeEvent, args: WebApi.OpenCommunity) => void,
144 on(channel: "openFile", listener: (event: IpcMainInvokeEvent, url: string) => void): this;
145 on(channel: "closeAllTab", listener: (event: IpcMainInvokeEvent) => void): this;
146 on(channel: "setFocusToMainTab", listener: (event: IpcMainInvokeEvent) => void): this;
147 on(channel: "setFocusToCommunityTab", listener: (event: IpcMainInvokeEvent) => void): this;
148 on(channel: "setTabFocus", listener: (event: IpcMainInvokeEvent, id: number) => void): this;
149 on(channel: "closeTab", listener: (event: IpcMainInvokeEvent, id: number) => void): this;
151 channel: "closeSettingsView",
152 listener: (event: IpcMainInvokeEvent, settings: Types.SettingsInterface) => void,
155 channel: "themeCreatorExportTheme",
156 listener: (event: IpcMainInvokeEvent, theme: Themes.Theme) => void,
159 channel: "themeCreatorAddTheme",
160 listener: (event: IpcMainInvokeEvent, theme: Themes.Theme) => void,
163 channel: "themeCreatorRemoveTheme",
164 listener: (event: IpcMainInvokeEvent, themeId: string) => void,
166 on(channel: "enabled", listener: (event: IpcMainInvokeEvent, enabled: boolean) => void): this;
168 channel: "updateFigmaUiScale",
169 listener: (event: IpcMainInvokeEvent, scale: number) => void,
172 channel: "updatePanelScale",
173 listener: (event: IpcMainInvokeEvent, scale: number) => void,
176 channel: "startAppAuth",
177 listener: (event: IpcMainInvokeEvent, auth: { grantPath: string }) => void,
180 channel: "setInitialOptions",
181 listener: (event: IpcMainInvokeEvent, data: WebApi.SetInitOptions) => void,
184 channel: "finishAppAuth",
185 listener: (event: IpcMainInvokeEvent, auth: { redirectURL: string }) => void,
188 channel: "setAuthedUsers",
189 listener: (event: IpcMainInvokeEvent, userIds: string[]) => void,
191 on(channel: "setUser", listener: (event: IpcMainInvokeEvent, userId: string) => void): this;
193 channel: "setUsingMicrophone",
194 listener: (event: IpcMainInvokeEvent, isUsingMicrophone: boolean) => void,
197 channel: "setIsInVoiceCall",
198 listener: (event: IpcMainInvokeEvent, isInVoiceCall: boolean) => void,
201 channel: "setWorkspaceName",
202 listener: (event: IpcMainInvokeEvent, name: string) => void,
205 channel: "setFigjamEnabled",
206 listener: (event: IpcMainInvokeEvent, enabled: boolean) => void,
209 channel: "setFeatureFlags",
210 listener: (event: IpcMainInvokeEvent, data: { featureFlags: Types.FeatureFlags }) => void,
212 on(channel: "logDebug", listener: (event: IpcMainInvokeEvent, ...args: any[]) => void): this;
213 on(channel: "logInfo", listener: (event: IpcMainInvokeEvent, ...args: any[]) => void): this;
214 on(channel: "logError", listener: (event: IpcMainInvokeEvent, ...args: any[]) => void): this;
216 channel: "openDevTools",
218 event: IpcMainInvokeEvent,
219 mode: "right" | "bottom" | "undocked" | "detach",
223 channel: "removeLocalFileExtension",
224 listener: (event: IpcMainInvokeEvent, id: number) => void,
227 channel: "openExtensionDirectory",
228 listener: (event: IpcMainInvokeEvent, id: number) => void,
230 on(channel: "openMainMenu", listener: (event: IpcMainInvokeEvent) => void): this;
231 on(channel: "openMainTabMenu", listener: (event: IpcMainInvokeEvent) => void): this;
232 on(channel: "openCommunityTabMenu", listener: (event: IpcMainInvokeEvent) => void): this;
233 on(channel: "openTabMenu", listener: (event: IpcMainInvokeEvent, tabId: number) => void): this;
234 on(channel: "appExit", listener: (event: IpcMainInvokeEvent) => void): this;
235 on(channel: "newProject", listener: (event: IpcMainInvokeEvent) => void): this;
236 on(channel: "closeCommunityTab", listener: (event: IpcMainInvokeEvent) => void): this;
238 channel: "updateVisibleNewProjectBtn",
239 listener: (event: IpcMainInvokeEvent, visible: boolean) => void,
242 channel: "updateFullscreenMenuState",
243 listener: (event: IpcMainInvokeEvent, state: Menu.State) => void,
246 channel: "saveCreatorTheme",
247 listener: (event: IpcMainInvokeEvent, theme: Themes.Theme) => void,
249 on(channel: "syncThemes", listener: (event: IpcMainInvokeEvent) => void): this;
251 channel: "setClipboardData",
252 listener: (event: IpcMainInvokeEvent, data: WebApi.SetClipboardData) => void,
255 channel: "set-use-zenity",
256 listener: (event: IpcMainInvokeEvent, value: boolean) => void,
259 channel: "updateFigmaUiScale",
260 listener: (event: IpcMainInvokeEvent, theme: Themes.Theme) => void,
263 channel: "windowClose",
264 listener: (event: IpcMainInvokeEvent, tabs: Types.TabFront[]) => void,
266 on(channel: "changeTheme", listener: (event: IpcMainEvent, theme: Themes.Theme) => void): this;
267 on(channel: "toggleThemeCreatorPreviewMask", listener: (event: IpcMainEvent) => void): this;
269 channel: "getSettings",
270 listener: (event: IpcMainEvent, settings: Types.SettingsInterface) => void,
272 on(channel: "requestMicrophonePermission", listener: (event: IpcMainEvent) => void): this;
274 channel: "web-callback:registerManifestChangeObserver",
275 listener: (event: IpcMainEvent, callbackID: number, args?: any) => void,
278 channel: "web-callback:registerCodeChangeObserver",
279 listener: (event: IpcMainEvent, callbackID: number, args?: any) => void,
282 channel: "web-callback:registerUiChangeObserver",
283 listener: (event: IpcMainEvent, callbackID: number, args?: any) => void,
287 channel: "writeNewExtensionToDisk",
289 event: IpcMainInvokeEvent,
290 data: WebApi.WriteNewExtensionToDiskArgs,
291 ) => Promise<number> | number,
294 channel: "getAllLocalFileExtensionIds",
295 listener: (event: IpcMainInvokeEvent) => Promise<void> | any,
298 channel: "getLocalFileExtensionManifest",
300 event: IpcMainInvokeEvent,
302 ) => Promise<void> | Extensions.ExtensionWithManifest | Extensions.ExtensionWithError,
305 channel: "getLocalFileExtensionSource",
307 event: IpcMainInvokeEvent,
309 ) => Promise<void> | Extensions.ExtensionSource,
312 channel: "createMultipleNewLocalFileExtensions",
314 event: IpcMainInvokeEvent,
315 data: WebApi.CreateMultipleExtension,
316 ) => Promise<void> | any,
319 channel: "createFile",
320 listener: (event: IpcMainInvokeEvent, data: WebApi.CreateFile) => Promise<void> | any,
323 channel: "isDevToolsOpened",
324 listener: (event: IpcMainInvokeEvent) => Promise<void> | any,
327 channel: "themesIsDisabled",
328 listener: (event: IpcMainInvokeEvent) => Promise<void> | boolean,
331 channel: "writeFiles",
332 listener: (event: IpcMainInvokeEvent, data: WebApi.WriteFiles) => Promise<void> | void,
336 listener: (event: IpcMainInvokeEvent) => Promise<void> | Fonts.IFonts,
339 channel: "getFontFile",
340 listener: (event: IpcMainInvokeEvent, data: WebApi.GetFontFile) => Promise<void> | Buffer,
343 channel: "selectExportDirectory",
344 listener: (event: IpcMainInvokeEvent) => Promise<string | null>,
347 channel: "writeNewExtensionDirectoryToDisk",
349 event: IpcMainInvokeEvent,
350 data: WebApi.WriteNewExtensionDirectoryToDisk,
351 ) => Promise<string | null>,
354 channel: "getLocalManifestFileExtensionIdsToCachedMetadataMap",
355 listener: (event: IpcMainInvokeEvent) => Promise<string | null>,
359 interface IpcRenderer extends NodeJS.EventEmitter {
360 on(channel: "renderView", listener: (event: IpcRendererEvent, view: Types.View) => void): this;
362 channel: "updateVisibleNewProjectBtn",
363 listener: (event: IpcRendererEvent, visible: boolean) => void,
366 channel: "setPanelScale",
367 listener: (event: IpcRendererEvent, scale: number, height: number) => void,
369 on(channel: "updateUiScale", listener: (event: IpcRendererEvent, scale: number) => void): this;
370 on(channel: "closeAllTabs", listener: (event: IpcRendererEvent) => void): this;
373 listener: (event: IpcRendererEvent, data: { id: number; title: string }) => void,
375 on(channel: "didTabAdd", listener: (event: IpcRendererEvent, data: Types.Tab) => void): this;
377 channel: "themesLoaded",
378 listener: (event: IpcRendererEvent, themes: Themes.Theme[]) => void,
380 on(channel: "toggleThemeCreatorPreviewMask", listener: (event: IpcRendererEvent) => void): this;
381 on(channel: "focusTab", listener: (event: IpcRendererEvent, tabId: number) => void): this;
383 channel: "newFileBtnVisible",
384 listener: (event: IpcRendererEvent, visible: boolean) => void,
386 on(channel: "tabWasClosed", listener: (event: IpcRendererEvent, tabId: number) => void): this;
388 channel: "setUsingMicrophone",
389 listener: (event: IpcRendererEvent, data: { id: number; isUsingMicrophone: boolean }) => void,
392 channel: "setIsInVoiceCall",
393 listener: (event: IpcRendererEvent, data: { id: number; isInVoiceCall: boolean }) => void,
396 channel: "loadCreatorTheme",
397 listener: (event: IpcRendererEvent, theme: Themes.Theme) => void,
400 channel: "loadCurrentTheme",
401 listener: (event: IpcRendererEvent, theme: Themes.Theme) => void,
404 channel: "loadCreatorThemes",
405 listener: (event: IpcRendererEvent, themes: Themes.Theme[]) => void,
407 on(channel: "syncThemesStart", listener: (event: IpcRendererEvent) => void): this;
408 on(channel: "syncThemesEnd", listener: (event: IpcRendererEvent) => void): this;
409 on(channel: "windowDidMaximized", listener: (event: IpcRendererEvent) => void): this;
410 on(channel: "windowDidRestored", listener: (event: IpcRendererEvent) => void): this;
412 channel: "isMainMenuOpen",
413 listener: (event: IpcRendererEvent, isOpen: boolean) => void,
415 on(channel: "communityTabWasClose", listener: (event: IpcRendererEvent) => void): this;
417 channel: "setLoading",
418 listener: (event: IpcRendererEvent, tabId: number, loading: boolean) => void,
421 channel: "loadSettings",
422 listener: (event: IpcRendererEvent, settings: Types.SettingsInterface) => void,
425 channel: "getThemeCreatorPalette",
426 listener: (event: IpcRendererEvent, palette: Themes.Palette) => void,
429 channel: "changeZoomFactor",
430 listener: (event: IpcRendererEvent, zoom: number) => void,
432 on(channel: "openCommunity", listener: (event: IpcRendererEvent) => void): this;
434 channel: "handleSetFullScreen",
435 listener: (event: IpcRendererEvent, fullscreen: boolean) => void,
438 send(channel: string, ...args: any[]): void;
439 send(channel: "setTitle", data: { id: number; title: string }): this;
440 send(channel: "openCommunity", args: WebApi.OpenCommunity): this;
441 send(channel: "openFile", url: string): this;
442 send(channel: "closeAllTab"): this;
443 send(channel: "setFocusToMainTab"): this;
444 send(channel: "setFocusToCommunityTab"): this;
445 send(channel: "setTabFocus", id: number): this;
446 send(channel: "closeTab", id: number): this;
447 send(channel: "closeSettingsView", settings: Types.SettingsInterface): this;
448 send(channel: "themeCreatorExportTheme", theme: Themes.Theme): this;
449 send(channel: "themeCreatorAddTheme", theme: Themes.Theme): this;
450 send(channel: "themeCreatorRemoveTheme", themeId: string): this;
451 send(channel: "enabled", enabled: boolean): this;
452 send(channel: "updateFigmaUiScale", scale: number): this;
453 send(channel: "logDebug", ...args: any[]): this;
454 send(channel: "logInfo", ...args: any[]): this;
455 send(channel: "logError", ...args: any[]): this;
456 send(channel: "removeLocalFileExtension", id: number): this;
457 send(channel: "openExtensionDirectory", id: number): this;
458 send(channel: "openMainMenu"): this;
459 send(channel: "openMainTabMenu"): this;
460 send(channel: "openCommunityTabMenu"): this;
461 send(channel: "openTabMenu", tabId: number): this;
462 send(channel: "newProject"): this;
463 send(channel: "closeCommunityTab"): this;
464 send(channel: "appExit"): this;
465 send(channel: "updateVisibleNewProjectBtn", visible: boolean): this;
466 send(channel: "updateFullscreenMenuState", state: Menu.State): this;
467 send(channel: "saveCreatorTheme", theme: Themes.Theme): this;
468 send(channel: "syncThemes"): this;
469 send(channel: "setClipboardData", data: WebApi.SetClipboardData): this;
470 send(channel: "set-use-zenity", value: boolean): this;
471 send(channel: "windowDidMaximized"): this;
472 send(channed: "windowDidRestored"): this;
473 send(channed: "changeTheme", theme: Themes.Theme): this;
474 send(channed: "windowClose", tabs: Types.TabFront[]): this;
475 send(channed: "toggleThemeCreatorPreviewMask"): this;
476 send(channed: "setInitialOptions", data: WebApi.SetInitOptions): this;
477 send(channed: "setUser", userId: string): this;
478 send(channed: "toggleCurrentWindowFullscreen"): this;
480 channed: "web-callback:registerManifestChangeObserver",
484 send(channed: "web-callback:registerCodeChangeObserver", callbackID: number, args?: any): this;
485 send(channed: "web-callback:registerUiChangeObserver", callbackID: number, args?: any): this;
487 sendSync(channed: "getSettings"): Types.SettingsInterface;
490 channel: "writeNewExtensionToDisk",
491 data: WebApi.WriteNewExtensionToDiskArgs,
493 invoke(channel: "getAllLocalFileExtensionIds"): Promise<number[]>;
494 invoke(channel: "getLocalFileExtensionManifest", id: number): Promise<number[]>;
495 invoke(channel: "getLocalFileExtensionSource", id: number): Promise<Extensions.ExtensionSource>;
497 channel: "createMultipleNewLocalFileExtensions",
498 data: WebApi.CreateMultipleExtension,
500 invoke(channel: "createFile", data: WebApi.CreateFile): Promise<any>;
501 invoke(channel: "themesIsDisabled"): Promise<boolean>;
502 invoke(channel: "isDevToolsOpened"): Promise<boolean>;
503 invoke(channel: "writeFiles", data: WebApi.WriteFiles): Promise<void>;
504 invoke(channel: "getFonts"): Promise<Fonts.IFonts>;
505 invoke(channel: "getFontFile", data: WebApi.GetFontFile): Promise<Buffer>;
506 invoke(channel: "selectExportDirectory"): Promise<string | null>;
507 invoke(channel: "updatePanelScale", scale: number): this;
508 invoke(channel: "requestMicrophonePermission"): this;
510 channel: "writeNewExtensionDirectoryToDisk",
511 data: WebApi.WriteNewExtensionDirectoryToDisk,
513 invoke(channel: "getLocalManifestFileExtensionIdsToCachedMetadataMap"): this;
516 interface WebContents extends NodeJS.EventEmitter {
517 send(channel: "renderView", view: Types.View): void;
518 send(channel: "themesLoaded", themes: Themes.Theme[]): void;
519 send(channel: "toggleThemeCreatorPreviewMask"): void;
520 send(channel: "updateVisibleNewProjectBtn", visible: boolean): void;
521 send(channel: "setPanelScale", scale: number, height: number): void;
522 send(channel: "updateUiScale", scale: number): void;
523 send(channel: "closeAllTab"): void;
524 send(channel: "setTitle", data: { id: number; title: string }): void;
525 send(channel: "didTabAdd", data: Types.Tab): this;
526 send(channel: "handleUrl", url: string): this;
527 send(channel: "focusTab", tabId: Types.TabIdType): this;
528 send(channel: "newFileBtnVisible", visible: boolean): this;
529 send(channel: "tabWasClosed", tabId: number): this;
530 send(channel: "setUsingMicrophone", data: { id: number; isUsingMicrophone: boolean }): this;
531 send(channel: "setIsInVoiceCall", data: { id: number; isInVoiceCall: boolean }): this;
532 send(channel: "loadCreatorTheme", theme: Themes.Theme): this;
533 send(channel: "loadCurrentTheme", theme: Themes.Theme): this;
534 send(channel: "loadCreatorThemes", themes: Themes.Theme[]): this;
535 send(channel: "syncThemesStart", theme: Themes.Theme): this;
536 send(channel: "syncThemesEnd", theme: Themes.Theme): this;
537 send(channel: "isMainMenuOpen", isOpen: boolean): this;
538 send(channel: "communityTabWasClose", isOpen: boolean): this;
539 send(channel: "loading", tabId: number, loading: boolean): this;
540 send(channel: "loadSettings", settings: Types.SettingsInterface): this;
541 send(channel: "getThemeCreatorPalette", palette: Themes.Palette): this;
542 send(channel: "changeZoomFactor", zoom: number): this;
543 send(channel: "handleSetFullScreen", fullscreen: boolean): this;
544 send(channel: "openCommunity"): this;
549 interface RequestHeaders {
550 [name: string]: string;