@openfin/core 41.100.28 → 41.100.30

Sign up to get free protection for your applications and to get access to all the features.
package/README.md CHANGED
@@ -1,52 +1,54 @@
1
- ℹ️ *Note: `@openfin/core` is changing the structure of its output. See [v33 Bundling Changes](#v33-bundling-changes)*
2
- ---
1
+ ## ℹ️ _Note: `@openfin/core` is changing the structure of its output. See [v33 Bundling Changes](#v33-bundling-changes)_
3
2
 
4
3
  # OpenFin Core
5
4
 
6
- This package contains the type definitions and API entry points for the OpenFin Core API. Start here to develop OpenFin applications in TypeScript.
5
+ This package contains the type definitions and API entry points for the OpenFin Core API. Start here to develop OpenFin applications in TypeScript.
7
6
 
8
7
  Libraries are also available for the following frameworks:
9
8
 
10
- * [Node.js](https://www.npmjs.com/package/openfin-adapter)
11
- * [.Net](https://developers.openfin.co/of-docs/docs/net-api)
12
- * [Java](https://developers.openfin.co/of-docs/docs/java-api)
9
+ - [Node.js](https://www.npmjs.com/package/openfin-adapter)
10
+ - [.Net](https://developers.openfin.co/of-docs/docs/net-api)
11
+ - [Java](https://developers.openfin.co/of-docs/docs/java-api)
13
12
 
14
13
  ## Installation
15
14
 
16
15
  This package cannot be installed as a dev dependency because it is not types-only.
17
16
 
18
17
  With npm:
18
+
19
19
  ```bash
20
20
  $ npm i -S @openfin/core
21
21
  ```
22
22
 
23
23
  With yarn:
24
+
24
25
  ```bash
25
26
  $ yarn add @openfin/core
26
27
  ```
27
28
 
28
29
  ## Usage
29
30
 
30
- The `fin` export is the primary API entry point. Type definitions are defined in the package's default export.
31
+ The `fin` export is the primary API entry point. Type definitions are defined in the package's default export.
31
32
 
32
- The static `fin.me` object contains some information about the current runtime environment even if imported outside of an OpenFin setting. In this case, the `isOpenFin` property of `fin.me` will be `false`. Outside of OpenFin environments, OpenFin API calls will nullop and throw an error.
33
+ The static `fin.me` object contains some information about the current runtime environment even if imported outside of an OpenFin setting. In this case, the `isOpenFin` property of `fin.me` will be `false`. Outside of OpenFin environments, OpenFin API calls will nullop and throw an error.
33
34
 
34
35
  ```typescript
35
- import OpenFin, { fin } from "@openfin/core";
36
+ import OpenFin, { fin } from '@openfin/core';
36
37
 
37
38
  const showWindow = async (identity: OpenFin.Identity) => {
38
- const win = await fin.Window.wrap(identity);
39
- await win.show();
39
+ const win = await fin.Window.wrap(identity);
40
+ await win.show();
40
41
 
41
- const isOpenFin = fin.me.isOpenFin; // false if not in OpenFin
42
- }
42
+ const isOpenFin = fin.me.isOpenFin; // false if not in OpenFin
43
+ };
43
44
  ```
44
45
 
45
46
  ### Importing the type
46
47
 
47
48
  To import the `OpenFin` namespace:
49
+
48
50
  ```typescript
49
- import OpenFin from "@openfin/core";
51
+ import OpenFin from '@openfin/core';
50
52
 
51
53
  type OFWindow = OpenFin.Window;
52
54
  ```
@@ -54,6 +56,7 @@ type OFWindow = OpenFin.Window;
54
56
  ### TSConfig types array
55
57
 
56
58
  To have the `OpenFin` available in your code automatically, just update your tsconfig `types` key:
59
+
57
60
  ```json
58
61
  {
59
62
  "compilerOptions": {
@@ -68,8 +71,8 @@ To have the `OpenFin` available in your code automatically, just update your tsc
68
71
 
69
72
  ## For more information
70
73
 
71
- - [Developer guide](https://developers.openfin.co/of-docs/docs/container-overview)
72
- - [API reference](https://developer.openfin.co/docs/javascript/stable/Platform.html)
74
+ - [Developer guide](https://developers.openfin.co/of-docs/docs/container-overview)
75
+ - [API reference](https://developer.openfin.co/docs/javascript/stable/Platform.html)
73
76
 
74
77
  ## Migrations
75
78
 
@@ -79,7 +82,7 @@ To have the `OpenFin` available in your code automatically, just update your tsc
79
82
 
80
83
  These changes will allow for improved API and type discoverability via code suggestion and type inspection, and create a clearer, more dependable usage contract for consumers of the package.
81
84
 
82
- Explicit imports from arbitrary files within the module directory (e.g. "@openfin/core/*") will no longer be supported in new versions of @openfin/core , for example:
85
+ Explicit imports from arbitrary files within the module directory (e.g. "@openfin/core/\*") will no longer be supported in new versions of @openfin/core , for example:
83
86
 
84
87
  ```js
85
88
  import { fin } from '@openfin/core/src/mock';
@@ -96,13 +99,3 @@ Until further notice, older versions of the `@openfin/core` package will be comp
96
99
  ## v30 Ambient type changes
97
100
 
98
101
  Prior to v30, the `OpenFin` namespace was ambiently declared and always available. Starting with v30, you must import it directly or specify it in the tsconfig.
99
-
100
- ## License
101
-
102
- Copyright 2020-2023 OpenFin
103
-
104
- The code in this package is distributed under the Apache License, Version 2.0.
105
-
106
- However, if you run this code, it may call on the OpenFin RVM or OpenFin Runtime, which are covered by OpenFin's Developer, Community, and Enterprise licenses. You can learn more about OpenFin licensing at the links listed below or email us at support@openfin.co with questions.
107
-
108
- - [Developer agreement](https://openfin.co/developer-agreement/)
@@ -5253,6 +5253,10 @@ declare namespace FDC3 {
5253
5253
  }
5254
5254
  }
5255
5255
 
5256
+ declare type FDC3Factory = typeof fdc3Factory;
5257
+
5258
+ declare const fdc3Factory: (version: '1.2' | '2.0', interopClient: OpenFin_2.InteropClient, wire: Transport<'unknown'>) => OpenFin_2.FDC3.v2_0.DesktopAgent | OpenFin_2.FDC3.v1_2.DesktopAgent;
5259
+
5256
5260
  /**
5257
5261
  * @interface
5258
5262
  */
@@ -5590,11 +5594,8 @@ declare type FrameEventType = EventType_5;
5590
5594
  /**
5591
5595
  * @interface
5592
5596
  */
5593
- declare type FrameInfo = {
5594
- name: string;
5595
- uuid: string;
5597
+ declare type FrameInfo = EntityInfo & {
5596
5598
  url: string;
5597
- entityType: EntityType_4;
5598
5599
  parent: Identity_4;
5599
5600
  };
5600
5601
 
@@ -6883,7 +6884,7 @@ declare class InteropBroker extends Base {
6883
6884
  };
6884
6885
  private getClientState;
6885
6886
  private static toObject;
6886
- static checkContextIntegrity(context: OpenFin_2.Context): {
6887
+ static checkContextIntegrity: (context: OpenFin_2.Context) => {
6887
6888
  isValid: true;
6888
6889
  } | {
6889
6890
  isValid: false;
@@ -7906,6 +7907,24 @@ declare type LayoutComponent = Omit<LayoutItemConfig, 'content' | 'type'> & {
7906
7907
 
7907
7908
  declare type LayoutContent = Array<LayoutItemConfig | LayoutRow | LayoutColumn | LayoutComponent>;
7908
7909
 
7910
+ /**
7911
+ * Generated after a layout is created.
7912
+ * @interface
7913
+ */
7914
+ declare type LayoutCreatedEvent = BaseEvent_5 & {
7915
+ type: 'layout-created';
7916
+ layoutIdentity: OpenFin_2.LayoutIdentity;
7917
+ };
7918
+
7919
+ /**
7920
+ * Generated after a layout is destroyed.
7921
+ * @interface
7922
+ */
7923
+ declare type LayoutDestroyedEvent = BaseEvent_5 & {
7924
+ type: 'layout-destroyed';
7925
+ layoutIdentity: OpenFin_2.LayoutIdentity;
7926
+ };
7927
+
7909
7928
  /**
7910
7929
  * The base payload for the CustomEvent.detail property for Layout events emitted on the layout container element.
7911
7930
  */
@@ -8391,6 +8410,15 @@ declare type LayoutSnapshot = {
8391
8410
  layouts: Record<string, LayoutOptions>;
8392
8411
  };
8393
8412
 
8413
+ /**
8414
+ * Generated after a snapshot is applied.
8415
+ * @interface
8416
+ */
8417
+ declare type LayoutSnapshotAppliedEvent = BaseEvent_5 & {
8418
+ type: 'layout-snapshot-applied';
8419
+ layoutIdentity: OpenFin_2.LayoutIdentity;
8420
+ };
8421
+
8394
8422
  /**
8395
8423
  * Generated when the Layout experiences a state change, for example tabs added/removed.
8396
8424
  * @interface
@@ -9290,6 +9318,8 @@ declare namespace OpenFin_2 {
9290
9318
  ClientConnectionPayload,
9291
9319
  EntityInfo,
9292
9320
  EntityType_4 as EntityType,
9321
+ ScreenCaptureState,
9322
+ ScreenCapturePermission,
9293
9323
  Bounds,
9294
9324
  WindowBounds,
9295
9325
  Rectangle,
@@ -9509,6 +9539,7 @@ declare namespace OpenFin_2 {
9509
9539
  StructuredContentBehavior,
9510
9540
  StructuredContentPermissions,
9511
9541
  ContentPermission,
9542
+ ScreenCaptureBehavior,
9512
9543
  PerDomainSettings,
9513
9544
  DomainSettingsRule,
9514
9545
  FileDownloadBehavior,
@@ -9824,6 +9855,12 @@ declare type PerDomainSettings = {
9824
9855
  * {@inheritdoc ChromiumPolicies}
9825
9856
  */
9826
9857
  chromiumPolicies?: ChromiumPolicies;
9858
+ contentProtection?: {
9859
+ /**
9860
+ * {@inheritdoc ScreenCaptureBehavior}
9861
+ */
9862
+ screenCapture: ScreenCaptureBehavior;
9863
+ };
9827
9864
  };
9828
9865
 
9829
9866
  /**
@@ -12469,6 +12506,10 @@ declare interface ProtocolMap extends ProtocolMapBase {
12469
12506
  };
12470
12507
  response: OpenFin_2.PopupResult;
12471
12508
  };
12509
+ 'get-screen-capture-permissions': {
12510
+ request: OpenFin_2.Identity;
12511
+ response: OpenFin_2.ScreenCapturePermission;
12512
+ };
12472
12513
  'render-overlay': {
12473
12514
  request: {
12474
12515
  bounds: OpenFin_2.Bounds;
@@ -12998,6 +13039,31 @@ declare type RvmLaunchOptions = {
12998
13039
  subscribe?: (launch: LaunchEmitter) => void;
12999
13040
  };
13000
13041
 
13042
+ /**
13043
+ * @interface
13044
+ * Controls whether this content should be allowed or blocked when capturing the screen.
13045
+ */
13046
+ declare type ScreenCaptureBehavior = 'allow' | 'block';
13047
+
13048
+ /**
13049
+ * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
13050
+ * @interface
13051
+ */
13052
+ declare type ScreenCapturePermission = {
13053
+ permission: ScreenCaptureBehavior;
13054
+ permissions: ScreenCaptureState[];
13055
+ };
13056
+
13057
+ /**
13058
+ * screenCapture state for a given entity as defined in domain settings.
13059
+ * @interface
13060
+ */
13061
+ declare type ScreenCaptureState = {
13062
+ info: EntityInfo;
13063
+ behavior: ScreenCaptureBehavior;
13064
+ url: string;
13065
+ };
13066
+
13001
13067
  /**
13002
13068
  * @interface
13003
13069
  */
@@ -17227,6 +17293,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17227
17293
  * {@link OpenFin.WebContentsEvents event namespace}.
17228
17294
  */
17229
17295
  showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
17296
+ /**
17297
+ *
17298
+ * Get the screen capture permission for this content.
17299
+ *
17300
+ * @example
17301
+ * ```js
17302
+ * const { permission } = await fin.me.getScreenCapturePermission();
17303
+ *
17304
+ * console.log(`This content is currently ${permission}ed in screen captures.`);
17305
+ *
17306
+ * ```
17307
+ */
17308
+ getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
17230
17309
  }
17231
17310
 
17232
17311
  /**
@@ -18540,6 +18619,9 @@ declare namespace WindowEvents {
18540
18619
  PerformanceReportEvent,
18541
18620
  InputEvent_2 as InputEvent,
18542
18621
  LayoutInitializedEvent,
18622
+ LayoutCreatedEvent,
18623
+ LayoutDestroyedEvent,
18624
+ LayoutSnapshotAppliedEvent,
18543
18625
  LayoutReadyEvent,
18544
18626
  CloseRequestedEvent,
18545
18627
  WindowCloseRequestedEvent,
@@ -18773,7 +18855,7 @@ declare type WindowShowRequestedEvent = ShowRequestedEvent;
18773
18855
  * A union of all events that emit natively on the `Window` topic, i.e. excluding those that propagate
18774
18856
  * from {@link OpenFin.ViewEvents}.
18775
18857
  */
18776
- declare type WindowSourcedEvent = WebContentsEvents.Event<'window'> | WindowViewEvent | AuthRequestedEvent | BeginUserBoundsChangingEvent | BoundsChangedEvent | BoundsChangingEvent | ContextChangedEvent | CloseRequestedEvent | ClosedEvent_2 | ClosingEvent | DisabledMovementBoundsChangedEvent | DisabledMovementBoundsChangingEvent | EmbeddedEvent | EndUserBoundsChangingEvent | ExternalProcessExitedEvent | ExternalProcessStartedEvent | HiddenEvent_2 | HotkeyEvent_2 | InitializedEvent_2 | LayoutInitializedEvent | LayoutReadyEvent | MaximizedEvent | MinimizedEvent | OptionsChangedEvent | PerformanceReportEvent | PreloadScriptsStateChangedEvent | PreloadScriptsStateChangingEvent | ReloadedEvent | RestoredEvent | ShowRequestedEvent | ShownEvent_2 | UserMovementDisabledEvent | UserMovementEnabledEvent | WillMoveEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
18858
+ declare type WindowSourcedEvent = WebContentsEvents.Event<'window'> | WindowViewEvent | AuthRequestedEvent | BeginUserBoundsChangingEvent | BoundsChangedEvent | BoundsChangingEvent | ContextChangedEvent | CloseRequestedEvent | ClosedEvent_2 | ClosingEvent | DisabledMovementBoundsChangedEvent | DisabledMovementBoundsChangingEvent | EmbeddedEvent | EndUserBoundsChangingEvent | ExternalProcessExitedEvent | ExternalProcessStartedEvent | HiddenEvent_2 | HotkeyEvent_2 | InitializedEvent_2 | LayoutInitializedEvent | LayoutReadyEvent | LayoutCreatedEvent | LayoutDestroyedEvent | LayoutSnapshotAppliedEvent | MaximizedEvent | MinimizedEvent | OptionsChangedEvent | PerformanceReportEvent | PreloadScriptsStateChangedEvent | PreloadScriptsStateChangingEvent | ReloadedEvent | RestoredEvent | ShowRequestedEvent | ShownEvent_2 | UserMovementDisabledEvent | UserMovementEnabledEvent | WillMoveEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
18777
18859
 
18778
18860
  /**
18779
18861
  * Generated when a child window starts loading.
@@ -5253,6 +5253,10 @@ declare namespace FDC3 {
5253
5253
  }
5254
5254
  }
5255
5255
 
5256
+ declare type FDC3Factory = typeof fdc3Factory;
5257
+
5258
+ declare const fdc3Factory: (version: '1.2' | '2.0', interopClient: OpenFin_2.InteropClient, wire: Transport<'unknown'>) => OpenFin_2.FDC3.v2_0.DesktopAgent | OpenFin_2.FDC3.v1_2.DesktopAgent;
5259
+
5256
5260
  /**
5257
5261
  * @interface
5258
5262
  */
@@ -5590,11 +5594,8 @@ declare type FrameEventType = EventType_5;
5590
5594
  /**
5591
5595
  * @interface
5592
5596
  */
5593
- declare type FrameInfo = {
5594
- name: string;
5595
- uuid: string;
5597
+ declare type FrameInfo = EntityInfo & {
5596
5598
  url: string;
5597
- entityType: EntityType_4;
5598
5599
  parent: Identity_4;
5599
5600
  };
5600
5601
 
@@ -6883,7 +6884,7 @@ declare class InteropBroker extends Base {
6883
6884
  };
6884
6885
  private getClientState;
6885
6886
  private static toObject;
6886
- static checkContextIntegrity(context: OpenFin_2.Context): {
6887
+ static checkContextIntegrity: (context: OpenFin_2.Context) => {
6887
6888
  isValid: true;
6888
6889
  } | {
6889
6890
  isValid: false;
@@ -7906,6 +7907,24 @@ declare type LayoutComponent = Omit<LayoutItemConfig, 'content' | 'type'> & {
7906
7907
 
7907
7908
  declare type LayoutContent = Array<LayoutItemConfig | LayoutRow | LayoutColumn | LayoutComponent>;
7908
7909
 
7910
+ /**
7911
+ * Generated after a layout is created.
7912
+ * @interface
7913
+ */
7914
+ declare type LayoutCreatedEvent = BaseEvent_5 & {
7915
+ type: 'layout-created';
7916
+ layoutIdentity: OpenFin_2.LayoutIdentity;
7917
+ };
7918
+
7919
+ /**
7920
+ * Generated after a layout is destroyed.
7921
+ * @interface
7922
+ */
7923
+ declare type LayoutDestroyedEvent = BaseEvent_5 & {
7924
+ type: 'layout-destroyed';
7925
+ layoutIdentity: OpenFin_2.LayoutIdentity;
7926
+ };
7927
+
7909
7928
  /**
7910
7929
  * The base payload for the CustomEvent.detail property for Layout events emitted on the layout container element.
7911
7930
  */
@@ -8391,6 +8410,15 @@ declare type LayoutSnapshot = {
8391
8410
  layouts: Record<string, LayoutOptions>;
8392
8411
  };
8393
8412
 
8413
+ /**
8414
+ * Generated after a snapshot is applied.
8415
+ * @interface
8416
+ */
8417
+ declare type LayoutSnapshotAppliedEvent = BaseEvent_5 & {
8418
+ type: 'layout-snapshot-applied';
8419
+ layoutIdentity: OpenFin_2.LayoutIdentity;
8420
+ };
8421
+
8394
8422
  /**
8395
8423
  * Generated when the Layout experiences a state change, for example tabs added/removed.
8396
8424
  * @interface
@@ -9290,6 +9318,8 @@ declare namespace OpenFin_2 {
9290
9318
  ClientConnectionPayload,
9291
9319
  EntityInfo,
9292
9320
  EntityType_4 as EntityType,
9321
+ ScreenCaptureState,
9322
+ ScreenCapturePermission,
9293
9323
  Bounds,
9294
9324
  WindowBounds,
9295
9325
  Rectangle,
@@ -9509,6 +9539,7 @@ declare namespace OpenFin_2 {
9509
9539
  StructuredContentBehavior,
9510
9540
  StructuredContentPermissions,
9511
9541
  ContentPermission,
9542
+ ScreenCaptureBehavior,
9512
9543
  PerDomainSettings,
9513
9544
  DomainSettingsRule,
9514
9545
  FileDownloadBehavior,
@@ -9824,6 +9855,12 @@ declare type PerDomainSettings = {
9824
9855
  * {@inheritdoc ChromiumPolicies}
9825
9856
  */
9826
9857
  chromiumPolicies?: ChromiumPolicies;
9858
+ contentProtection?: {
9859
+ /**
9860
+ * {@inheritdoc ScreenCaptureBehavior}
9861
+ */
9862
+ screenCapture: ScreenCaptureBehavior;
9863
+ };
9827
9864
  };
9828
9865
 
9829
9866
  /**
@@ -12469,6 +12506,10 @@ declare interface ProtocolMap extends ProtocolMapBase {
12469
12506
  };
12470
12507
  response: OpenFin_2.PopupResult;
12471
12508
  };
12509
+ 'get-screen-capture-permissions': {
12510
+ request: OpenFin_2.Identity;
12511
+ response: OpenFin_2.ScreenCapturePermission;
12512
+ };
12472
12513
  'render-overlay': {
12473
12514
  request: {
12474
12515
  bounds: OpenFin_2.Bounds;
@@ -12998,6 +13039,31 @@ declare type RvmLaunchOptions = {
12998
13039
  subscribe?: (launch: LaunchEmitter) => void;
12999
13040
  };
13000
13041
 
13042
+ /**
13043
+ * @interface
13044
+ * Controls whether this content should be allowed or blocked when capturing the screen.
13045
+ */
13046
+ declare type ScreenCaptureBehavior = 'allow' | 'block';
13047
+
13048
+ /**
13049
+ * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
13050
+ * @interface
13051
+ */
13052
+ declare type ScreenCapturePermission = {
13053
+ permission: ScreenCaptureBehavior;
13054
+ permissions: ScreenCaptureState[];
13055
+ };
13056
+
13057
+ /**
13058
+ * screenCapture state for a given entity as defined in domain settings.
13059
+ * @interface
13060
+ */
13061
+ declare type ScreenCaptureState = {
13062
+ info: EntityInfo;
13063
+ behavior: ScreenCaptureBehavior;
13064
+ url: string;
13065
+ };
13066
+
13001
13067
  /**
13002
13068
  * @interface
13003
13069
  */
@@ -17227,6 +17293,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17227
17293
  * {@link OpenFin.WebContentsEvents event namespace}.
17228
17294
  */
17229
17295
  showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
17296
+ /**
17297
+ *
17298
+ * Get the screen capture permission for this content.
17299
+ *
17300
+ * @example
17301
+ * ```js
17302
+ * const { permission } = await fin.me.getScreenCapturePermission();
17303
+ *
17304
+ * console.log(`This content is currently ${permission}ed in screen captures.`);
17305
+ *
17306
+ * ```
17307
+ */
17308
+ getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
17230
17309
  }
17231
17310
 
17232
17311
  /**
@@ -18540,6 +18619,9 @@ declare namespace WindowEvents {
18540
18619
  PerformanceReportEvent,
18541
18620
  InputEvent_2 as InputEvent,
18542
18621
  LayoutInitializedEvent,
18622
+ LayoutCreatedEvent,
18623
+ LayoutDestroyedEvent,
18624
+ LayoutSnapshotAppliedEvent,
18543
18625
  LayoutReadyEvent,
18544
18626
  CloseRequestedEvent,
18545
18627
  WindowCloseRequestedEvent,
@@ -18773,7 +18855,7 @@ declare type WindowShowRequestedEvent = ShowRequestedEvent;
18773
18855
  * A union of all events that emit natively on the `Window` topic, i.e. excluding those that propagate
18774
18856
  * from {@link OpenFin.ViewEvents}.
18775
18857
  */
18776
- declare type WindowSourcedEvent = WebContentsEvents.Event<'window'> | WindowViewEvent | AuthRequestedEvent | BeginUserBoundsChangingEvent | BoundsChangedEvent | BoundsChangingEvent | ContextChangedEvent | CloseRequestedEvent | ClosedEvent_2 | ClosingEvent | DisabledMovementBoundsChangedEvent | DisabledMovementBoundsChangingEvent | EmbeddedEvent | EndUserBoundsChangingEvent | ExternalProcessExitedEvent | ExternalProcessStartedEvent | HiddenEvent_2 | HotkeyEvent_2 | InitializedEvent_2 | LayoutInitializedEvent | LayoutReadyEvent | MaximizedEvent | MinimizedEvent | OptionsChangedEvent | PerformanceReportEvent | PreloadScriptsStateChangedEvent | PreloadScriptsStateChangingEvent | ReloadedEvent | RestoredEvent | ShowRequestedEvent | ShownEvent_2 | UserMovementDisabledEvent | UserMovementEnabledEvent | WillMoveEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
18858
+ declare type WindowSourcedEvent = WebContentsEvents.Event<'window'> | WindowViewEvent | AuthRequestedEvent | BeginUserBoundsChangingEvent | BoundsChangedEvent | BoundsChangingEvent | ContextChangedEvent | CloseRequestedEvent | ClosedEvent_2 | ClosingEvent | DisabledMovementBoundsChangedEvent | DisabledMovementBoundsChangingEvent | EmbeddedEvent | EndUserBoundsChangingEvent | ExternalProcessExitedEvent | ExternalProcessStartedEvent | HiddenEvent_2 | HotkeyEvent_2 | InitializedEvent_2 | LayoutInitializedEvent | LayoutReadyEvent | LayoutCreatedEvent | LayoutDestroyedEvent | LayoutSnapshotAppliedEvent | MaximizedEvent | MinimizedEvent | OptionsChangedEvent | PerformanceReportEvent | PreloadScriptsStateChangedEvent | PreloadScriptsStateChangingEvent | ReloadedEvent | RestoredEvent | ShowRequestedEvent | ShownEvent_2 | UserMovementDisabledEvent | UserMovementEnabledEvent | WillMoveEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
18777
18859
 
18778
18860
  /**
18779
18861
  * Generated when a child window starts loading.
@@ -5253,6 +5253,10 @@ declare namespace FDC3 {
5253
5253
  }
5254
5254
  }
5255
5255
 
5256
+ declare type FDC3Factory = typeof fdc3Factory;
5257
+
5258
+ declare const fdc3Factory: (version: '1.2' | '2.0', interopClient: OpenFin_2.InteropClient, wire: Transport<'unknown'>) => OpenFin_2.FDC3.v2_0.DesktopAgent | OpenFin_2.FDC3.v1_2.DesktopAgent;
5259
+
5256
5260
  /**
5257
5261
  * @interface
5258
5262
  */
@@ -5590,11 +5594,8 @@ declare type FrameEventType = EventType_5;
5590
5594
  /**
5591
5595
  * @interface
5592
5596
  */
5593
- declare type FrameInfo = {
5594
- name: string;
5595
- uuid: string;
5597
+ declare type FrameInfo = EntityInfo & {
5596
5598
  url: string;
5597
- entityType: EntityType_4;
5598
5599
  parent: Identity_4;
5599
5600
  };
5600
5601
 
@@ -6883,7 +6884,7 @@ declare class InteropBroker extends Base {
6883
6884
  };
6884
6885
  private getClientState;
6885
6886
  private static toObject;
6886
- static checkContextIntegrity(context: OpenFin_2.Context): {
6887
+ static checkContextIntegrity: (context: OpenFin_2.Context) => {
6887
6888
  isValid: true;
6888
6889
  } | {
6889
6890
  isValid: false;
@@ -7906,6 +7907,24 @@ declare type LayoutComponent = Omit<LayoutItemConfig, 'content' | 'type'> & {
7906
7907
 
7907
7908
  declare type LayoutContent = Array<LayoutItemConfig | LayoutRow | LayoutColumn | LayoutComponent>;
7908
7909
 
7910
+ /**
7911
+ * Generated after a layout is created.
7912
+ * @interface
7913
+ */
7914
+ declare type LayoutCreatedEvent = BaseEvent_5 & {
7915
+ type: 'layout-created';
7916
+ layoutIdentity: OpenFin_2.LayoutIdentity;
7917
+ };
7918
+
7919
+ /**
7920
+ * Generated after a layout is destroyed.
7921
+ * @interface
7922
+ */
7923
+ declare type LayoutDestroyedEvent = BaseEvent_5 & {
7924
+ type: 'layout-destroyed';
7925
+ layoutIdentity: OpenFin_2.LayoutIdentity;
7926
+ };
7927
+
7909
7928
  /**
7910
7929
  * The base payload for the CustomEvent.detail property for Layout events emitted on the layout container element.
7911
7930
  */
@@ -8391,6 +8410,15 @@ declare type LayoutSnapshot = {
8391
8410
  layouts: Record<string, LayoutOptions>;
8392
8411
  };
8393
8412
 
8413
+ /**
8414
+ * Generated after a snapshot is applied.
8415
+ * @interface
8416
+ */
8417
+ declare type LayoutSnapshotAppliedEvent = BaseEvent_5 & {
8418
+ type: 'layout-snapshot-applied';
8419
+ layoutIdentity: OpenFin_2.LayoutIdentity;
8420
+ };
8421
+
8394
8422
  /**
8395
8423
  * Generated when the Layout experiences a state change, for example tabs added/removed.
8396
8424
  * @interface
@@ -9290,6 +9318,8 @@ declare namespace OpenFin_2 {
9290
9318
  ClientConnectionPayload,
9291
9319
  EntityInfo,
9292
9320
  EntityType_4 as EntityType,
9321
+ ScreenCaptureState,
9322
+ ScreenCapturePermission,
9293
9323
  Bounds,
9294
9324
  WindowBounds,
9295
9325
  Rectangle,
@@ -9509,6 +9539,7 @@ declare namespace OpenFin_2 {
9509
9539
  StructuredContentBehavior,
9510
9540
  StructuredContentPermissions,
9511
9541
  ContentPermission,
9542
+ ScreenCaptureBehavior,
9512
9543
  PerDomainSettings,
9513
9544
  DomainSettingsRule,
9514
9545
  FileDownloadBehavior,
@@ -9824,6 +9855,12 @@ declare type PerDomainSettings = {
9824
9855
  * {@inheritdoc ChromiumPolicies}
9825
9856
  */
9826
9857
  chromiumPolicies?: ChromiumPolicies;
9858
+ contentProtection?: {
9859
+ /**
9860
+ * {@inheritdoc ScreenCaptureBehavior}
9861
+ */
9862
+ screenCapture: ScreenCaptureBehavior;
9863
+ };
9827
9864
  };
9828
9865
 
9829
9866
  /**
@@ -12469,6 +12506,10 @@ declare interface ProtocolMap extends ProtocolMapBase {
12469
12506
  };
12470
12507
  response: OpenFin_2.PopupResult;
12471
12508
  };
12509
+ 'get-screen-capture-permissions': {
12510
+ request: OpenFin_2.Identity;
12511
+ response: OpenFin_2.ScreenCapturePermission;
12512
+ };
12472
12513
  'render-overlay': {
12473
12514
  request: {
12474
12515
  bounds: OpenFin_2.Bounds;
@@ -12998,6 +13039,31 @@ declare type RvmLaunchOptions = {
12998
13039
  subscribe?: (launch: LaunchEmitter) => void;
12999
13040
  };
13000
13041
 
13042
+ /**
13043
+ * @interface
13044
+ * Controls whether this content should be allowed or blocked when capturing the screen.
13045
+ */
13046
+ declare type ScreenCaptureBehavior = 'allow' | 'block';
13047
+
13048
+ /**
13049
+ * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
13050
+ * @interface
13051
+ */
13052
+ declare type ScreenCapturePermission = {
13053
+ permission: ScreenCaptureBehavior;
13054
+ permissions: ScreenCaptureState[];
13055
+ };
13056
+
13057
+ /**
13058
+ * screenCapture state for a given entity as defined in domain settings.
13059
+ * @interface
13060
+ */
13061
+ declare type ScreenCaptureState = {
13062
+ info: EntityInfo;
13063
+ behavior: ScreenCaptureBehavior;
13064
+ url: string;
13065
+ };
13066
+
13001
13067
  /**
13002
13068
  * @interface
13003
13069
  */
@@ -17227,6 +17293,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17227
17293
  * {@link OpenFin.WebContentsEvents event namespace}.
17228
17294
  */
17229
17295
  showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
17296
+ /**
17297
+ *
17298
+ * Get the screen capture permission for this content.
17299
+ *
17300
+ * @example
17301
+ * ```js
17302
+ * const { permission } = await fin.me.getScreenCapturePermission();
17303
+ *
17304
+ * console.log(`This content is currently ${permission}ed in screen captures.`);
17305
+ *
17306
+ * ```
17307
+ */
17308
+ getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
17230
17309
  }
17231
17310
 
17232
17311
  /**
@@ -18540,6 +18619,9 @@ declare namespace WindowEvents {
18540
18619
  PerformanceReportEvent,
18541
18620
  InputEvent_2 as InputEvent,
18542
18621
  LayoutInitializedEvent,
18622
+ LayoutCreatedEvent,
18623
+ LayoutDestroyedEvent,
18624
+ LayoutSnapshotAppliedEvent,
18543
18625
  LayoutReadyEvent,
18544
18626
  CloseRequestedEvent,
18545
18627
  WindowCloseRequestedEvent,
@@ -18773,7 +18855,7 @@ declare type WindowShowRequestedEvent = ShowRequestedEvent;
18773
18855
  * A union of all events that emit natively on the `Window` topic, i.e. excluding those that propagate
18774
18856
  * from {@link OpenFin.ViewEvents}.
18775
18857
  */
18776
- declare type WindowSourcedEvent = WebContentsEvents.Event<'window'> | WindowViewEvent | AuthRequestedEvent | BeginUserBoundsChangingEvent | BoundsChangedEvent | BoundsChangingEvent | ContextChangedEvent | CloseRequestedEvent | ClosedEvent_2 | ClosingEvent | DisabledMovementBoundsChangedEvent | DisabledMovementBoundsChangingEvent | EmbeddedEvent | EndUserBoundsChangingEvent | ExternalProcessExitedEvent | ExternalProcessStartedEvent | HiddenEvent_2 | HotkeyEvent_2 | InitializedEvent_2 | LayoutInitializedEvent | LayoutReadyEvent | MaximizedEvent | MinimizedEvent | OptionsChangedEvent | PerformanceReportEvent | PreloadScriptsStateChangedEvent | PreloadScriptsStateChangingEvent | ReloadedEvent | RestoredEvent | ShowRequestedEvent | ShownEvent_2 | UserMovementDisabledEvent | UserMovementEnabledEvent | WillMoveEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
18858
+ declare type WindowSourcedEvent = WebContentsEvents.Event<'window'> | WindowViewEvent | AuthRequestedEvent | BeginUserBoundsChangingEvent | BoundsChangedEvent | BoundsChangingEvent | ContextChangedEvent | CloseRequestedEvent | ClosedEvent_2 | ClosingEvent | DisabledMovementBoundsChangedEvent | DisabledMovementBoundsChangingEvent | EmbeddedEvent | EndUserBoundsChangingEvent | ExternalProcessExitedEvent | ExternalProcessStartedEvent | HiddenEvent_2 | HotkeyEvent_2 | InitializedEvent_2 | LayoutInitializedEvent | LayoutReadyEvent | LayoutCreatedEvent | LayoutDestroyedEvent | LayoutSnapshotAppliedEvent | MaximizedEvent | MinimizedEvent | OptionsChangedEvent | PerformanceReportEvent | PreloadScriptsStateChangedEvent | PreloadScriptsStateChangingEvent | ReloadedEvent | RestoredEvent | ShowRequestedEvent | ShownEvent_2 | UserMovementDisabledEvent | UserMovementEnabledEvent | WillMoveEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
18777
18859
 
18778
18860
  /**
18779
18861
  * Generated when a child window starts loading.