@openfin/core 25.68.30 → 25.70.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/OpenFin.d.ts +30 -826
  2. package/README.md +12 -2
  3. package/package.json +1 -1
  4. package/src/api/application/Factory.d.ts +145 -145
  5. package/src/api/application/Factory.js +229 -229
  6. package/src/api/application/Instance.d.ts +301 -302
  7. package/src/api/application/Instance.js +412 -412
  8. package/src/api/application/index.d.ts +3 -3
  9. package/src/api/application/index.js +15 -15
  10. package/src/api/base.d.ts +43 -43
  11. package/src/api/base.js +177 -177
  12. package/src/api/clipboard/index.d.ts +69 -69
  13. package/src/api/clipboard/index.js +88 -88
  14. package/src/api/events/application.d.ts +69 -0
  15. package/src/api/events/application.js +2 -0
  16. package/src/api/events/base.d.ts +17 -0
  17. package/src/api/events/base.js +2 -0
  18. package/src/api/events/channel.d.ts +10 -11
  19. package/src/api/events/channel.js +2 -2
  20. package/src/api/events/emitterMap.d.ts +11 -11
  21. package/src/api/events/emitterMap.js +35 -35
  22. package/src/api/events/eventAggregator.d.ts +5 -5
  23. package/src/api/events/eventAggregator.js +43 -43
  24. package/src/api/events/externalApplication.d.ts +5 -0
  25. package/src/api/events/externalApplication.js +2 -0
  26. package/src/api/events/frame.d.ts +9 -0
  27. package/src/api/events/frame.js +2 -0
  28. package/src/api/events/globalHotkey.d.ts +10 -0
  29. package/src/api/events/globalHotkey.js +2 -0
  30. package/src/api/events/platform.d.ts +18 -0
  31. package/src/api/events/platform.js +2 -0
  32. package/src/api/events/system.d.ts +22 -0
  33. package/src/api/events/system.js +2 -0
  34. package/src/api/events/view.d.ts +56 -0
  35. package/src/api/events/view.js +2 -0
  36. package/src/api/events/webcontents.d.ts +48 -0
  37. package/src/api/events/webcontents.js +2 -0
  38. package/src/api/events/window.d.ts +176 -0
  39. package/src/api/events/window.js +2 -0
  40. package/src/api/external-application/Factory.d.ts +26 -26
  41. package/src/api/external-application/Factory.js +40 -40
  42. package/src/api/external-application/Instance.d.ts +101 -102
  43. package/src/api/external-application/Instance.js +109 -109
  44. package/src/api/external-application/index.d.ts +3 -3
  45. package/src/api/external-application/index.js +15 -15
  46. package/src/api/fin.d.ts +49 -49
  47. package/src/api/fin.js +43 -43
  48. package/src/api/frame/Factory.d.ts +36 -36
  49. package/src/api/frame/Factory.js +69 -69
  50. package/src/api/frame/Instance.d.ts +121 -121
  51. package/src/api/frame/Instance.js +130 -130
  52. package/src/api/frame/index.d.ts +3 -3
  53. package/src/api/frame/index.js +15 -15
  54. package/src/api/global-hotkey/index.d.ts +38 -38
  55. package/src/api/global-hotkey/index.js +58 -58
  56. package/src/api/interappbus/channel/channel.d.ts +26 -26
  57. package/src/api/interappbus/channel/channel.js +77 -77
  58. package/src/api/interappbus/channel/channels-docs.d.ts +318 -318
  59. package/src/api/interappbus/channel/channels-docs.js +376 -376
  60. package/src/api/interappbus/channel/client.d.ts +22 -22
  61. package/src/api/interappbus/channel/client.js +84 -84
  62. package/src/api/interappbus/channel/connection-manager.d.ts +28 -28
  63. package/src/api/interappbus/channel/connection-manager.js +244 -244
  64. package/src/api/interappbus/channel/index.d.ts +22 -23
  65. package/src/api/interappbus/channel/index.js +121 -121
  66. package/src/api/interappbus/channel/protocols/classic/message-receiver.d.ts +13 -13
  67. package/src/api/interappbus/channel/protocols/classic/message-receiver.js +73 -73
  68. package/src/api/interappbus/channel/protocols/classic/strategy.d.ts +22 -22
  69. package/src/api/interappbus/channel/protocols/classic/strategy.js +84 -84
  70. package/src/api/interappbus/channel/protocols/combined/strategy.d.ts +20 -20
  71. package/src/api/interappbus/channel/protocols/combined/strategy.js +58 -58
  72. package/src/api/interappbus/channel/protocols/index.d.ts +44 -44
  73. package/src/api/interappbus/channel/protocols/index.js +2 -2
  74. package/src/api/interappbus/channel/protocols/protocol-manager.d.ts +10 -10
  75. package/src/api/interappbus/channel/protocols/protocol-manager.js +43 -43
  76. package/src/api/interappbus/channel/protocols/rtc/endpoint.d.ts +23 -23
  77. package/src/api/interappbus/channel/protocols/rtc/endpoint.js +135 -135
  78. package/src/api/interappbus/channel/protocols/rtc/ice-manager.d.ts +30 -30
  79. package/src/api/interappbus/channel/protocols/rtc/ice-manager.js +131 -131
  80. package/src/api/interappbus/channel/protocols/rtc/strategy.d.ts +22 -22
  81. package/src/api/interappbus/channel/protocols/rtc/strategy.js +87 -87
  82. package/src/api/interappbus/channel/protocols/strategy-types.d.ts +13 -13
  83. package/src/api/interappbus/channel/protocols/strategy-types.js +2 -2
  84. package/src/api/interappbus/channel/protocols/strategy.d.ts +15 -15
  85. package/src/api/interappbus/channel/protocols/strategy.js +2 -2
  86. package/src/api/interappbus/channel/provider.d.ts +31 -31
  87. package/src/api/interappbus/channel/provider.js +160 -160
  88. package/src/api/interappbus/index.d.ts +85 -86
  89. package/src/api/interappbus/index.js +175 -175
  90. package/src/api/interop/Factory.d.ts +37 -37
  91. package/src/api/interop/Factory.js +54 -54
  92. package/src/api/interop/InteropBroker.d.ts +363 -363
  93. package/src/api/interop/InteropBroker.js +914 -914
  94. package/src/api/interop/InteropClient.d.ts +268 -268
  95. package/src/api/interop/InteropClient.js +450 -450
  96. package/src/api/interop/SessionContextGroupBroker.d.ts +26 -26
  97. package/src/api/interop/SessionContextGroupBroker.js +107 -107
  98. package/src/api/interop/SessionContextGroupClient.d.ts +20 -20
  99. package/src/api/interop/SessionContextGroupClient.js +85 -85
  100. package/src/api/interop/fdc3/fdc3-1.2.d.ts +187 -187
  101. package/src/api/interop/fdc3/fdc3-1.2.js +385 -385
  102. package/src/api/interop/fdc3/fdc3.js +17 -17
  103. package/src/api/interop/fdc3/utils.d.ts +6 -6
  104. package/src/api/interop/fdc3/utils.js +17 -17
  105. package/src/api/interop/index.d.ts +4 -4
  106. package/src/api/interop/index.js +16 -16
  107. package/src/api/interop/utils.d.ts +11 -11
  108. package/src/api/interop/utils.js +36 -36
  109. package/src/api/me.d.ts +38 -35
  110. package/src/api/me.js +128 -60
  111. package/src/api/platform/Factory.d.ts +109 -109
  112. package/src/api/platform/Factory.js +188 -188
  113. package/src/api/platform/Instance.d.ts +122 -122
  114. package/src/api/platform/Instance.js +298 -298
  115. package/src/api/platform/common-utils.d.ts +6 -6
  116. package/src/api/platform/common-utils.js +16 -16
  117. package/src/api/platform/index.d.ts +3 -3
  118. package/src/api/platform/index.js +15 -15
  119. package/src/api/platform/layout/Factory.d.ts +108 -108
  120. package/src/api/platform/layout/Factory.js +189 -189
  121. package/src/api/platform/layout/Instance.d.ts +49 -49
  122. package/src/api/platform/layout/Instance.js +99 -99
  123. package/src/api/platform/layout/index.d.ts +2 -2
  124. package/src/api/platform/layout/index.js +14 -14
  125. package/src/api/platform/layout/shapes.d.ts +11 -0
  126. package/src/api/{window → platform/layout}/shapes.js +2 -2
  127. package/src/api/snapshot-source/Factory.d.ts +36 -36
  128. package/src/api/snapshot-source/Factory.js +65 -65
  129. package/src/api/snapshot-source/Instance.d.ts +30 -30
  130. package/src/api/snapshot-source/Instance.js +134 -134
  131. package/src/api/snapshot-source/index.d.ts +3 -3
  132. package/src/api/snapshot-source/index.js +15 -15
  133. package/src/api/snapshot-source/utils.d.ts +1 -1
  134. package/src/api/snapshot-source/utils.js +5 -5
  135. package/src/api/system/index.d.ts +960 -961
  136. package/src/api/system/index.js +1241 -1241
  137. package/src/api/view/Factory.d.ts +49 -49
  138. package/src/api/view/Factory.js +103 -103
  139. package/src/api/view/Instance.d.ts +387 -380
  140. package/src/api/view/Instance.js +422 -415
  141. package/src/api/view/index.d.ts +3 -3
  142. package/src/api/view/index.js +15 -15
  143. package/src/api/webcontents/main.d.ts +36 -36
  144. package/src/api/webcontents/main.js +82 -82
  145. package/src/api/window/Factory.d.ts +44 -44
  146. package/src/api/window/Factory.js +91 -91
  147. package/src/api/window/Instance.d.ts +972 -966
  148. package/src/api/window/Instance.js +1209 -1202
  149. package/src/api/window/index.d.ts +3 -5
  150. package/src/api/window/index.js +15 -17
  151. package/src/environment/environment.d.ts +28 -25
  152. package/src/environment/environment.js +4 -4
  153. package/src/environment/node-env.d.ts +25 -26
  154. package/src/environment/node-env.js +64 -64
  155. package/src/environment/openfin-env.d.ts +29 -30
  156. package/src/environment/openfin-env.js +107 -107
  157. package/src/mock.d.ts +3 -3
  158. package/src/mock.js +91 -90
  159. package/src/shapes/ERROR_BOX_TYPES.d.ts +1 -0
  160. package/src/shapes/ERROR_BOX_TYPES.js +2 -0
  161. package/src/shapes/WebOptions.d.ts +12 -0
  162. package/src/shapes/WebOptions.js +2 -0
  163. package/src/shapes/WindowOptions.d.ts +42 -0
  164. package/src/shapes/WindowOptions.js +2 -0
  165. package/src/shapes/protocol.d.ts +178 -0
  166. package/src/shapes/protocol.js +2 -0
  167. package/src/transport/fin_store.d.ts +4 -4
  168. package/src/transport/fin_store.js +16 -16
  169. package/src/transport/transport-errors.d.ts +18 -18
  170. package/src/transport/transport-errors.js +37 -37
  171. package/src/transport/transport.d.ts +56 -43
  172. package/src/transport/transport.js +181 -181
  173. package/src/transport/wire.d.ts +71 -11
  174. package/src/transport/wire.js +32 -32
  175. package/src/util/asyncFilter.d.ts +1 -1
  176. package/src/util/asyncFilter.js +7 -7
  177. package/src/util/errors.d.ts +9 -5
  178. package/src/util/errors.js +11 -11
  179. package/src/util/exhaustive.d.ts +1 -1
  180. package/src/util/exhaustive.js +7 -7
  181. package/src/util/http.d.ts +11 -11
  182. package/src/util/http.js +83 -83
  183. package/src/util/normalize-config.d.ts +3 -5
  184. package/src/util/normalize-config.js +47 -47
  185. package/src/util/promises.d.ts +5 -5
  186. package/src/util/promises.js +27 -27
  187. package/src/util/ref-counter.d.ts +7 -7
  188. package/src/util/ref-counter.js +51 -51
  189. package/src/util/runtimeVersioning.d.ts +3 -3
  190. package/src/util/runtimeVersioning.js +25 -25
  191. package/src/util/utilTypes.d.ts +8 -8
  192. package/src/util/utilTypes.js +2 -2
  193. package/src/util/validate.d.ts +3 -3
  194. package/src/util/validate.js +11 -11
  195. package/docs.README(OLD).md +0 -82
  196. package/resources/win/OpenFinRVM.exe +0 -0
  197. package/src/api/window/bounds-changed.d.ts +0 -10
  198. package/src/api/window/bounds-changed.js +0 -6
  199. package/src/api/window/shapes.d.ts +0 -13
