diff options
| author | Robert Jaros <rjaros@finn.pl> | 2019-03-05 00:27:28 +0100 |
|---|---|---|
| committer | Robert Jaros <rjaros@finn.pl> | 2019-03-05 00:27:28 +0100 |
| commit | e60f2f1fa999e7490947fcd117b46458b7cad8ed (patch) | |
| tree | ddf3e264f10380c5c45f1d08207737db7fc980db /kvision-modules/kvision-electron/src | |
| parent | e664204d1d0ed5f39aed33b1941cfe9f1e470db2 (diff) | |
| download | kvision-e60f2f1fa999e7490947fcd117b46458b7cad8ed.tar.gz kvision-e60f2f1fa999e7490947fcd117b46458b7cad8ed.tar.bz2 kvision-e60f2f1fa999e7490947fcd117b46458b7cad8ed.zip | |
Electron support module.
Diffstat (limited to 'kvision-modules/kvision-electron/src')
2 files changed, 5086 insertions, 0 deletions
diff --git a/kvision-modules/kvision-electron/src/main/kotlin/pl/treksoft/kvision/electron/electron.kt b/kvision-modules/kvision-electron/src/main/kotlin/pl/treksoft/kvision/electron/electron.kt new file mode 100644 index 00000000..fd981333 --- /dev/null +++ b/kvision-modules/kvision-electron/src/main/kotlin/pl/treksoft/kvision/electron/electron.kt @@ -0,0 +1,5016 @@ +/* + * Copyright (c) 2017-present Robert Jaros + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ +@file:Suppress( + "INTERFACE_WITH_SUPERCLASS", + "OVERRIDING_FINAL_MEMBER", + "RETURN_TYPE_MISMATCH_ON_OVERRIDE", + "CONFLICTING_OVERLOADS", + "EXTERNAL_DELEGATION", + "NESTED_CLASS_IN_EXTERNAL_INTERFACE", + "UNUSED", "PropertyName" +) +@file:JsModule("electron") +@file:JsNonModule + +package pl.treksoft.kvision.electron + +import node.ReadableStream +import node.buffer.Buffer +import org.w3c.dom.HTMLElement +import org.w3c.dom.events.EventListener +import kotlin.js.Date +import kotlin.js.Promise + +external interface EventListenerObject { + fun handleEvent(evt: Event) +} + +open external class EventEmitter { + open fun addListener(event: String, listener: Function<*>): EventEmitter /* this */ = definedExternally + open fun on(event: String, listener: Function<*>): EventEmitter /* this */ = definedExternally + open fun once(event: String, listener: Function<*>): EventEmitter /* this */ = definedExternally + open fun removeListener(event: String, listener: Function<*>): EventEmitter /* this */ = definedExternally + open fun removeAllListeners(event: String? = definedExternally /* null */): EventEmitter /* this */ = + definedExternally + + open fun setMaxListeners(n: Number): EventEmitter /* this */ = definedExternally + open fun getMaxListeners(): Number = definedExternally + open fun listeners(event: String): Array<Function<*>> = definedExternally + open fun emit(event: String, vararg args: Any): Boolean = definedExternally + open fun listenerCount(type: String): Number = definedExternally + open fun prependListener(event: String, listener: Function<*>): EventEmitter /* this */ = definedExternally + open fun prependOnceListener(event: String, listener: Function<*>): EventEmitter /* this */ = definedExternally + open fun eventNames(): Array<String> = definedExternally +} + +open external class Accelerator +external interface Event { + var preventDefault: () -> Unit + var sender: WebContents + var returnValue: Any + var ctrlKey: Boolean? get() = definedExternally; set(value) = definedExternally + var metaKey: Boolean? get() = definedExternally; set(value) = definedExternally + var shiftKey: Boolean? get() = definedExternally; set(value) = definedExternally + var altKey: Boolean? get() = definedExternally; set(value) = definedExternally +} + +external interface CommonInterface { + var clipboard: Clipboard + var crashReporter: CrashReporter + var nativeImage: Any? + var screen: Screen + var shell: Shell +} + +external interface MainInterface : CommonInterface { + var app: App + var autoUpdater: AutoUpdater + var BrowserView: Any? + var BrowserWindow: Any? + var ClientRequest: Any? + var contentTracing: ContentTracing + var Cookies: Any? + var Debugger: Any? + var dialog: Dialog + var DownloadItem: Any? + var globalShortcut: GlobalShortcut + var inAppPurchase: InAppPurchase + var IncomingMessage: Any? + var ipcMain: IpcMain + var Menu: Any? + var MenuItem: Any? + var net: Net + var Notification: Any? + var powerMonitor: PowerMonitor + var powerSaveBlocker: PowerSaveBlocker + var protocol: Protocol + var session: Any? + var systemPreferences: SystemPreferences + var TouchBar: Any? + var Tray: Any? + var webContents: Any? + var WebRequest: Any? +} + +external interface RendererInterface : CommonInterface { + var BrowserWindowProxy: Any? + var desktopCapturer: DesktopCapturer + var ipcRenderer: IpcRenderer + var remote: Remote + var webFrame: WebFrame + var webviewTag: WebviewTag +} + +external interface AllElectron : MainInterface, + RendererInterface + +external var app: App = definedExternally +external var autoUpdater: AutoUpdater = definedExternally +external var clipboard: Clipboard = definedExternally +external var contentTracing: ContentTracing = definedExternally +external var crashReporter: CrashReporter = definedExternally +external var desktopCapturer: DesktopCapturer = definedExternally +external var dialog: Dialog = definedExternally +external var globalShortcut: GlobalShortcut = definedExternally +external var inAppPurchase: InAppPurchase = definedExternally +external var ipcMain: IpcMain = definedExternally +external var ipcRenderer: IpcRenderer = definedExternally +external var nativeImage: Any? = definedExternally +external var net: Net = definedExternally +external var powerMonitor: PowerMonitor = definedExternally +external var powerSaveBlocker: PowerSaveBlocker = definedExternally +external var protocol: Protocol = definedExternally +external var remote: Remote = definedExternally +external var screen: Screen = definedExternally +external var session: Any? = definedExternally +external var shell: Shell = definedExternally +external var systemPreferences: SystemPreferences = definedExternally +external var webContents: Any? = definedExternally +external var webFrame: WebFrame = definedExternally +external var webviewTag: WebviewTag = definedExternally + +external interface App : EventEmitter { + fun on( + event: String /* "accessibility-support-changed" */, + listener: (event: Event, accessibilitySupportEnabled: Boolean) -> Unit + ): App /* this */ + + fun once( + event: String /* "accessibility-support-changed" */, + listener: (event: Event, accessibilitySupportEnabled: Boolean) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "accessibility-support-changed" */, + listener: (event: Event, accessibilitySupportEnabled: Boolean) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "accessibility-support-changed" */, + listener: (event: Event, accessibilitySupportEnabled: Boolean) -> Unit + ): App /* this */ + + fun on(event: String /* "activate" */, listener: (event: Event, hasVisibleWindows: Boolean) -> Unit): App /* this */ + fun once( + event: String /* "activate" */, + listener: (event: Event, hasVisibleWindows: Boolean) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "activate" */, + listener: (event: Event, hasVisibleWindows: Boolean) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "activate" */, + listener: (event: Event, hasVisibleWindows: Boolean) -> Unit + ): App /* this */ + + fun on( + event: String /* "activity-was-continued" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun once( + event: String /* "activity-was-continued" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "activity-was-continued" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "activity-was-continued" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun on(event: String /* "before-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun once(event: String /* "before-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun addListener(event: String /* "before-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun removeListener(event: String /* "before-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun on( + event: String /* "browser-window-blur" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun once( + event: String /* "browser-window-blur" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "browser-window-blur" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "browser-window-blur" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun on( + event: String /* "browser-window-created" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun once( + event: String /* "browser-window-created" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "browser-window-created" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "browser-window-created" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun on( + event: String /* "browser-window-focus" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun once( + event: String /* "browser-window-focus" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "browser-window-focus" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "browser-window-focus" */, + listener: (event: Event, window: BrowserWindow) -> Unit + ): App /* this */ + + fun on( + event: String /* "certificate-error" */, + listener: (event: Event, webContents: WebContents, url: String, error: String, certificate: Certificate, callback: (isTrusted: Boolean) -> Unit) -> Unit + ): App /* this */ + + fun once( + event: String /* "certificate-error" */, + listener: (event: Event, webContents: WebContents, url: String, error: String, certificate: Certificate, callback: (isTrusted: Boolean) -> Unit) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "certificate-error" */, + listener: (event: Event, webContents: WebContents, url: String, error: String, certificate: Certificate, callback: (isTrusted: Boolean) -> Unit) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "certificate-error" */, + listener: (event: Event, webContents: WebContents, url: String, error: String, certificate: Certificate, callback: (isTrusted: Boolean) -> Unit) -> Unit + ): App /* this */ + + fun on( + event: String /* "continue-activity" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun once( + event: String /* "continue-activity" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "continue-activity" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "continue-activity" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun on( + event: String /* "continue-activity-error" */, + listener: (event: Event, type: String, error: String) -> Unit + ): App /* this */ + + fun once( + event: String /* "continue-activity-error" */, + listener: (event: Event, type: String, error: String) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "continue-activity-error" */, + listener: (event: Event, type: String, error: String) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "continue-activity-error" */, + listener: (event: Event, type: String, error: String) -> Unit + ): App /* this */ + + fun on(event: String /* "gpu-process-crashed" */, listener: (event: Event, killed: Boolean) -> Unit): App /* this */ + fun once( + event: String /* "gpu-process-crashed" */, + listener: (event: Event, killed: Boolean) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "gpu-process-crashed" */, + listener: (event: Event, killed: Boolean) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "gpu-process-crashed" */, + listener: (event: Event, killed: Boolean) -> Unit + ): App /* this */ + + fun on( + event: String /* "login" */, + listener: (event: Event, webContents: WebContents, request: Request, authInfo: AuthInfo, callback: (username: String, password: String) -> Unit) -> Unit + ): App /* this */ + + fun once( + event: String /* "login" */, + listener: (event: Event, webContents: WebContents, request: Request, authInfo: AuthInfo, callback: (username: String, password: String) -> Unit) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "login" */, + listener: (event: Event, webContents: WebContents, request: Request, authInfo: AuthInfo, callback: (username: String, password: String) -> Unit) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "login" */, + listener: (event: Event, webContents: WebContents, request: Request, authInfo: AuthInfo, callback: (username: String, password: String) -> Unit) -> Unit + ): App /* this */ + + fun on(event: String /* "new-window-for-tab" */, listener: (event: Event) -> Unit): App /* this */ + fun once(event: String /* "new-window-for-tab" */, listener: (event: Event) -> Unit): App /* this */ + fun addListener(event: String /* "new-window-for-tab" */, listener: (event: Event) -> Unit): App /* this */ + fun removeListener(event: String /* "new-window-for-tab" */, listener: (event: Event) -> Unit): App /* this */ + fun on(event: String /* "open-file" */, listener: (event: Event, path: String) -> Unit): App /* this */ + fun once(event: String /* "open-file" */, listener: (event: Event, path: String) -> Unit): App /* this */ + fun addListener(event: String /* "open-file" */, listener: (event: Event, path: String) -> Unit): App /* this */ + fun removeListener(event: String /* "open-file" */, listener: (event: Event, path: String) -> Unit): App /* this */ + fun on(event: String /* "open-url" */, listener: (event: Event, url: String) -> Unit): App /* this */ + fun once(event: String /* "open-url" */, listener: (event: Event, url: String) -> Unit): App /* this */ + fun addListener(event: String /* "open-url" */, listener: (event: Event, url: String) -> Unit): App /* this */ + fun removeListener(event: String /* "open-url" */, listener: (event: Event, url: String) -> Unit): App /* this */ + fun on(event: String /* "quit" */, listener: (event: Event, exitCode: Number) -> Unit): App /* this */ + fun once(event: String /* "quit" */, listener: (event: Event, exitCode: Number) -> Unit): App /* this */ + fun addListener(event: String /* "quit" */, listener: (event: Event, exitCode: Number) -> Unit): App /* this */ + fun removeListener(event: String /* "quit" */, listener: (event: Event, exitCode: Number) -> Unit): App /* this */ + fun on(event: String /* "ready" */, listener: (launchInfo: Any) -> Unit): App /* this */ + fun once(event: String /* "ready" */, listener: (launchInfo: Any) -> Unit): App /* this */ + fun addListener(event: String /* "ready" */, listener: (launchInfo: Any) -> Unit): App /* this */ + fun removeListener(event: String /* "ready" */, listener: (launchInfo: Any) -> Unit): App /* this */ + fun on( + event: String /* "select-client-certificate" */, + listener: (event: Event, webContents: WebContents, url: String, certificateList: Array<Certificate>, callback: (certificate: Certificate? /*= null*/) -> Unit) -> Unit + ): App /* this */ + + fun once( + event: String /* "select-client-certificate" */, + listener: (event: Event, webContents: WebContents, url: String, certificateList: Array<Certificate>, callback: (certificate: Certificate? /*= null*/) -> Unit) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "select-client-certificate" */, + listener: (event: Event, webContents: WebContents, url: String, certificateList: Array<Certificate>, callback: (certificate: Certificate? /*= null*/) -> Unit) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "select-client-certificate" */, + listener: (event: Event, webContents: WebContents, url: String, certificateList: Array<Certificate>, callback: (certificate: Certificate? /*= null*/) -> Unit) -> Unit + ): App /* this */ + + fun on( + event: String /* "update-activity-state" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun once( + event: String /* "update-activity-state" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "update-activity-state" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "update-activity-state" */, + listener: (event: Event, type: String, userInfo: Any) -> Unit + ): App /* this */ + + fun on( + event: String /* "web-contents-created" */, + listener: (event: Event, webContents: WebContents) -> Unit + ): App /* this */ + + fun once( + event: String /* "web-contents-created" */, + listener: (event: Event, webContents: WebContents) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "web-contents-created" */, + listener: (event: Event, webContents: WebContents) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "web-contents-created" */, + listener: (event: Event, webContents: WebContents) -> Unit + ): App /* this */ + + fun on(event: String /* "will-continue-activity" */, listener: (event: Event, type: String) -> Unit): App /* this */ + fun once( + event: String /* "will-continue-activity" */, + listener: (event: Event, type: String) -> Unit + ): App /* this */ + + fun addListener( + event: String /* "will-continue-activity" */, + listener: (event: Event, type: String) -> Unit + ): App /* this */ + + fun removeListener( + event: String /* "will-continue-activity" */, + listener: (event: Event, type: String) -> Unit + ): App /* this */ + + override fun on(event: String /* "will-finish-launching" */, listener: Function<*>): App /* this */ + override fun once(event: String /* "will-finish-launching" */, listener: Function<*>): App /* this */ + override fun addListener(event: String /* "will-finish-launching" */, listener: Function<*>): App /* this */ + override fun removeListener(event: String /* "will-finish-launching" */, listener: Function<*>): App /* this */ + fun on(event: String /* "will-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun once(event: String /* "will-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun addListener(event: String /* "will-quit" */, listener: (event: Event) -> Unit): App /* this */ + fun removeListener(event: String /* "will-quit" */, listener: (event: Event) -> Unit): App /* this */ + override fun on(event: String /* "window-all-closed" */, listener: Function<*>): App /* this */ + override fun once(event: String /* "window-all-closed" */, listener: Function<*>): App /* this */ + override fun addListener(event: String /* "window-all-closed" */, listener: Function<*>): App /* this */ + override fun removeListener(event: String /* "window-all-closed" */, listener: Function<*>): App /* this */ + fun addRecentDocument(path: String) + fun clearRecentDocuments() + fun disableDomainBlockingFor3DAPIs() + fun disableHardwareAcceleration() + fun enableMixedSandbox() + fun exit(exitCode: Number? = definedExternally /* null */) + fun focus() + fun getAppMetrics(): Array<ProcessMetric> + fun getAppPath(): String + fun getBadgeCount(): Number + fun getCurrentActivityType(): String + fun getFileIcon(path: String, callback: (error: Error, icon: NativeImage) -> Unit) + fun getFileIcon(path: String, options: FileIconOptions, callback: (error: Error, icon: NativeImage) -> Unit) + fun getGPUFeatureStatus(): GPUFeatureStatus + fun getJumpListSettings(): JumpListSettings + fun getLocale(): String + fun getLoginItemSettings(options: LoginItemSettingsOptions? = definedExternally /* null */): LoginItemSettings + fun getName(): String + fun getPath(name: String): String + fun getVersion(): String + fun hide() + fun importCertificate(options: ImportCertificateOptions, callback: (result: Number) -> Unit) + fun invalidateCurrentActivity(type: String) + fun isAccessibilitySupportEnabled(): Boolean + fun isDefaultProtocolClient( + protocol: String, + path: String? = definedExternally /* null */, + args: Array<String>? = definedExternally /* null */ + ): Boolean + + fun isInApplicationsFolder(): Boolean + fun isReady(): Boolean + fun isUnityRunning(): Boolean + fun makeSingleInstance(callback: (argv: Array<String>, workingDirectory: String) -> Unit): Boolean + fun moveToApplicationsFolder(): Boolean + fun quit() + fun relaunch(options: RelaunchOptions? = definedExternally /* null */) + fun releaseSingleInstance() + fun removeAsDefaultProtocolClient( + protocol: String, + path: String? = definedExternally /* null */, + args: Array<String>? = definedExternally /* null */ + ): Boolean + + fun setAboutPanelOptions(options: AboutPanelOptionsOptions) + fun setAccessibilitySupportEnabled(enabled: Boolean) + fun setAppUserModelId(id: String) + fun setAsDefaultProtocolClient( + protocol: String, + path: String? = definedExternally /* null */, + args: Array<String>? = definedExternally /* null */ + ): Boolean + + fun setBadgeCount(count: Number): Boolean + fun setJumpList(categories: Array<JumpListCategory>) + fun setLoginItemSettings(settings: Settings) + fun setName(name: String) + fun setPath(name: String, path: String) + fun setUserActivity(type: String, userInfo: Any, webpageURL: String? = definedExternally /* null */) + fun setUserTasks(tasks: Array<Task>): Boolean + fun show() + fun startAccessingSecurityScopedResource(bookmarkData: String): Function<*> + fun updateCurrentActivity(type: String, userInfo: Any) + var commandLine: CommandLine + var dock: Dock +} + +external interface AutoUpdater : EventEmitter { + override fun on(event: String /* "checking-for-update" */, listener: Function<*>): AutoUpdater /* this */ + override fun once(event: String /* "checking-for-update" */, listener: Function<*>): AutoUpdater /* this */ + override fun addListener(event: String /* "checking-for-update" */, listener: Function<*>): AutoUpdater /* this */ + override fun removeListener( + event: String /* "checking-for-update" */, + listener: Function<*> + ): AutoUpdater /* this */ + + fun on(event: String /* "error" */, listener: (error: Error) -> Unit): AutoUpdater /* this */ + fun once(event: String /* "error" */, listener: (error: Error) -> Unit): AutoUpdater /* this */ + fun addListener(event: String /* "error" */, listener: (error: Error) -> Unit): AutoUpdater /* this */ + fun removeListener(event: String /* "error" */, listener: (error: Error) -> Unit): AutoUpdater /* this */ + override fun on(event: String /* "update-available" */, listener: Function<*>): AutoUpdater /* this */ + override fun once(event: String /* "update-available" */, listener: Function<*>): AutoUpdater /* this */ + override fun addListener(event: String /* "update-available" */, listener: Function<*>): AutoUpdater /* this */ + override fun removeListener(event: String /* "update-available" */, listener: Function<*>): AutoUpdater /* this */ + fun on( + event: String /* "update-downloaded" */, + listener: (event: Event, releaseNotes: String, releaseName: String, releaseDate: Date, updateURL: String) -> Unit + ): AutoUpdater /* this */ + + fun once( + event: String /* "update-downloaded" */, + listener: (event: Event, releaseNotes: String, releaseName: String, releaseDate: Date, updateURL: String) -> Unit + ): AutoUpdater /* this */ + + fun addListener( + event: String /* "update-downloaded" */, + listener: (event: Event, releaseNotes: String, releaseName: String, releaseDate: Date, updateURL: String) -> Unit + ): AutoUpdater /* this */ + + fun removeListener( + event: String /* "update-downloaded" */, + listener: (event: Event, releaseNotes: String, releaseName: String, releaseDate: Date, updateURL: String) -> Unit + ): AutoUpdater /* this */ + + override fun on(event: String /* "update-not-available" */, listener: Function<*>): AutoUpdater /* this */ + override fun once(event: String /* "update-not-available" */, listener: Function<*>): AutoUpdater /* this */ + override fun addListener(event: String /* "update-not-available" */, listener: Function<*>): AutoUpdater /* this */ + override fun removeListener( + event: String /* "update-not-available" */, + listener: Function<*> + ): AutoUpdater /* this */ + + fun checkForUpdates() + fun getFeedURL(): String + fun quitAndInstall() + fun setFeedURL(options: FeedURLOptions) +} + +external interface BluetoothDevice { + var deviceId: String + var deviceName: String +} + +open external class BrowserView(options: BrowserViewConstructorOptions? = definedExternally /* null */) : + EventEmitter { + open fun destroy(): Unit = definedExternally + open fun isDestroyed(): Boolean = definedExternally + open fun setAutoResize(options: AutoResizeOptions): Unit = definedExternally + open fun setBackgroundColor(color: String): Unit = definedExternally + open fun setBounds(bounds: Rectangle): Unit = definedExternally + open var id: Number = definedExternally + open var webContents: WebContents = definedExternally + + companion object { + fun fromId(id: Number): BrowserView = definedExternally + fun fromWebContents(webContents: WebContents): BrowserView? = definedExternally + fun getAllViews(): Array<BrowserView> = definedExternally + } +} + +open external class BrowserWindow(options: BrowserWindowConstructorOptions? = definedExternally /* null */) : + EventEmitter { + open fun on( + event: String /* "app-command" */, + listener: (event: Event, command: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + open fun once( + event: String /* "app-command" */, + listener: (event: Event, command: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + open fun addListener( + event: String /* "app-command" */, + listener: (event: Event, command: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + open fun removeListener( + event: String /* "app-command" */, + listener: (event: Event, command: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + override fun on(event: String /* "blur" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "blur" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun addListener(event: String /* "blur" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "blur" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + open fun on(event: String /* "close" */, listener: (event: Event) -> Unit): BrowserWindow /* this */ = + definedExternally + + open fun once(event: String /* "close" */, listener: (event: Event) -> Unit): BrowserWindow /* this */ = + definedExternally + + open fun addListener(event: String /* "close" */, listener: (event: Event) -> Unit): BrowserWindow /* this */ = + definedExternally + + open fun removeListener(event: String /* "close" */, listener: (event: Event) -> Unit): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "closed" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "closed" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun addListener(event: String /* "closed" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "closed" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "enter-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun once(event: String /* "enter-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener(event: String /* "enter-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener( + event: String /* "enter-full-screen" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun on(event: String /* "enter-html-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun once(event: String /* "enter-html-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener( + event: String /* "enter-html-full-screen" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun removeListener( + event: String /* "enter-html-full-screen" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun on(event: String /* "focus" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "focus" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun addListener(event: String /* "focus" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "focus" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "hide" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "hide" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun addListener(event: String /* "hide" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "hide" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "leave-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun once(event: String /* "leave-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener(event: String /* "leave-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener( + event: String /* "leave-full-screen" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun on(event: String /* "leave-html-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun once(event: String /* "leave-html-full-screen" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener( + event: String /* "leave-html-full-screen" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun removeListener( + event: String /* "leave-html-full-screen" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun on(event: String /* "maximize" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "maximize" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener(event: String /* "maximize" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "maximize" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "minimize" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "minimize" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener(event: String /* "minimize" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "minimize" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "move" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "move" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun addListener(event: String /* "move" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "move" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "moved" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun once(event: String /* "moved" */, listener: Function<*>): BrowserWindow /* this */ = definedExternally + override fun addListener(event: String /* "moved" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun removeListener(event: String /* "moved" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun on(event: String /* "new-window-for-tab" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun once(event: String /* "new-window-for-tab" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener( + event: String /* "new-window-for-tab" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + override fun removeListener( + event: String /* "new-window-for-tab" */, + listener: Function<*> + ): BrowserWindow /* this */ = definedExternally + + open fun on( + event: String /* "page-title-updated" */, + listener: (event: Event, title: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + open fun once( + event: String /* "page-title-updated" */, + listener: (event: Event, title: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + open fun addListener( + event: String /* "page-title-updated" */, + listener: (event: Event, title: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + open fun removeListener( + event: String /* "page-title-updated" */, + listener: (event: Event, title: String) -> Unit + ): BrowserWindow /* this */ = definedExternally + + override fun on(event: String /* "ready-to-show" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun once(event: String /* "ready-to-show" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + override fun addListener(event: String /* "ready-to-show" */, listener: Function<*>): BrowserWindow /* this */ = + definedExternally + + overri |