@@ -1,961 +1,960 @@
1
- import { EmitterBase } from '../base';
2
- import Transport from '../../transport/transport';
3
- import Identity = OpenFin.Identity;
4
- import ProxyInfo = OpenFin.ProxyInfo;
5
- import ProxyConfig = OpenFin.ProxyConfig;
6
- import SystemEvents = OpenFin.SystemEvents;
7
- import InstalledApps = OpenFin.InstalledApps;
8
- import LogInfo = OpenFin.LogInfo;
9
- import LogLevel = OpenFin.LogLevel;
10
- import GetLogRequestType = OpenFin.GetLogRequestType;
11
- import ProcessInfo = OpenFin.ProcessInfo;
12
- import RegistryInfo = OpenFin.RegistryInfo;
13
- import EntityInfo = OpenFin.EntityInfo;
14
- import Entity = OpenFin.Entity;
15
- import WindowInfo = OpenFin.WindowInfo;
16
- import SystemApplicationInfo = OpenFin.SystemApplicationInfo;
17
- /**
18
- * AppAssetInfo interface
19
- * @typedef { object } AppAssetInfo
20
- * @property { string } src The URL to a zip file containing the package files (executables, dlls, etc…)
21
- * @property { string } alias The name of the asset
22
- * @property { string } version The version of the package
23
- * @property { string } target Specify default executable to launch. This option can be overridden in launchExternalProcess
24
- * @property { string } args The default command line arguments for the aforementioned target.
25
- * @property { boolean } mandatory When set to true, the app will fail to load if the asset cannot be downloaded.
26
- * When set to false, the app will continue to load if the asset cannot be downloaded. (Default: true)
27
- */
28
- /**
29
- * AppAssetRequest interface
30
- * @typedef { object } AppAssetRequest
31
- * @property { string } alias The name of the asset
32
- */
33
- /**
34
- * SystemApplicationInfo interface
35
- * @typedef { object } SystemApplicationInfo
36
- * @property { boolean } isPlatform true when the application is a Platform controller
37
- * @property { boolean } isRunning true when the application is running
38
- * @property { string } uuid uuid of the application
39
- * @property { string } parentUuid uuid of the application that launches this application
40
- */
41
- /**
42
- * @typedef { object } ClearCacheOption
43
- * @summary Clear cache options.
44
- * @desc These are the options required by the clearCache function.
45
- *
46
- * @property {boolean} appcache html5 application cache
47
- * @property {boolean} cache browser data cache for html files and images
48
- * @property {boolean} cookies browser cookies
49
- * @property {boolean} localStorage browser data that can be used across sessions
50
- */
51
- /**
52
- * CookieInfo interface
53
- * @typedef { object } CookieInfo
54
- * @property { string } name The name of the cookie
55
- * @property { string } domain The domain of the cookie
56
- * @property { string } path The path of the cookie
57
- */
58
- /**
59
- * CookieOption interface
60
- * @typedef { object } CookieOption
61
- * @property { string } name The name of the cookie
62
- */
63
- /**
64
- * CpuInfo interface
65
- * @typedef { object } CpuInfo
66
- * @property { string } model The model of the cpu
67
- * @property { number } speed The number in MHz
68
- * @property { Time } times The numbers of milliseconds the CPU has spent in different modes.
69
- */
70
- /**
71
- * CrashReporterState interface
72
- * @typedef { object } CrashReporterState
73
- * @property { boolean } diagnosticsMode In diagnostics mode the crash reporter will send diagnostic logs to
74
- * the OpenFin reporting service on runtime shutdown
75
- * @property { boolean } isRunning check if it's running
76
- */
77
- /**
78
- * CrashReporterOptions interface
79
- * @typedef { object } CrashReporterOptions
80
- * @property { boolean } diagnosticsMode In diagnostics mode the crash reporter will send diagnostic logs to
81
- * the OpenFin reporting service on runtime shutdown
82
- */
83
- /**
84
- * DipRect interface
85
- * @typedef { object } DipRect
86
- * @property { Rect } dipRect The DIP coordinates
87
- * @property { Rect } scaledRect The scale coordinates
88
- */
89
- /**
90
- * DipScaleRects interface
91
- * @typedef { object } DipScaleRects
92
- * @property { Rect } dipRect The DIP coordinates
93
- * @property { Rect } scaledRect The scale coordinates
94
- */
95
- /**
96
- * DownloadPreloadInfo interface
97
- * @typedef { object } DownloadPreloadInfo
98
- * @desc downloadPreloadScripts function return value
99
- * @property { string } url url to the preload script
100
- * @property { string } error error during preload script acquisition
101
- * @property { boolean } succeess download operation success
102
- */
103
- /**
104
- * DownloadPreloadOption interface
105
- * @typedef { object } DownloadPreloadOption
106
- * @desc These are the options object required by the downloadPreloadScripts function
107
- * @property { string } url url to the preload script
108
- */
109
- /**
110
- * Entity interface
111
- * @typedef { object } Entity
112
- * @property { string } type The type of the entity
113
- * @property { string } uuid The uuid of the entity
114
- */
115
- /**
116
- * EntityInfo interface
117
- * @typedef { object } EntityInfo
118
- * @property { string } name The name of the entity
119
- * @property { string } uuid The uuid of the entity
120
- * @property { Identity } parent The parent of the entity
121
- * @property { string } entityType The type of the entity
122
- */
123
- /**
124
- * ExternalApplicationInfo interface
125
- * @typedef { object } ExternalApplicationInfo
126
- * @property { Identity } parent The parent identity
127
- */
128
- /**
129
- * ExternalConnection interface
130
- * @typedef { object } ExternalConnection
131
- * @property { string } token The token to broker an external connection
132
- * @property { string } uuid The uuid of the external connection
133
- */
134
- /**
135
- * ExternalProcessRequestType interface
136
- * @typedef { object } ExternalProcessRequestType
137
- * @property { string } path The file path to where the running application resides
138
- * @property { string } arguments The argument passed to the running application
139
- * @property { LaunchExternalProcessListener } listener This is described in the {LaunchExternalProcessListner} type definition
140
- * @property { string } initialWindowState Initial window state after launching: 'normal' (default), 'minimized', 'maximized'
141
- * @property { string } cwd current working directory
142
- */
143
- /**
144
- * FrameInfo interface
145
- * @typedef { object } FrameInfo
146
- * @property { string } name The name of the frame
147
- * @property { string } uuid The uuid of the frame
148
- * @property { EntityType } entityType The entity type, could be 'window', 'iframe', 'external connection' or 'unknown'
149
- * @property { Identity } parent The parent identity
150
- */
151
- /**
152
- * GetLogRequestType interface
153
- * @typedef { object } GetLogRequestType
154
- * @property { string } name The name of the running application
155
- * @property { number } endFile The file length of the log file
156
- * @property { number } sizeLimit The set size limit of the log file
157
- */
158
- /**
159
- * GpuInfo interface
160
- * @typedef { object } GpuInfo
161
- * @property { string } name The graphics card name
162
- */
163
- /**
164
- * HostSpecs interface
165
- * @typedef { object } HostSpecs
166
- * @property { boolean } aeroGlassEnabled Value to check if Aero Glass theme is supported on Windows platforms
167
- * @property { string } arch "x86" for 32-bit or "x86_64" for 64-bit
168
- * @property { Array<CpuInfo> } cpus The same payload as Node's os.cpus()
169
- * @property { GpuInfo } gpu The graphics card name
170
- * @property { number } memory The same payload as Node's os.totalmem()
171
- * @property { string } name The OS name and version/edition
172
- * @property { boolean } screenSaver Value to check if screensaver is running. Supported on Windows only
173
- */
174
- /**
175
- * Identity interface
176
- * @typedef { object } Identity
177
- * @property { string } name Optional - the name of the component
178
- * @property { string } uuid Universally unique identifier of the application
179
- */
180
- /**
181
- * LogInfo interface
182
- * @typedef { object } LogInfo
183
- * @property { string } name The filename of the log
184
- * @property { number } size The size of the log in bytes
185
- * @property { string } date The unix time at which the log was created "Thu Jan 08 2015 14:40:30 GMT-0500 (Eastern Standard Time)"
186
- */
187
- /**
188
- * ManifestInfo interface
189
- * @typedef { object } ManifestInfo
190
- * @property { string } uuid The uuid of the application
191
- * @property { string } manifestUrl The runtime manifest URL
192
- */
193
- /**
194
- * MonitorDetails interface
195
- * @typedef { object } MonitorDetails
196
- * @property { DipScaleRects } available The available DIP scale coordinates
197
- * @property { Rect } availableRect The available monitor coordinates
198
- * @property { string } deviceId The device id of the display
199
- * @property { boolean } displayDeviceActive true if the display is active
200
- * @property { number } deviceScaleFactor The device scale factor
201
- * @property { Rect } monitorRect The monitor coordinates
202
- * @property { string } name The name of the display
203
- * @property { Point } dpi The dots per inch
204
- * @property { DipScaleRects } monitor The monitor coordinates
205
- */
206
- /**
207
- * MonitorInfo interface
208
- * @typedef { object } MonitorInfo
209
- * @property { number } deviceScaleFactor The device scale factor
210
- * @property { Point } dpi The dots per inch
211
- * @property { Array<MonitorDetails> } nonPrimaryMonitors The array of monitor details
212
- * @property { MonitorDetails } primaryMonitor The monitor details
213
- * @property { string } reason always "api-query"
214
- * @property { TaskBar } taskBar The taskbar on monitor
215
- * @property { DipRect } virtualScreen The virtual display screen coordinates
216
- */
217
- /**
218
- * @typedef { verbose | info | warning | error | fatal } LogLevel
219
- * @summary Log verbosity levels.
220
- * @desc Describes the minimum level (inclusive) above which logs will be written
221
- *
222
- * @property { string } verbose all logs written
223
- * @property { string } info info and above
224
- * @property { string } warning warning and above
225
- * @property { string } error error and above
226
- * @property { string } fatal fatal only, indicates a crash is imminent
227
- */
228
- /**
229
- * PointTopLeft interface
230
- * @typedef { object } PointTopLeft
231
- * @property { number } top The mouse top position in virtual screen coordinates
232
- * @property { number } left The mouse left position in virtual screen coordinates
233
- */
234
- /**
235
- * Point interface
236
- * @typedef { object } Point
237
- * @property { number } x The mouse x position
238
- * @property { number } y The mouse y position
239
- */
240
- /**
241
- * ProcessInfo interface
242
- * @typedef { object } ProcessInfo
243
- * @property { number } cpuUsage The percentage of total CPU usage
244
- * @property { string } name The application name
245
- * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
246
- * @property { number } pageFaultCount The number of page faults
247
- * @property { number } pagedPoolUsage The current paged pool usage in bytes
248
- * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
249
- * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
250
- * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
251
- * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
252
- * @property { number } peakWorkingSetSize The peak working set size in bytes
253
- * @property { number } processId The native process identifier
254
- * @property { string } uuid The application UUID
255
- * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
256
- */
257
- /**
258
- * SystemProcessInfo interface
259
- * @typedef { object } SystemProcessInfo
260
- * @property { ProcessDetails } browserProcess Info on browser process
261
- * @property { Array<AppProcessInfo> } apps Array of apps and their process info
262
- */
263
- /**
264
- * AppProcessInfo interface
265
- * @typedef { object } AppProcessInfo
266
- * @property { string } uuid The uuid of the application
267
- * @property { Array<EntityProcessDetails> } entities Array of process info for each window and view for the application
268
- */
269
- /**
270
- * EntityProcessDetails interface
271
- * @typedef { object } EntityProcessDetails
272
- * @property { string } uuid The uuid for the entity
273
- * @property { string } name The name for the entity
274
- * @property { string } url URL associated with the entity
275
- * @property { string } entityType Type for the entity: window or view
276
- * @property { number } cpuUsage The percentage of total CPU usage
277
- * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
278
- * @property { number } pageFaultCount The number of page faults
279
- * @property { number } pagedPoolUsage The current paged pool usage in bytes
280
- * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
281
- * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
282
- * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
283
- * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
284
- * @property { number } peakWorkingSetSize The peak working set size in bytes
285
- * @property { number } privateSetSize The current working set size (not shared)
286
- * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
287
- * @property { number } pid The native process identifier
288
- * @property { Array<FrameProcessDetails> } frames Array of process info for each iframe corresponeding to the entity
289
- */
290
- /**
291
- * FrameProcessDetails interface
292
- * @typedef { object } FrameProcessDetails
293
- * @property { string } url Current URL associated with the process
294
- * @property { string } entityType Type for the frame
295
- * @property { number } cpuUsage The percentage of total CPU usage
296
- * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
297
- * @property { number } pageFaultCount The number of page faults
298
- * @property { number } pagedPoolUsage The current paged pool usage in bytes
299
- * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
300
- * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
301
- * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
302
- * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
303
- * @property { number } peakWorkingSetSize The peak working set size in bytes
304
- * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
305
- * @property { number } pid The native process identifier
306
- */
307
- /**
308
- * ProcessDetails interface
309
- * @typedef { object } ProcessDetails
310
- * @property { number } cpuUsage The percentage of total CPU usage
311
- * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
312
- * @property { number } pageFaultCount The number of page faults
313
- * @property { number } pagedPoolUsage The current paged pool usage in bytes
314
- * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
315
- * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
316
- * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
317
- * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
318
- * @property { number } peakWorkingSetSize The peak working set size in bytes
319
- * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
320
- * @property { number } pid The native process identifier
321
- */
322
- /**
323
- * ProxyConfig interface
324
- * @typedef { object } ProxyConfig
325
- * @property { string } proxyAddress The configured proxy address
326
- * @property { number } proxyPort The configured proxy port
327
- * @property { string } type The proxy Type
328
- */
329
- /**
330
- * ProxyInfo interface
331
- * @typedef { object } ProxyInfo
332
- * @property { ProxyConfig } config The proxy config
333
- * @property { ProxySystemInfo } system The proxy system info
334
- */
335
- /**
336
- * QueryPermissionResult interface
337
- * @typedef { object } QueryPermissionResult
338
- * @property { string } permission The full name of a secured API
339
- * @property { string } state 'granted' | 'denied' | 'unavailable'
340
- * @property { boolean } granted true if permission is granted
341
- * @property { object } [rawValue] The value of permission
342
- */
343
- /**
344
- * ProxySystemInfo interface
345
- * @typedef { object } ProxySystemInfo
346
- * @property { string } autoConfigUrl The auto configuration url
347
- * @property { string } bypass The proxy bypass info
348
- * @property { boolean } enabled Value to check if a proxy is enabled
349
- * @property { string } proxy The proxy info
350
- */
351
- /**
352
- * Rect interface
353
- * @typedef { object } Rect
354
- * @property { number } bottom The bottom-most coordinate
355
- * @property { number } left The left-most coordinate
356
- * @property { number } right The right-most coordinate
357
- * @property { number } top The top-most coordinate
358
- */
359
- /**
360
- * RegistryInfo interface
361
- * @typedef { object } RegistryInfo
362
- * @property { any } data The registry data
363
- * @property { string } rootKey The registry root key
364
- * @property { string } subkey The registry key
365
- * @property { string } type The registry type
366
- * @property { string } value The registry value name
367
- */
368
- /**
369
- * RuntimeDownloadOptions interface
370
- * @typedef { object } RuntimeDownloadOptions
371
- * @desc These are the options object required by the downloadRuntime function.
372
- * @property { string } version The given version to download
373
- */
374
- /**
375
- * RuntimeInfo interface
376
- * @typedef { object } RuntimeInfo
377
- * @property { string } architecture The runtime build architecture
378
- * @property { string } manifestUrl The runtime manifest URL
379
- * @property { number } port The runtime websocket port
380
- * @property { string } securityRealm The runtime security realm
381
- * @property { string } version The runtime version
382
- * @property { object } args the command line argument used to start the Runtime
383
- * @property { string } chromeVersion The chrome version
384
- * @property { string } electronVersion The electron version
385
- */
386
- /**
387
- * RVMInfo interface
388
- * @typedef { object } RVMInfo
389
- * @property { string } action The name of action: "get-rvm-info"
390
- * @property { string } appLogDirectory The app log directory
391
- * @property { string } path The path of OpenfinRVM.exe
392
- * @property { string } 'start-time' The start time of RVM
393
- * @property { string } version The version of RVM
394
- * @property { string } 'working-dir' The working directory
395
- */
396
- /**
397
- * RvmLaunchOptions interface
398
- * @typedef { object } RvmLaunchOptions
399
- * @property { boolean } [noUi] true if no UI when launching
400
- * @property { object } [userAppConfigArgs] The user app configuration args
401
- */
402
- /**
403
- * ServiceIdentifier interface
404
- * @typedef { object } ServiceIdentifier
405
- * @property { string } name The name of the service
406
- */
407
- /**
408
- * ServiceConfiguration interface
409
- * @typedef { object } ServiceConfiguration
410
- * @property { object } config The service configuration
411
- * @property { string } name The name of the service
412
- */
413
- /**
414
- * ShortCutConfig interface
415
- * @typedef { object } ShortCutConfig
416
- * @property { boolean } desktop true if application has a shortcut on the desktop
417
- * @property { boolean } startMenu true if application has shortcut in the start menu
418
- * @property { boolean } systemStartup true if application will be launched on system startup
419
- */
420
- /**
421
- * SubOptions interface
422
- * @typedef { Object } SubOptions
423
- * @property { number } timestamp The event timestamp
424
- */
425
- /**
426
- * TaskBar interface
427
- * @typedef { object } TaskBar
428
- * @property { string } edge which edge of a monitor the taskbar is on
429
- * @property { Rect } rect The taskbar coordinates
430
- */
431
- /**
432
- * TerminateExternalRequestType interface
433
- * @typedef { object } TerminateExternalRequestType
434
- * @property { string } uuid The uuid of the running application
435
- * @property { number } timeout Time out period before the running application terminates
436
- * @property { boolean } killtree Value to terminate the running application
437
- */
438
- /**
439
- * Time interface
440
- * @typedef { object } Time
441
- * @property { number } user The number of milliseconds the CPU has spent in user mode
442
- * @property { number } nice The number of milliseconds the CPU has spent in nice mode
443
- * @property { number } sys The number of milliseconds the CPU has spent in sys mode
444
- * @property { number } idle The number of milliseconds the CPU has spent in idle mode
445
- * @property { number } irq The number of milliseconds the CPU has spent in irq mode
446
- */
447
- /**
448
- * TrayInfo interface
449
- * @typedef { object } TrayInfo
450
- * @property { Bounds } bounds The bound of tray icon in virtual screen pixels
451
- * @property { MonitorInfo } monitorInfo Please see fin.System.getMonitorInfo for more information
452
- * @property { number } x copy of bounds.x
453
- * @property { number } y copy of bounds.y
454
- */
455
- /**
456
- * WindowDetail interface
457
- * @typedef { object } WindowDetail
458
- * @property { number } bottom The bottom-most coordinate of the window
459
- * @property { number } height The height of the window
460
- * @property { boolean } isShowing Value to check if the window is showing
461
- * @property { number } left The left-most coordinate of the window
462
- * @property { string } name The name of the window
463
- * @property { number } right The right-most coordinate of the window
464
- * @property { string } state The window state
465
- * @property { number } top The top-most coordinate of the window
466
- * @property { number } width The width of the window
467
- */
468
- /**
469
- * WindowInfo interface
470
- * @typedef { object } WindowInfo
471
- * @property { Array<WindowDetail> } childWindows The array of child windows details
472
- * @property { WindowDetail } mainWindow The main window detail
473
- * @property { string } uuid The uuid of the application
474
- */
475
- /**
476
- * CertifiedAppInfo interface
477
- * @typedef { object } CertifiedAppInfo
478
- * @property { boolean } isRunning true if the app is running
479
- * @property { boolean } [isOptedIntoCertfiedApp] true if the app has opted into certification
480
- * @property { boolean } [isCertified] true if the app is certified
481
- * @property { boolean } [isSSLCertified] true if the app manifest's SSL certificate is valid
482
- * @property { boolean } [isPresentInAppDirectory] true if the app is present in the OpenFin app directory
483
- */
484
- /**
485
- * An object representing the core of OpenFin Runtime. Allows the developer
486
- * to perform system-level actions, such as accessing logs, viewing processes,
487
- * clearing the cache and exiting the runtime as well as listen to <a href="tutorial-System.EventEmitter.html">system events</a>.
488
- * @namespace
489
- */
490
- export default class System extends EmitterBase<SystemEvents> {
491
- constructor(wire: Transport);
492
- private sendExternalProcessRequest;
493
- /**
494
- * Adds a listener to the end of the listeners array for the specified event.
495
- * @param { string | symbol } eventType - The type of the event.
496
- * @param { Function } listener - Called whenever an event of the specified type occurs.
497
- * @param { SubOptions } [options] - Option to support event timestamps.
498
- * @return {Promise.<this>}
499
- * @function addListener
500
- * @memberof System
501
- * @instance
502
- * @tutorial System.EventEmitter
503
- */
504
- /**
505
- * Adds a listener to the end of the listeners array for the specified event.
506
- * @param { string | symbol } eventType - The type of the event.
507
- * @param { Function } listener - Called whenever an event of the specified type occurs.
508
- * @param { SubOptions } [options] - Option to support event timestamps.
509
- * @return {Promise.<this>}
510
- * @function on
511
- * @memberof System
512
- * @instance
513
- * @tutorial System.EventEmitter
514
- */
515
- /**
516
- * Adds a one time listener for the event. The listener is invoked only the first time the event is fired, after which it is removed.
517
- * @param { string | symbol } eventType - The type of the event.
518
- * @param { Function } listener - The callback function.
519
- * @param { SubOptions } [options] - Option to support event timestamps.
520
- * @return {Promise.<this>}
521
- * @function once
522
- * @memberof System
523
- * @instance
524
- * @tutorial System.EventEmitter
525
- */
526
- /**
527
- * Adds a listener to the beginning of the listeners array for the specified event.
528
- * @param { string | symbol } eventType - The type of the event.
529
- * @param { Function } listener - The callback function.
530
- * @param { SubOptions } [options] - Option to support event timestamps.
531
- * @return {Promise.<this>}
532
- * @function prependListener
533
- * @memberof System
534
- * @instance
535
- * @tutorial System.EventEmitter
536
- */
537
- /**
538
- * Adds a one time listener for the event. The listener is invoked only the first time the event is fired, after which it is removed.
539
- * The listener is added to the beginning of the listeners array.
540
- * @param { string | symbol } eventType - The type of the event.
541
- * @param { Function } listener - The callback function.
542
- * @param { SubOptions } [options] - Option to support event timestamps.
543
- * @return {Promise.<this>}
544
- * @function prependOnceListener
545
- * @memberof System
546
- * @instance
547
- * @tutorial System.EventEmitter
548
- */
549
- /**
550
- * Remove a listener from the listener array for the specified event.
551
- * Caution: Calling this method changes the array indices in the listener array behind the listener.
552
- * @param { string | symbol } eventType - The type of the event.
553
- * @param { Function } listener - The callback function.
554
- * @param { SubOptions } [options] - Option to support event timestamps.
555
- * @return {Promise.<this>}
556
- * @function removeListener
557
- * @memberof System
558
- * @instance
559
- * @tutorial System.EventEmitter
560
- */
561
- /**
562
- * Removes all listeners, or those of the specified event.
563
- * @param { string | symbol } [eventType] - The type of the event.
564
- * @return {Promise.<this>}
565
- * @function removeAllListeners
566
- * @memberof System
567
- * @instance
568
- * @tutorial System.EventEmitter
569
- */
570
- /**
571
- * Returns the version of the runtime. The version contains the major, minor,
572
- * build and revision numbers.
573
- * @return {Promise.<string>}
574
- * @tutorial System.getVersion
575
- */
576
- getVersion(): Promise<string>;
577
- /**
578
- * Clears cached data containing application resource
579
- * files (images, HTML, JavaScript files), cookies, and items stored in the
580
- * Local Storage.
581
- * @param { ClearCacheOption } options - See tutorial for more details.
582
- * @return {Promise.<void>}
583
- * @tutorial System.clearCache
584
- */
585
- clearCache(options: OpenFin.ClearCacheOption): Promise<void>;
586
- /**
587
- * Clears all cached data when OpenFin Runtime exits.
588
- * @return {Promise.<void>}
589
- * @tutorial System.deleteCacheOnExit
590
- */
591
- deleteCacheOnExit(): Promise<void>;
592
- /**
593
- * Exits the Runtime.
594
- * @return {Promise.<void>}
595
- * @tutorial System.exit
596
- */
597
- exit(): Promise<void>;
598
- /**
599
- * Fetches a JSON manifest using the browser process and returns a Javascript object.
600
- * @param { string } manifestUrl The URL of the manifest to fetch.
601
- * @return {Promise.<any>}
602
- * @tutorial System.fetchManifest
603
- */
604
- fetchManifest(manifestUrl: string): Promise<any>;
605
- /**
606
- * Writes any unwritten cookies data to disk.
607
- * @return {Promise.<void>}
608
- * @tutorial System.flushCookieStore
609
- */
610
- flushCookieStore(): Promise<void>;
611
- /**
612
- * Retrieves an array of data (name, ids, bounds) for all application windows.
613
- * @return {Promise.Array.<WindowInfo>}
614
- * @tutorial System.getAllWindows
615
- */
616
- getAllWindows(): Promise<Array<WindowInfo>>;
617
- /**
618
- * Retrieves an array of data for all applications.
619
- * @return {Promise.Array.<SystemApplicationInfo>}
620
- * @tutorial System.getAllApplications
621
- */
622
- getAllApplications(): Promise<Array<SystemApplicationInfo>>;
623
- /**
624
- * Retrieves the command line argument string that started OpenFin Runtime.
625
- * @return {Promise.<string>}
626
- * @tutorial System.getCommandLineArguments
627
- */
628
- getCommandLineArguments(): Promise<string>;
629
- /**
630
- * Get the current state of the crash reporter.
631
- * @return {Promise.<CrashReporterState>}
632
- * @tutorial System.getCrashReporterState
633
- */
634
- getCrashReporterState(): Promise<OpenFin.CrashReporterState>;
635
- /**
636
- * Start the crash reporter if not already running.
637
- * @param { CrashReporterOptions } options - configure crash reporter
638
- * @return {Promise.<CrashReporterState>}
639
- * @tutorial System.startCrashReporter
640
- */
641
- startCrashReporter(options: OpenFin.CrashReporterOptions | {
642
- diagnosticMode: boolean;
643
- }): Promise<OpenFin.CrashReporterState>;
644
- /**
645
- * Returns a hex encoded hash of the machine id and the currently logged in user name.
646
- * This is the recommended way to uniquely identify a user / machine combination.
647
- * @return {Promise.<string>}
648
- * @tutorial System.getUniqueUserId
649
- * @static
650
- */
651
- getUniqueUserId(): Promise<string>;
652
- /**
653
- * Retrieves a frame info object for the uuid and name passed in
654
- * @param { string } uuid - The UUID of the target.
655
- * @param { string } name - The name of the target.
656
- * @return {Promise.<EntityInfo>}
657
- * @tutorial System.getEntityInfo
658
- */
659
- getEntityInfo(uuid: string, name: string): Promise<EntityInfo>;
660
- /**
661
- * Gets the value of a given environment variable on the computer on which the runtime is installed
662
- * @return {Promise.<string>}
663
- * @tutorial System.getEnvironmentVariable
664
- */
665
- getEnvironmentVariable(envName: string): Promise<string>;
666
- /**
667
- * Get current focused window.
668
- * @return {Promise.<WindowInfo>}
669
- * @tutorial System.getFocusedWindow
670
- */
671
- getFocusedWindow(): Promise<WindowInfo>;
672
- /**
673
- * Returns information about the given app's certification status
674
- * @return {Promise.<CertifiedAppInfo>}
675
- * @tutorial System.isAppCertified
676
- */
677
- isAppCertified(manifestUrl: string): Promise<OpenFin.CertifiedAppInfo>;
678
- /**
679
- * Returns an array of all the installed runtime versions in an object.
680
- * @return {Promise.<string[]>}
681
- * @tutorial System.getInstalledRuntimes
682
- */
683
- getInstalledRuntimes(): Promise<string[]>;
684
- getInstalledApps(): Promise<InstalledApps>;
685
- /**
686
- * Retrieves the contents of the log with the specified filename.
687
- * @param { GetLogRequestType } options A object that id defined by the GetLogRequestType interface
688
- * @return {Promise.<string>}
689
- * @tutorial System.getLog
690
- */
691
- getLog(options: GetLogRequestType): Promise<string>;
692
- /**
693
- * Returns a unique identifier (UUID) provided by the machine.
694
- * @return {Promise.<string>}
695
- * @tutorial System.getMachineId
696
- */
697
- getMachineId(): Promise<string>;
698
- /**
699
- * Returns the minimum (inclusive) logging level that is currently being written to the log.
700
- * @return {Promise.<LogLevel>}
701
- * @tutorial System.getMinLogLevel
702
- */
703
- getMinLogLevel(): Promise<LogLevel>;
704
- /**
705
- * Retrieves an array containing information for each log file.
706
- * @return {Promise.Array<LogInfo>}
707
- * @tutorial System.getLogList
708
- */
709
- getLogList(): Promise<Array<LogInfo>>;
710
- /**
711
- * Retrieves an object that contains data about the monitor setup of the
712
- * computer that the runtime is running on.
713
- * @return {Promise.<MonitorInfo>}
714
- * @tutorial System.getMonitorInfo
715
- */
716
- getMonitorInfo(): Promise<OpenFin.MonitorInfo>;
717
- /**
718
- * Returns the mouse in virtual screen coordinates (left, top).
719
- * @return {Promise.<PointTopLeft>}
720
- * @tutorial System.getMousePosition
721
- */
722
- getMousePosition(): Promise<OpenFin.PointTopLeft>;
723
- /**
724
- * Retrieves an array of all of the runtime processes that are currently
725
- * running. Each element in the array is an object containing the uuid
726
- * and the name of the application to which the process belongs.
727
- * @deprecated Please use our new set of process APIs:
728
- * [Window.getProcessInfo]{@link Window#getProcessInfo}
729
- * [View.getProcessInfo]{@link View#getProcessInfo}
730
- * [Application.getProcessInfo]{@link Application#getProcessInfo}
731
- * [System.getAllProcessInfo]{@link System#getAllProcessInfo}
732
- * @return {Promise.Array.<ProcessInfo>}
733
- * @tutorial System.getProcessList
734
- */
735
- getProcessList(): Promise<Array<ProcessInfo>>;
736
- /**
737
- * Retrieves all process information. This includes the browser process and every process associated to all entities (windows and views).
738
- * @return {Promise.<SystemProcessInfo>}
739
- * @tutorial System.getAllProcessInfo
740
- * @experimental
741
- */
742
- getAllProcessInfo(): Promise<OpenFin.SystemProcessInfo>;
743
- /**
744
- * Retrieves the Proxy settings.
745
- * @return {Promise.<ProxyInfo>}
746
- * @tutorial System.getProxySettings
747
- */
748
- getProxySettings(): Promise<ProxyInfo>;
749
- /**
750
- * Returns information about the running Runtime in an object.
751
- * @return {Promise.<RuntimeInfo>}
752
- * @tutorial System.getRuntimeInfo
753
- */
754
- getRuntimeInfo(): Promise<OpenFin.RuntimeInfo>;
755
- /**
756
- * Returns information about the running RVM in an object.
757
- * @return {Promise.<RVMInfo>}
758
- * @tutorial System.getRvmInfo
759
- */
760
- getRvmInfo(): Promise<OpenFin.RVMInfo>;
761
- /**
762
- * Retrieves system information.
763
- * @return {Promise.<HostSpecs>}
764
- * @tutorial System.getHostSpecs
765
- */
766
- getHostSpecs(): Promise<OpenFin.HostSpecs>;
767
- /**
768
- * Runs an executable or batch file. A path to the file must be included in options.
769
- * <br> A uuid may be optionally provided. If not provided, OpenFin will create a uuid for the new process.
770
- * <br> Note: This method is restricted by default and must be enabled via
771
- * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
772
- * @param { ExternalProcessRequestType } options A object that is defined in the ExternalProcessRequestType interface
773
- * @return {Promise.<Identity>}
774
- * @tutorial System.launchExternalProcess
775
- */
776
- launchExternalProcess(options: OpenFin.ExternalProcessRequestType): Promise<Identity>;
777
- /**
778
- * Monitors a running process. A pid for the process must be included in options.
779
- * <br> A uuid may be optionally provided. If not provided, OpenFin will create a uuid for the new process.
780
- * @param { ExternalProcessInfo } options See tutorial for more details
781
- * @return {Promise.<Identity>}
782
- * @tutorial System.monitorExternalProcess
783
- */
784
- monitorExternalProcess(options: OpenFin.ExternalProcessInfo): Promise<Identity>;
785
- /**
786
- * Writes the passed message into both the log file and the console.
787
- * @param { string } level The log level for the entry. Can be either "info", "warning" or "error"
788
- * @param { string } message The log message text
789
- * @return {Promise.<void>}
790
- * @tutorial System.log
791
- */
792
- log(level: string, message: string): Promise<void>;
793
- /**
794
- * Opens the passed URL in the default web browser. It only supports http(s) and fin(s) protocols by default.
795
- * In order to use other custom protocols, they have to be enabled via
796
- * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
797
- * File protocol and file path are not supported.
798
- * @param { string } url The URL to open
799
- * @return {Promise.<void>}
800
- * @tutorial System.openUrlWithBrowser
801
- */
802
- openUrlWithBrowser(url: string): Promise<void>;
803
- /**
804
- * Removes the process entry for the passed UUID obtained from a prior call
805
- * of fin.System.launchExternalProcess().
806
- * @param { string } uuid The UUID for a process obtained from a prior call to fin.desktop.System.launchExternalProcess()
807
- * @return {Promise.<void>}
808
- * @tutorial System.releaseExternalProcess
809
- */
810
- releaseExternalProcess(uuid: string): Promise<void>;
811
- /**
812
- * Shows the Chromium Developer Tools for the specified window
813
- * @param { Identity } identity This is a object that is defined by the Identity interface
814
- * @return {Promise.<void>}
815
- * @tutorial System.showDeveloperTools
816
- */
817
- showDeveloperTools(identity: Identity): Promise<void>;
818
- /**
819
- * Attempt to close an external process. The process will be terminated if it
820
- * has not closed after the elapsed timeout in milliseconds.<br>
821
- * Note: This method is restricted by default and must be enabled via
822
- * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
823
- * @param { TerminateExternalRequestType } options A object defined in the TerminateExternalRequestType interface
824
- * @return {Promise.<void>}
825
- * @tutorial System.terminateExternalProcess
826
- */
827
- terminateExternalProcess(options: OpenFin.TerminateExternalRequestType): Promise<void>;
828
- /**
829
- * Update the OpenFin Runtime Proxy settings.
830
- * @param { ProxyConfig } options A config object defined in the ProxyConfig interface
831
- * @return {Promise.<void>}
832
- * @tutorial System.updateProxySettings
833
- */
834
- updateProxySettings(options: ProxyConfig): Promise<void>;
835
- /**
836
- * Downloads the given application asset<br>
837
- * Note: This method is restricted by default and must be enabled via
838
- * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
839
- * @param { AppAssetInfo } appAsset App asset object
840
- * @return {Promise.<void>}
841
- * @tutorial System.downloadAsset
842
- */
843
- downloadAsset(appAsset: OpenFin.AppAssetInfo, progressListener: (progress: OpenFin.RuntimeDownloadProgress) => void): Promise<void>;
844
- /**
845
- * Downloads a version of the runtime.
846
- * @param { RuntimeDownloadOptions } options - Download options.
847
- * @param {Function} [progressListener] - called as the runtime is downloaded with progress information.
848
- * @return {Promise.<void>}
849
- * @tutorial System.downloadRuntime
850
- */
851
- downloadRuntime(options: OpenFin.RuntimeDownloadOptions, progressListener: (progress: OpenFin.RuntimeDownloadProgress) => void): Promise<void>;
852
- /**
853
- * Download preload scripts from given URLs
854
- * @param {DownloadPreloadOption[]} scripts - URLs of preload scripts. See tutorial for more details.
855
- * @return {Promise.Array<DownloadPreloadInfo>}
856
- * @tutorial System.downloadPreloadScripts
857
- */
858
- downloadPreloadScripts(scripts: Array<OpenFin.DownloadPreloadOption>): Promise<Array<OpenFin.DownloadPreloadInfo>>;
859
- /**
860
- * Retrieves an array of data (name, ids, bounds) for all application windows.
861
- * @return {Promise.Array.<Identity>}
862
- * @tutorial System.getAllExternalApplications
863
- */
864
- getAllExternalApplications(): Promise<Array<Identity>>;
865
- /**
866
- * Retrieves app asset information.
867
- * @param { AppAssetRequest } options
868
- * @return {Promise.<AppAssetInfo>}
869
- * @tutorial System.getAppAssetInfo
870
- */
871
- getAppAssetInfo(options: OpenFin.AppAssetRequest): Promise<OpenFin.AppAssetInfo>;
872
- /**
873
- * Get additional info of cookies.
874
- * @param { CookieOption } options - See tutorial for more details.
875
- * @return {Promise.Array.<CookieInfo>}
876
- * @tutorial System.getCookies
877
- */
878
- getCookies(options: OpenFin.CookieOption): Promise<Array<OpenFin.CookieInfo>>;
879
- /**
880
- * Set the minimum log level above which logs will be written to the OpenFin log
881
- * @param { LogLevel } The minimum level (inclusive) above which all calls to log will be written
882
- * @return {Promise.<void>}
883
- * @tutorial System.setMinLogLevel
884
- */
885
- setMinLogLevel(level: LogLevel): Promise<void>;
886
- /**
887
- * Retrieves the UUID of the computer on which the runtime is installed
888
- * @param { string } uuid The uuid of the running application
889
- * @return {Promise.<Entity>}
890
- * @tutorial System.resolveUuid
891
- */
892
- resolveUuid(uuid: string): Promise<Entity>;
893
- /**
894
- * Retrieves an array of data for all external applications
895
- * @param { Identity } requestingIdentity This object is described in the Identity typedef
896
- * @param { any } data Any data type to pass to the method
897
- * @return {Promise.<any>}
898
- * @ignore
899
- */
900
- executeOnRemote(requestingIdentity: Identity, data: any): Promise<any>;
901
- /**
902
- * Reads the specifed value from the registry.<br>
903
- * Note: This method is restricted by default and must be enabled via
904
- * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
905
- * @param { string } rootKey - The registry root key.
906
- * @param { string } subkey - The registry key.
907
- * @param { string } value - The registry value name.
908
- * @return {Promise.<RegistryInfo>}
909
- * @tutorial System.readRegistryValue
910
- */
911
- readRegistryValue(rootKey: string, subkey: string, value: string): Promise<RegistryInfo>;
912
- /**
913
- * This function call will register a unique id and produce a token.
914
- * The token can be used to broker an external connection.
915
- * @param { string } uuid - A UUID for the remote connection.
916
- * @return {Promise.<ExternalConnection>}
917
- * @tutorial System.registerExternalConnection
918
- */
919
- registerExternalConnection(uuid: string): Promise<OpenFin.ExternalConnection>;
920
- /**
921
- * Returns the json blob found in the [desktop owner settings](https://openfin.co/documentation/desktop-owner-settings/)
922
- * for the specified service.
923
- * More information about desktop services can be found [here](https://developers.openfin.co/docs/desktop-services).
924
- * @param { ServiceIdentifier } serviceIdentifier An object containing a name key that identifies the service.
925
- * @return {Promise.<ServiceConfiguration>}
926
- * @tutorial System.getServiceConfiguration
927
- */
928
- getServiceConfiguration(serviceIdentifier: OpenFin.ServiceIdentifier): Promise<OpenFin.ServiceConfiguration>;
929
- protected getSystemAppConfig(name: string): Promise<any>;
930
- /**
931
- * Signals the RVM to perform a health check and returns the results as json.
932
- * @return {Promise.<string[]>}
933
- * @tutorial System.runRvmHealthCheck
934
- */
935
- runRvmHealthCheck(): Promise<string[]>;
936
- /**
937
- * Launch application using a manifest URL/path. It differs from Application.startFromManifest in that this API can accept a manifest using the fin protocol.
938
- * @param {string} manifestUrl - The manifest's URL or path.
939
- * @param {RvmLaunchOptions} [opts] - Parameters that the RVM will use.
940
- * @return {Promise.<Manifest>}
941
- * @experimental
942
- * @tutorial System.launchManifest
943
- * @static
944
- */
945
- launchManifest(manifestUrl: string, opts?: OpenFin.RvmLaunchOptions): Promise<OpenFin.Manifest>;
946
- /**
947
- * Query permission of a secured api in current context.
948
- * @param {string} apiName - The full name of a secured API.
949
- * @return {Promise.<QueryPermissionResult>}
950
- * @tutorial System.queryPermissionForCurrentContext
951
- */
952
- queryPermissionForCurrentContext(apiName: string): Promise<OpenFin.QueryPermissionResult>;
953
- enableNativeWindowIntegrationProvider(permissions: any): Promise<OpenFin.NativeWindowIntegrationProviderAuthorization>;
954
- /**
955
- * Register the usage of a component with a platform
956
- * @param {OpenFin.RegisterUsageData} options - Object with data and type
957
- * @return {Promise.<void>}
958
- * @tutorial System.registerUsage
959
- */
960
- registerUsage({ data, type }: OpenFin.RegisterUsageData): Promise<void>;
961
- }
1
+ import { EmitterBase } from '../base';
2
+ import Transport from '../../transport/transport';
3
+ import Identity = OpenFin.Identity;
4
+ import ProxyInfo = OpenFin.ProxyInfo;
5
+ import ProxyConfig = OpenFin.ProxyConfig;
6
+ import SystemEvents = OpenFin.SystemEvents;
7
+ import InstalledApps = OpenFin.InstalledApps;
8
+ import LogInfo = OpenFin.LogInfo;
9
+ import LogLevel = OpenFin.LogLevel;
10
+ import GetLogRequestType = OpenFin.GetLogRequestType;
11
+ import RegistryInfo = OpenFin.RegistryInfo;
12
+ import EntityInfo = OpenFin.EntityInfo;
13
+ import Entity = OpenFin.ApplicationType;
14
+ import ApplicationState = OpenFin.ApplicationState;
15
+ import ApplicationWindowInfo = OpenFin.ApplicationWindowInfo;
16
+ /**
17
+ * AppAssetInfo interface
18
+ * @typedef { object } AppAssetInfo
19
+ * @property { string } src The URL to a zip file containing the package files (executables, dlls, etc…)
20
+ * @property { string } alias The name of the asset
21
+ * @property { string } version The version of the package
22
+ * @property { string } target Specify default executable to launch. This option can be overridden in launchExternalProcess
23
+ * @property { string } args The default command line arguments for the aforementioned target.
24
+ * @property { boolean } mandatory When set to true, the app will fail to load if the asset cannot be downloaded.
25
+ * When set to false, the app will continue to load if the asset cannot be downloaded. (Default: true)
26
+ */
27
+ /**
28
+ * AppAssetRequest interface
29
+ * @typedef { object } AppAssetRequest
30
+ * @property { string } alias The name of the asset
31
+ */
32
+ /**
33
+ * ApplicationState interface
34
+ * @typedef { object } ApplicationState
35
+ * @property { boolean } isPlatform true when the application is a Platform controller
36
+ * @property { boolean } isRunning true when the application is running
37
+ * @property { string } uuid uuid of the application
38
+ * @property { string } parentUuid uuid of the application that launches this application
39
+ */
40
+ /**
41
+ * @typedef { object } ClearCacheOption
42
+ * @summary Clear cache options.
43
+ * @desc These are the options required by the clearCache function.
44
+ *
45
+ * @property {boolean} appcache html5 application cache
46
+ * @property {boolean} cache browser data cache for html files and images
47
+ * @property {boolean} cookies browser cookies
48
+ * @property {boolean} localStorage browser data that can be used across sessions
49
+ */
50
+ /**
51
+ * CookieInfo interface
52
+ * @typedef { object } CookieInfo
53
+ * @property { string } name The name of the cookie
54
+ * @property { string } domain The domain of the cookie
55
+ * @property { string } path The path of the cookie
56
+ */
57
+ /**
58
+ * CookieOption interface
59
+ * @typedef { object } CookieOption
60
+ * @property { string } name The name of the cookie
61
+ */
62
+ /**
63
+ * CpuInfo interface
64
+ * @typedef { object } CpuInfo
65
+ * @property { string } model The model of the cpu
66
+ * @property { number } speed The number in MHz
67
+ * @property { Time } times The numbers of milliseconds the CPU has spent in different modes.
68
+ */
69
+ /**
70
+ * CrashReporterState interface
71
+ * @typedef { object } CrashReporterState
72
+ * @property { boolean } diagnosticsMode In diagnostics mode the crash reporter will send diagnostic logs to
73
+ * the OpenFin reporting service on runtime shutdown
74
+ * @property { boolean } isRunning check if it's running
75
+ */
76
+ /**
77
+ * CrashReporterOptions interface
78
+ * @typedef { object } CrashReporterOptions
79
+ * @property { boolean } diagnosticsMode In diagnostics mode the crash reporter will send diagnostic logs to
80
+ * the OpenFin reporting service on runtime shutdown
81
+ */
82
+ /**
83
+ * DipRect interface
84
+ * @typedef { object } DipRect
85
+ * @property { Rect } dipRect The DIP coordinates
86
+ * @property { Rect } scaledRect The scale coordinates
87
+ */
88
+ /**
89
+ * DipScaleRects interface
90
+ * @typedef { object } DipScaleRects
91
+ * @property { Rect } dipRect The DIP coordinates
92
+ * @property { Rect } scaledRect The scale coordinates
93
+ */
94
+ /**
95
+ * DownloadPreloadInfo interface
96
+ * @typedef { object } DownloadPreloadInfo
97
+ * @desc downloadPreloadScripts function return value
98
+ * @property { string } url url to the preload script
99
+ * @property { string } error error during preload script acquisition
100
+ * @property { boolean } succeess download operation success
101
+ */
102
+ /**
103
+ * DownloadPreloadOption interface
104
+ * @typedef { object } DownloadPreloadOption
105
+ * @desc These are the options object required by the downloadPreloadScripts function
106
+ * @property { string } url url to the preload script
107
+ */
108
+ /**
109
+ * ApplicationType interface
110
+ * @typedef { object } ApplicationType
111
+ * @property { string } type The type of the entity
112
+ * @property { string } uuid The uuid of the entity
113
+ */
114
+ /**
115
+ * EntityInfo interface
116
+ * @typedef { object } EntityInfo
117
+ * @property { string } name The name of the entity
118
+ * @property { string } uuid The uuid of the entity
119
+ * @property { Identity } parent The parent of the entity
120
+ * @property { string } entityType The type of the entity
121
+ */
122
+ /**
123
+ * ExternalApplicationInfo interface
124
+ * @typedef { object } ExternalApplicationInfo
125
+ * @property { Identity } parent The parent identity
126
+ */
127
+ /**
128
+ * ExternalConnection interface
129
+ * @typedef { object } ExternalConnection
130
+ * @property { string } token The token to broker an external connection
131
+ * @property { string } uuid The uuid of the external connection
132
+ */
133
+ /**
134
+ * ExternalProcessRequestType interface
135
+ * @typedef { object } ExternalProcessRequestType
136
+ * @property { string } path The file path to where the running application resides
137
+ * @property { string } arguments The argument passed to the running application
138
+ * @property { LaunchExternalProcessListener } listener This is described in the {LaunchExternalProcessListner} type definition
139
+ * @property { string } initialWindowState Initial window state after launching: 'normal' (default), 'minimized', 'maximized'
140
+ * @property { string } cwd current working directory
141
+ */
142
+ /**
143
+ * FrameInfo interface
144
+ * @typedef { object } FrameInfo
145
+ * @property { string } name The name of the frame
146
+ * @property { string } uuid The uuid of the frame
147
+ * @property { EntityType } entityType The entity type, could be 'window', 'iframe', 'external connection' or 'unknown'
148
+ * @property { Identity } parent The parent identity
149
+ */
150
+ /**
151
+ * GetLogRequestType interface
152
+ * @typedef { object } GetLogRequestType
153
+ * @property { string } name The name of the running application
154
+ * @property { number } endFile The file length of the log file
155
+ * @property { number } sizeLimit The set size limit of the log file
156
+ */
157
+ /**
158
+ * GpuInfo interface
159
+ * @typedef { object } GpuInfo
160
+ * @property { string } name The graphics card name
161
+ */
162
+ /**
163
+ * HostSpecs interface
164
+ * @typedef { object } HostSpecs
165
+ * @property { boolean } aeroGlassEnabled Value to check if Aero Glass theme is supported on Windows platforms
166
+ * @property { string } arch "x86" for 32-bit or "x86_64" for 64-bit
167
+ * @property { Array<CpuInfo> } cpus The same payload as Node's os.cpus()
168
+ * @property { GpuInfo } gpu The graphics card name
169
+ * @property { number } memory The same payload as Node's os.totalmem()
170
+ * @property { string } name The OS name and version/edition
171
+ * @property { boolean } screenSaver Value to check if screensaver is running. Supported on Windows only
172
+ */
173
+ /**
174
+ * Identity interface
175
+ * @typedef { object } Identity
176
+ * @property { string } name Optional - the name of the component
177
+ * @property { string } uuid Universally unique identifier of the application
178
+ */
179
+ /**
180
+ * LogInfo interface
181
+ * @typedef { object } LogInfo
182
+ * @property { string } name The filename of the log
183
+ * @property { number } size The size of the log in bytes
184
+ * @property { string } date The unix time at which the log was created "Thu Jan 08 2015 14:40:30 GMT-0500 (Eastern Standard Time)"
185
+ */
186
+ /**
187
+ * ManifestInfo interface
188
+ * @typedef { object } ManifestInfo
189
+ * @property { string } uuid The uuid of the application
190
+ * @property { string } manifestUrl The runtime manifest URL
191
+ */
192
+ /**
193
+ * MonitorDetails interface
194
+ * @typedef { object } MonitorDetails
195
+ * @property { DipScaleRects } available The available DIP scale coordinates
196
+ * @property { Rect } availableRect The available monitor coordinates
197
+ * @property { string } deviceId The device id of the display
198
+ * @property { boolean } displayDeviceActive true if the display is active
199
+ * @property { number } deviceScaleFactor The device scale factor
200
+ * @property { Rect } monitorRect The monitor coordinates
201
+ * @property { string } name The name of the display
202
+ * @property { Point } dpi The dots per inch
203
+ * @property { DipScaleRects } monitor The monitor coordinates
204
+ */
205
+ /**
206
+ * MonitorInfo interface
207
+ * @typedef { object } MonitorInfo
208
+ * @property { number } deviceScaleFactor The device scale factor
209
+ * @property { Point } dpi The dots per inch
210
+ * @property { Array<MonitorDetails> } nonPrimaryMonitors The array of monitor details
211
+ * @property { MonitorDetails } primaryMonitor The monitor details
212
+ * @property { string } reason always "api-query"
213
+ * @property { TaskBar } taskBar The taskbar on monitor
214
+ * @property { DipRect } virtualScreen The virtual display screen coordinates
215
+ */
216
+ /**
217
+ * @typedef { verbose | info | warning | error | fatal } LogLevel
218
+ * @summary Log verbosity levels.
219
+ * @desc Describes the minimum level (inclusive) above which logs will be written
220
+ *
221
+ * @property { string } verbose all logs written
222
+ * @property { string } info info and above
223
+ * @property { string } warning warning and above
224
+ * @property { string } error error and above
225
+ * @property { string } fatal fatal only, indicates a crash is imminent
226
+ */
227
+ /**
228
+ * PointTopLeft interface
229
+ * @typedef { object } PointTopLeft
230
+ * @property { number } top The mouse top position in virtual screen coordinates
231
+ * @property { number } left The mouse left position in virtual screen coordinates
232
+ */
233
+ /**
234
+ * Point interface
235
+ * @typedef { object } Point
236
+ * @property { number } x The mouse x position
237
+ * @property { number } y The mouse y position
238
+ */
239
+ /**
240
+ * ProcessInfo interface
241
+ * @typedef { object } ProcessInfo
242
+ * @property { number } cpuUsage The percentage of total CPU usage
243
+ * @property { string } name The application name
244
+ * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
245
+ * @property { number } pageFaultCount The number of page faults
246
+ * @property { number } pagedPoolUsage The current paged pool usage in bytes
247
+ * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
248
+ * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
249
+ * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
250
+ * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
251
+ * @property { number } peakWorkingSetSize The peak working set size in bytes
252
+ * @property { number } processId The native process identifier
253
+ * @property { string } uuid The application UUID
254
+ * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
255
+ */
256
+ /**
257
+ * SystemProcessInfo interface
258
+ * @typedef { object } SystemProcessInfo
259
+ * @property { ProcessDetails } browserProcess Info on browser process
260
+ * @property { Array<AppProcessInfo> } apps Array of apps and their process info
261
+ */
262
+ /**
263
+ * AppProcessInfo interface
264
+ * @typedef { object } AppProcessInfo
265
+ * @property { string } uuid The uuid of the application
266
+ * @property { Array<EntityProcessDetails> } entities Array of process info for each window and view for the application
267
+ */
268
+ /**
269
+ * EntityProcessDetails interface
270
+ * @typedef { object } EntityProcessDetails
271
+ * @property { string } uuid The uuid for the entity
272
+ * @property { string } name The name for the entity
273
+ * @property { string } url URL associated with the entity
274
+ * @property { string } entityType Type for the entity: window or view
275
+ * @property { number } cpuUsage The percentage of total CPU usage
276
+ * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
277
+ * @property { number } pageFaultCount The number of page faults
278
+ * @property { number } pagedPoolUsage The current paged pool usage in bytes
279
+ * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
280
+ * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
281
+ * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
282
+ * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
283
+ * @property { number } peakWorkingSetSize The peak working set size in bytes
284
+ * @property { number } privateSetSize The current working set size (not shared)
285
+ * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
286
+ * @property { number } pid The native process identifier
287
+ * @property { Array<FrameProcessDetails> } frames Array of process info for each iframe corresponeding to the entity
288
+ */
289
+ /**
290
+ * FrameProcessDetails interface
291
+ * @typedef { object } FrameProcessDetails
292
+ * @property { string } url Current URL associated with the process
293
+ * @property { string } entityType Type for the frame
294
+ * @property { number } cpuUsage The percentage of total CPU usage
295
+ * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
296
+ * @property { number } pageFaultCount The number of page faults
297
+ * @property { number } pagedPoolUsage The current paged pool usage in bytes
298
+ * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
299
+ * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
300
+ * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
301
+ * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
302
+ * @property { number } peakWorkingSetSize The peak working set size in bytes
303
+ * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
304
+ * @property { number } pid The native process identifier
305
+ */
306
+ /**
307
+ * ProcessDetails interface
308
+ * @typedef { object } ProcessDetails
309
+ * @property { number } cpuUsage The percentage of total CPU usage
310
+ * @property { number } nonPagedPoolUsage The current nonpaged pool usage in bytes
311
+ * @property { number } pageFaultCount The number of page faults
312
+ * @property { number } pagedPoolUsage The current paged pool usage in bytes
313
+ * @property { number } pagefileUsage The total amount of memory in bytes that the memory manager has committed
314
+ * @property { number } peakNonPagedPoolUsage The peak nonpaged pool usage in bytes
315
+ * @property { number } peakPagedPoolUsage The peak paged pool usage in bytes
316
+ * @property { number } peakPagefileUsage The peak value in bytes of pagefileUsage during the lifetime of this process
317
+ * @property { number } peakWorkingSetSize The peak working set size in bytes
318
+ * @property { number } workingSetSize The current working set size (both shared and private data) in bytes
319
+ * @property { number } pid The native process identifier
320
+ */
321
+ /**
322
+ * ProxyConfig interface
323
+ * @typedef { object } ProxyConfig
324
+ * @property { string } proxyAddress The configured proxy address
325
+ * @property { number } proxyPort The configured proxy port
326
+ * @property { string } type The proxy Type
327
+ */
328
+ /**
329
+ * ProxyInfo interface
330
+ * @typedef { object } ProxyInfo
331
+ * @property { ProxyConfig } config The proxy config
332
+ * @property { ProxySystemInfo } system The proxy system info
333
+ */
334
+ /**
335
+ * QueryPermissionResult interface
336
+ * @typedef { object } QueryPermissionResult
337
+ * @property { string } permission The full name of a secured API
338
+ * @property { string } state 'granted' | 'denied' | 'unavailable'
339
+ * @property { boolean } granted true if permission is granted
340
+ * @property { object } [rawValue] The value of permission
341
+ */
342
+ /**
343
+ * ProxySystemInfo interface
344
+ * @typedef { object } ProxySystemInfo
345
+ * @property { string } autoConfigUrl The auto configuration url
346
+ * @property { string } bypass The proxy bypass info
347
+ * @property { boolean } enabled Value to check if a proxy is enabled
348
+ * @property { string } proxy The proxy info
349
+ */
350
+ /**
351
+ * Rect interface
352
+ * @typedef { object } Rect
353
+ * @property { number } bottom The bottom-most coordinate
354
+ * @property { number } left The left-most coordinate
355
+ * @property { number } right The right-most coordinate
356
+ * @property { number } top The top-most coordinate
357
+ */
358
+ /**
359
+ * RegistryInfo interface
360
+ * @typedef { object } RegistryInfo
361
+ * @property { any } data The registry data
362
+ * @property { string } rootKey The registry root key
363
+ * @property { string } subkey The registry key
364
+ * @property { string } type The registry type
365
+ * @property { string } value The registry value name
366
+ */
367
+ /**
368
+ * RuntimeDownloadOptions interface
369
+ * @typedef { object } RuntimeDownloadOptions
370
+ * @desc These are the options object required by the downloadRuntime function.
371
+ * @property { string } version The given version to download
372
+ */
373
+ /**
374
+ * RuntimeInfo interface
375
+ * @typedef { object } RuntimeInfo
376
+ * @property { string } architecture The runtime build architecture
377
+ * @property { string } manifestUrl The runtime manifest URL
378
+ * @property { number } port The runtime websocket port
379
+ * @property { string } securityRealm The runtime security realm
380
+ * @property { string } version The runtime version
381
+ * @property { object } args the command line argument used to start the Runtime
382
+ * @property { string } chromeVersion The chrome version
383
+ * @property { string } electronVersion The electron version
384
+ */
385
+ /**
386
+ * RVMInfo interface
387
+ * @typedef { object } RVMInfo
388
+ * @property { string } action The name of action: "get-rvm-info"
389
+ * @property { string } appLogDirectory The app log directory
390
+ * @property { string } path The path of OpenfinRVM.exe
391
+ * @property { string } 'start-time' The start time of RVM
392
+ * @property { string } version The version of RVM
393
+ * @property { string } 'working-dir' The working directory
394
+ */
395
+ /**
396
+ * RvmLaunchOptions interface
397
+ * @typedef { object } RvmLaunchOptions
398
+ * @property { boolean } [noUi] true if no UI when launching
399
+ * @property { object } [userAppConfigArgs] The user app configuration args
400
+ */
401
+ /**
402
+ * ServiceIdentifier interface
403
+ * @typedef { object } ServiceIdentifier
404
+ * @property { string } name The name of the service
405
+ */
406
+ /**
407
+ * ServiceConfiguration interface
408
+ * @typedef { object } ServiceConfiguration
409
+ * @property { object } config The service configuration
410
+ * @property { string } name The name of the service
411
+ */
412
+ /**
413
+ * ShortCutConfig interface
414
+ * @typedef { object } ShortCutConfig
415
+ * @property { boolean } desktop true if application has a shortcut on the desktop
416
+ * @property { boolean } startMenu true if application has shortcut in the start menu
417
+ * @property { boolean } systemStartup true if application will be launched on system startup
418
+ */
419
+ /**
420
+ * SubOptions interface
421
+ * @typedef { Object } SubOptions
422
+ * @property { number } timestamp The event timestamp
423
+ */
424
+ /**
425
+ * TaskBar interface
426
+ * @typedef { object } TaskBar
427
+ * @property { string } edge which edge of a monitor the taskbar is on
428
+ * @property { Rect } rect The taskbar coordinates
429
+ */
430
+ /**
431
+ * TerminateExternalRequestType interface
432
+ * @typedef { object } TerminateExternalRequestType
433
+ * @property { string } uuid The uuid of the running application
434
+ * @property { number } timeout Time out period before the running application terminates
435
+ * @property { boolean } killtree Value to terminate the running application
436
+ */
437
+ /**
438
+ * Time interface
439
+ * @typedef { object } Time
440
+ * @property { number } user The number of milliseconds the CPU has spent in user mode
441
+ * @property { number } nice The number of milliseconds the CPU has spent in nice mode
442
+ * @property { number } sys The number of milliseconds the CPU has spent in sys mode
443
+ * @property { number } idle The number of milliseconds the CPU has spent in idle mode
444
+ * @property { number } irq The number of milliseconds the CPU has spent in irq mode
445
+ */
446
+ /**
447
+ * TrayInfo interface
448
+ * @typedef { object } TrayInfo
449
+ * @property { Bounds } bounds The bound of tray icon in virtual screen pixels
450
+ * @property { MonitorInfo } monitorInfo Please see fin.System.getMonitorInfo for more information
451
+ * @property { number } x copy of bounds.x
452
+ * @property { number } y copy of bounds.y
453
+ */
454
+ /**
455
+ * WindowDetail interface
456
+ * @typedef { object } WindowDetail
457
+ * @property { number } bottom The bottom-most coordinate of the window
458
+ * @property { number } height The height of the window
459
+ * @property { boolean } isShowing Value to check if the window is showing
460
+ * @property { number } left The left-most coordinate of the window
461
+ * @property { string } name The name of the window
462
+ * @property { number } right The right-most coordinate of the window
463
+ * @property { string } state The window state
464
+ * @property { number } top The top-most coordinate of the window
465
+ * @property { number } width The width of the window
466
+ */
467
+ /**
468
+ * ApplicationWindowInfo interface
469
+ * @typedef { object } ApplicationWindowInfo
470
+ * @property { Array<WindowDetail> } childWindows The array of child windows details
471
+ * @property { WindowDetail } mainWindow The main window detail
472
+ * @property { string } uuid The uuid of the application
473
+ */
474
+ /**
475
+ * CertifiedAppInfo interface
476
+ * @typedef { object } CertifiedAppInfo
477
+ * @property { boolean } isRunning true if the app is running
478
+ * @property { boolean } [isOptedIntoCertfiedApp] true if the app has opted into certification
479
+ * @property { boolean } [isCertified] true if the app is certified
480
+ * @property { boolean } [isSSLCertified] true if the app manifest's SSL certificate is valid
481
+ * @property { boolean } [isPresentInAppDirectory] true if the app is present in the OpenFin app directory
482
+ */
483
+ /**
484
+ * An object representing the core of OpenFin Runtime. Allows the developer
485
+ * to perform system-level actions, such as accessing logs, viewing processes,
486
+ * clearing the cache and exiting the runtime as well as listen to <a href="tutorial-System.EventEmitter.html">system events</a>.
487
+ * @namespace
488
+ */
489
+ export default class System extends EmitterBase<SystemEvents> {
490
+ constructor(wire: Transport);
491
+ private sendExternalProcessRequest;
492
+ /**
493
+ * Adds a listener to the end of the listeners array for the specified event.
494
+ * @param { string | symbol } eventType - The type of the event.
495
+ * @param { Function } listener - Called whenever an event of the specified type occurs.
496
+ * @param { SubOptions } [options] - Option to support event timestamps.
497
+ * @return {Promise.<this>}
498
+ * @function addListener
499
+ * @memberof System
500
+ * @instance
501
+ * @tutorial System.EventEmitter
502
+ */
503
+ /**
504
+ * Adds a listener to the end of the listeners array for the specified event.
505
+ * @param { string | symbol } eventType - The type of the event.
506
+ * @param { Function } listener - Called whenever an event of the specified type occurs.
507
+ * @param { SubOptions } [options] - Option to support event timestamps.
508
+ * @return {Promise.<this>}
509
+ * @function on
510
+ * @memberof System
511
+ * @instance
512
+ * @tutorial System.EventEmitter
513
+ */
514
+ /**
515
+ * Adds a one time listener for the event. The listener is invoked only the first time the event is fired, after which it is removed.
516
+ * @param { string | symbol } eventType - The type of the event.
517
+ * @param { Function } listener - The callback function.
518
+ * @param { SubOptions } [options] - Option to support event timestamps.
519
+ * @return {Promise.<this>}
520
+ * @function once
521
+ * @memberof System
522
+ * @instance
523
+ * @tutorial System.EventEmitter
524
+ */
525
+ /**
526
+ * Adds a listener to the beginning of the listeners array for the specified event.
527
+ * @param { string | symbol } eventType - The type of the event.
528
+ * @param { Function } listener - The callback function.
529
+ * @param { SubOptions } [options] - Option to support event timestamps.
530
+ * @return {Promise.<this>}
531
+ * @function prependListener
532
+ * @memberof System
533
+ * @instance
534
+ * @tutorial System.EventEmitter
535
+ */
536
+ /**
537
+ * Adds a one time listener for the event. The listener is invoked only the first time the event is fired, after which it is removed.
538
+ * The listener is added to the beginning of the listeners array.
539
+ * @param { string | symbol } eventType - The type of the event.
540
+ * @param { Function } listener - The callback function.
541
+ * @param { SubOptions } [options] - Option to support event timestamps.
542
+ * @return {Promise.<this>}
543
+ * @function prependOnceListener
544
+ * @memberof System
545
+ * @instance
546
+ * @tutorial System.EventEmitter
547
+ */
548
+ /**
549
+ * Remove a listener from the listener array for the specified event.
550
+ * Caution: Calling this method changes the array indices in the listener array behind the listener.
551
+ * @param { string | symbol } eventType - The type of the event.
552
+ * @param { Function } listener - The callback function.
553
+ * @param { SubOptions } [options] - Option to support event timestamps.
554
+ * @return {Promise.<this>}
555
+ * @function removeListener
556
+ * @memberof System
557
+ * @instance
558
+ * @tutorial System.EventEmitter
559
+ */
560
+ /**
561
+ * Removes all listeners, or those of the specified event.
562
+ * @param { string | symbol } [eventType] - The type of the event.
563
+ * @return {Promise.<this>}
564
+ * @function removeAllListeners
565
+ * @memberof System
566
+ * @instance
567
+ * @tutorial System.EventEmitter
568
+ */
569
+ /**
570
+ * Returns the version of the runtime. The version contains the major, minor,
571
+ * build and revision numbers.
572
+ * @return {Promise.<string>}
573
+ * @tutorial System.getVersion
574
+ */
575
+ getVersion(): Promise<string>;
576
+ /**
577
+ * Clears cached data containing application resource
578
+ * files (images, HTML, JavaScript files), cookies, and items stored in the
579
+ * Local Storage.
580
+ * @param { ClearCacheOption } options - See tutorial for more details.
581
+ * @return {Promise.<void>}
582
+ * @tutorial System.clearCache
583
+ */
584
+ clearCache(options: OpenFin.ClearCacheOption): Promise<void>;
585
+ /**
586
+ * Clears all cached data when OpenFin Runtime exits.
587
+ * @return {Promise.<void>}
588
+ * @tutorial System.deleteCacheOnExit
589
+ */
590
+ deleteCacheOnExit(): Promise<void>;
591
+ /**
592
+ * Exits the Runtime.
593
+ * @return {Promise.<void>}
594
+ * @tutorial System.exit
595
+ */
596
+ exit(): Promise<void>;
597
+ /**
598
+ * Fetches a JSON manifest using the browser process and returns a Javascript object.
599
+ * @param { string } manifestUrl The URL of the manifest to fetch.
600
+ * @return {Promise.<any>}
601
+ * @tutorial System.fetchManifest
602
+ */
603
+ fetchManifest(manifestUrl: string): Promise<any>;
604
+ /**
605
+ * Writes any unwritten cookies data to disk.
606
+ * @return {Promise.<void>}
607
+ * @tutorial System.flushCookieStore
608
+ */
609
+ flushCookieStore(): Promise<void>;
610
+ /**
611
+ * Retrieves an array of data (name, ids, bounds) for all application windows.
612
+ * @return {Promise.Array.<ApplicationWindowInfo>}
613
+ * @tutorial System.getAllWindows
614
+ */
615
+ getAllWindows(): Promise<Array<ApplicationWindowInfo>>;
616
+ /**
617
+ * Retrieves an array of data for all applications.
618
+ * @return {Promise.Array.<ApplicationState>}
619
+ * @tutorial System.getAllApplications
620
+ */
621
+ getAllApplications(): Promise<Array<ApplicationState>>;
622
+ /**
623
+ * Retrieves the command line argument string that started OpenFin Runtime.
624
+ * @return {Promise.<string>}
625
+ * @tutorial System.getCommandLineArguments
626
+ */
627
+ getCommandLineArguments(): Promise<string>;
628
+ /**
629
+ * Get the current state of the crash reporter.
630
+ * @return {Promise.<CrashReporterState>}
631
+ * @tutorial System.getCrashReporterState
632
+ */
633
+ getCrashReporterState(): Promise<OpenFin.CrashReporterState>;
634
+ /**
635
+ * Start the crash reporter if not already running.
636
+ * @param { CrashReporterOptions } options - configure crash reporter
637
+ * @return {Promise.<CrashReporterState>}
638
+ * @tutorial System.startCrashReporter
639
+ */
640
+ startCrashReporter(options: OpenFin.CrashReporterOptions | {
641
+ diagnosticMode: boolean;
642
+ }): Promise<OpenFin.CrashReporterState>;
643
+ /**
644
+ * Returns a hex encoded hash of the machine id and the currently logged in user name.
645
+ * This is the recommended way to uniquely identify a user / machine combination.
646
+ * @return {Promise.<string>}
647
+ * @tutorial System.getUniqueUserId
648
+ * @static
649
+ */
650
+ getUniqueUserId(): Promise<string>;
651
+ /**
652
+ * Retrieves a frame info object for the uuid and name passed in
653
+ * @param { string } uuid - The UUID of the target.
654
+ * @param { string } name - The name of the target.
655
+ * @return {Promise.<EntityInfo>}
656
+ * @tutorial System.getEntityInfo
657
+ */
658
+ getEntityInfo(uuid: string, name: string): Promise<EntityInfo>;
659
+ /**
660
+ * Gets the value of a given environment variable on the computer on which the runtime is installed
661
+ * @return {Promise.<string>}
662
+ * @tutorial System.getEnvironmentVariable
663
+ */
664
+ getEnvironmentVariable(envName: string): Promise<string>;
665
+ /**
666
+ * Get current focused window.
667
+ * @return {Promise.<Identity | null>}
668
+ * @tutorial System.getFocusedWindow
669
+ */
670
+ getFocusedWindow(): Promise<OpenFin.Identity | null>;
671
+ /**
672
+ * Returns information about the given app's certification status
673
+ * @return {Promise.<CertifiedAppInfo>}
674
+ * @tutorial System.isAppCertified
675
+ */
676
+ isAppCertified(manifestUrl: string): Promise<OpenFin.CertifiedAppInfo>;
677
+ /**
678
+ * Returns an array of all the installed runtime versions in an object.
679
+ * @return {Promise.<string[]>}
680
+ * @tutorial System.getInstalledRuntimes
681
+ */
682
+ getInstalledRuntimes(): Promise<string[]>;
683
+ getInstalledApps(): Promise<InstalledApps>;
684
+ /**
685
+ * Retrieves the contents of the log with the specified filename.
686
+ * @param { GetLogRequestType } options A object that id defined by the GetLogRequestType interface
687
+ * @return {Promise.<string>}
688
+ * @tutorial System.getLog
689
+ */
690
+ getLog(options: GetLogRequestType): Promise<string>;
691
+ /**
692
+ * Returns a unique identifier (UUID) provided by the machine.
693
+ * @return {Promise.<string>}
694
+ * @tutorial System.getMachineId
695
+ */
696
+ getMachineId(): Promise<string>;
697
+ /**
698
+ * Returns the minimum (inclusive) logging level that is currently being written to the log.
699
+ * @return {Promise.<LogLevel>}
700
+ * @tutorial System.getMinLogLevel
701
+ */
702
+ getMinLogLevel(): Promise<LogLevel>;
703
+ /**
704
+ * Retrieves an array containing information for each log file.
705
+ * @return {Promise.Array<LogInfo>}
706
+ * @tutorial System.getLogList
707
+ */
708
+ getLogList(): Promise<Array<LogInfo>>;
709
+ /**
710
+ * Retrieves an object that contains data about the monitor setup of the
711
+ * computer that the runtime is running on.
712
+ * @return {Promise.<MonitorInfo>}
713
+ * @tutorial System.getMonitorInfo
714
+ */
715
+ getMonitorInfo(): Promise<OpenFin.MonitorInfo>;
716
+ /**
717
+ * Returns the mouse in virtual screen coordinates (left, top).
718
+ * @return {Promise.<PointTopLeft>}
719
+ * @tutorial System.getMousePosition
720
+ */
721
+ getMousePosition(): Promise<OpenFin.PointTopLeft>;
722
+ /**
723
+ * Retrieves an array of all of the runtime processes that are currently
724
+ * running. Each element in the array is an object containing the uuid
725
+ * and the name of the application to which the process belongs.
726
+ * @deprecated Please use our new set of process APIs:
727
+ * [Window.getProcessInfo]{@link Window#getProcessInfo}
728
+ * [View.getProcessInfo]{@link View#getProcessInfo}
729
+ * [Application.getProcessInfo]{@link Application#getProcessInfo}
730
+ * [System.getAllProcessInfo]{@link System#getAllProcessInfo}
731
+ * @return {Promise.Array.<ProcessInfo>}
732
+ * @tutorial System.getProcessList
733
+ */
734
+ getProcessList(): Promise<Array<any>>;
735
+ /**
736
+ * Retrieves all process information. This includes the browser process and every process associated to all entities (windows and views).
737
+ * @return {Promise.<SystemProcessInfo>}
738
+ * @tutorial System.getAllProcessInfo
739
+ * @experimental
740
+ */
741
+ getAllProcessInfo(): Promise<OpenFin.SystemProcessInfo>;
742
+ /**
743
+ * Retrieves the Proxy settings.
744
+ * @return {Promise.<ProxyInfo>}
745
+ * @tutorial System.getProxySettings
746
+ */
747
+ getProxySettings(): Promise<ProxyInfo>;
748
+ /**
749
+ * Returns information about the running Runtime in an object.
750
+ * @return {Promise.<RuntimeInfo>}
751
+ * @tutorial System.getRuntimeInfo
752
+ */
753
+ getRuntimeInfo(): Promise<OpenFin.RuntimeInfo>;
754
+ /**
755
+ * Returns information about the running RVM in an object.
756
+ * @return {Promise.<RVMInfo>}
757
+ * @tutorial System.getRvmInfo
758
+ */
759
+ getRvmInfo(): Promise<OpenFin.RVMInfo>;
760
+ /**
761
+ * Retrieves system information.
762
+ * @return {Promise.<HostSpecs>}
763
+ * @tutorial System.getHostSpecs
764
+ */
765
+ getHostSpecs(): Promise<OpenFin.HostSpecs>;
766
+ /**
767
+ * Runs an executable or batch file. A path to the file must be included in options.
768
+ * <br> A uuid may be optionally provided. If not provided, OpenFin will create a uuid for the new process.
769
+ * <br> Note: This method is restricted by default and must be enabled via
770
+ * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
771
+ * @param { ExternalProcessRequestType } options A object that is defined in the ExternalProcessRequestType interface
772
+ * @return {Promise.<Identity>}
773
+ * @tutorial System.launchExternalProcess
774
+ */
775
+ launchExternalProcess(options: OpenFin.ExternalProcessRequestType): Promise<Identity>;
776
+ /**
777
+ * Monitors a running process. A pid for the process must be included in options.
778
+ * <br> A uuid may be optionally provided. If not provided, OpenFin will create a uuid for the new process.
779
+ * @param { ExternalProcessInfo } options See tutorial for more details
780
+ * @return {Promise.<Identity>}
781
+ * @tutorial System.monitorExternalProcess
782
+ */
783
+ monitorExternalProcess(options: OpenFin.ExternalProcessInfo): Promise<Identity>;
784
+ /**
785
+ * Writes the passed message into both the log file and the console.
786
+ * @param { string } level The log level for the entry. Can be either "info", "warning" or "error"
787
+ * @param { string } message The log message text
788
+ * @return {Promise.<void>}
789
+ * @tutorial System.log
790
+ */
791
+ log(level: string, message: string): Promise<void>;
792
+ /**
793
+ * Opens the passed URL in the default web browser. It only supports http(s) and fin(s) protocols by default.
794
+ * In order to use other custom protocols, they have to be enabled via
795
+ * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
796
+ * File protocol and file path are not supported.
797
+ * @param { string } url The URL to open
798
+ * @return {Promise.<void>}
799
+ * @tutorial System.openUrlWithBrowser
800
+ */
801
+ openUrlWithBrowser(url: string): Promise<void>;
802
+ /**
803
+ * Removes the process entry for the passed UUID obtained from a prior call
804
+ * of fin.System.launchExternalProcess().
805
+ * @param { string } uuid The UUID for a process obtained from a prior call to fin.desktop.System.launchExternalProcess()
806
+ * @return {Promise.<void>}
807
+ * @tutorial System.releaseExternalProcess
808
+ */
809
+ releaseExternalProcess(uuid: string): Promise<void>;
810
+ /**
811
+ * Shows the Chromium Developer Tools for the specified window
812
+ * @param { Identity } identity This is a object that is defined by the Identity interface
813
+ * @return {Promise.<void>}
814
+ * @tutorial System.showDeveloperTools
815
+ */
816
+ showDeveloperTools(identity: Identity): Promise<void>;
817
+ /**
818
+ * Attempt to close an external process. The process will be terminated if it
819
+ * has not closed after the elapsed timeout in milliseconds.<br>
820
+ * Note: This method is restricted by default and must be enabled via
821
+ * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
822
+ * @param { TerminateExternalRequestType } options A object defined in the TerminateExternalRequestType interface
823
+ * @return {Promise.<void>}
824
+ * @tutorial System.terminateExternalProcess
825
+ */
826
+ terminateExternalProcess(options: OpenFin.TerminateExternalRequestType): Promise<void>;
827
+ /**
828
+ * Update the OpenFin Runtime Proxy settings.
829
+ * @param { ProxyConfig } options A config object defined in the ProxyConfig interface
830
+ * @return {Promise.<void>}
831
+ * @tutorial System.updateProxySettings
832
+ */
833
+ updateProxySettings(options: ProxyConfig): Promise<void>;
834
+ /**
835
+ * Downloads the given application asset<br>
836
+ * Note: This method is restricted by default and must be enabled via
837
+ * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
838
+ * @param { AppAssetInfo } appAsset App asset object
839
+ * @return {Promise.<void>}
840
+ * @tutorial System.downloadAsset
841
+ */
842
+ downloadAsset(appAsset: OpenFin.AppAssetInfo, progressListener: (progress: OpenFin.RuntimeDownloadProgress) => void): Promise<void>;
843
+ /**
844
+ * Downloads a version of the runtime.
845
+ * @param { RuntimeDownloadOptions } options - Download options.
846
+ * @param {Function} [progressListener] - called as the runtime is downloaded with progress information.
847
+ * @return {Promise.<void>}
848
+ * @tutorial System.downloadRuntime
849
+ */
850
+ downloadRuntime(options: OpenFin.RuntimeDownloadOptions, progressListener: (progress: OpenFin.RuntimeDownloadProgress) => void): Promise<void>;
851
+ /**
852
+ * Download preload scripts from given URLs
853
+ * @param {DownloadPreloadOption[]} scripts - URLs of preload scripts. See tutorial for more details.
854
+ * @return {Promise.Array<DownloadPreloadInfo>}
855
+ * @tutorial System.downloadPreloadScripts
856
+ */
857
+ downloadPreloadScripts(scripts: Array<OpenFin.DownloadPreloadOption>): Promise<Array<OpenFin.DownloadPreloadInfo>>;
858
+ /**
859
+ * Retrieves an array of data (name, ids, bounds) for all application windows.
860
+ * @return {Promise.Array.<Identity>}
861
+ * @tutorial System.getAllExternalApplications
862
+ */
863
+ getAllExternalApplications(): Promise<Array<Identity>>;
864
+ /**
865
+ * Retrieves app asset information.
866
+ * @param { AppAssetRequest } options
867
+ * @return {Promise.<AppAssetInfo>}
868
+ * @tutorial System.getAppAssetInfo
869
+ */
870
+ getAppAssetInfo(options: OpenFin.AppAssetRequest): Promise<OpenFin.AppAssetInfo>;
871
+ /**
872
+ * Get additional info of cookies.
873
+ * @param { CookieOption } options - See tutorial for more details.
874
+ * @return {Promise.Array.<CookieInfo>}
875
+ * @tutorial System.getCookies
876
+ */
877
+ getCookies(options: OpenFin.CookieOption): Promise<Array<OpenFin.CookieInfo>>;
878
+ /**
879
+ * Set the minimum log level above which logs will be written to the OpenFin log
880
+ * @param { LogLevel } The minimum level (inclusive) above which all calls to log will be written
881
+ * @return {Promise.<void>}
882
+ * @tutorial System.setMinLogLevel
883
+ */
884
+ setMinLogLevel(level: LogLevel): Promise<void>;
885
+ /**
886
+ * Retrieves the UUID of the computer on which the runtime is installed
887
+ * @param { string } uuid The uuid of the running application
888
+ * @return {Promise.<ApplicationType>}
889
+ * @tutorial System.resolveUuid
890
+ */
891
+ resolveUuid(uuid: string): Promise<Entity>;
892
+ /**
893
+ * Retrieves an array of data for all external applications
894
+ * @param { Identity } requestingIdentity This object is described in the Identity typedef
895
+ * @param { any } data Any data type to pass to the method
896
+ * @return {Promise.<any>}
897
+ * @ignore
898
+ */
899
+ executeOnRemote(requestingIdentity: Identity, data: any): Promise<any>;
900
+ /**
901
+ * Reads the specifed value from the registry.<br>
902
+ * Note: This method is restricted by default and must be enabled via
903
+ * <a href="https://developers.openfin.co/docs/api-security">API security settings</a>.
904
+ * @param { string } rootKey - The registry root key.
905
+ * @param { string } subkey - The registry key.
906
+ * @param { string } value - The registry value name.
907
+ * @return {Promise.<RegistryInfo>}
908
+ * @tutorial System.readRegistryValue
909
+ */
910
+ readRegistryValue(rootKey: string, subkey: string, value: string): Promise<RegistryInfo>;
911
+ /**
912
+ * This function call will register a unique id and produce a token.
913
+ * The token can be used to broker an external connection.
914
+ * @param { string } uuid - A UUID for the remote connection.
915
+ * @return {Promise.<ExternalConnection>}
916
+ * @tutorial System.registerExternalConnection
917
+ */
918
+ registerExternalConnection(uuid: string): Promise<OpenFin.ExternalConnection>;
919
+ /**
920
+ * Returns the json blob found in the [desktop owner settings](https://openfin.co/documentation/desktop-owner-settings/)
921
+ * for the specified service.
922
+ * More information about desktop services can be found [here](https://developers.openfin.co/docs/desktop-services).
923
+ * @param { ServiceIdentifier } serviceIdentifier An object containing a name key that identifies the service.
924
+ * @return {Promise.<ServiceConfiguration>}
925
+ * @tutorial System.getServiceConfiguration
926
+ */
927
+ getServiceConfiguration(serviceIdentifier: OpenFin.ServiceIdentifier): Promise<OpenFin.ServiceConfiguration>;
928
+ protected getSystemAppConfig(name: string): Promise<any>;
929
+ /**
930
+ * Signals the RVM to perform a health check and returns the results as json.
931
+ * @return {Promise.<string[]>}
932
+ * @tutorial System.runRvmHealthCheck
933
+ */
934
+ runRvmHealthCheck(): Promise<string[]>;
935
+ /**
936
+ * Launch application using a manifest URL/path. It differs from Application.startFromManifest in that this API can accept a manifest using the fin protocol.
937
+ * @param {string} manifestUrl - The manifest's URL or path.
938
+ * @param {RvmLaunchOptions} [opts] - Parameters that the RVM will use.
939
+ * @return {Promise.<Manifest>}
940
+ * @experimental
941
+ * @tutorial System.launchManifest
942
+ * @static
943
+ */
944
+ launchManifest(manifestUrl: string, opts?: OpenFin.RvmLaunchOptions): Promise<OpenFin.Manifest>;
945
+ /**
946
+ * Query permission of a secured api in current context.
947
+ * @param {string} apiName - The full name of a secured API.
948
+ * @return {Promise.<QueryPermissionResult>}
949
+ * @tutorial System.queryPermissionForCurrentContext
950
+ */
951
+ queryPermissionForCurrentContext(apiName: string): Promise<OpenFin.QueryPermissionResult>;
952
+ enableNativeWindowIntegrationProvider(permissions: any): Promise<OpenFin.NativeWindowIntegrationProviderAuthorization>;
953
+ /**
954
+ * (Internal) Register the usage of a component with a platform
955
+ * @param {OpenFin.RegisterUsageData} options - Object with data and type
956
+ * @return {Promise.<void>}
957
+ * @tutorial System.registerUsage
958
+ */
959
+ registerUsage({ data, type }: OpenFin.RegisterUsageData): Promise<void>;
960
+ }