@openfin/fdc3-api 37.80.38 → 37.81.19

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.
package/out/fdc3-api.d.ts CHANGED
@@ -76,14 +76,42 @@ declare type AnchorType = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-rig
76
76
 
77
77
  declare type AnyStrategy = ChannelStrategy<any>;
78
78
 
79
+ /**
80
+ * @deprecated Renamed to {@link ApiSettings}.
81
+ */
82
+ declare type Api = ApiSettings;
83
+
84
+ declare type ApiCall<Request, Response> = {
85
+ request: Request;
86
+ response: Response;
87
+ };
88
+
89
+ declare type ApiClient<T extends Record<any, any>> = {
90
+ [key in keyof PickOfType<T, Function>]: (...args: Parameters<T[key]>) => ReturnType<T[key]> extends Promise<any> ? ReturnType<T[key]> : Promise<ReturnType<T[key]>>;
91
+ };
92
+
93
+ /**
94
+ * @deprecated Renamed to {@link DomainApiSettings}.
95
+ */
96
+ declare type ApiInjection = DomainApiSettings;
97
+
98
+ /**
99
+ * Generated when a new Platform's API becomes responsive.
100
+ * @interface
101
+ */
102
+ declare type ApiReadyEvent = BaseEvent & {
103
+ topic: 'application';
104
+ type: 'platform-api-ready';
105
+ };
106
+
79
107
  /**
80
108
  * Configurations for API injection.
81
109
  *
82
110
  * @interface
83
111
  */
84
- declare type Api = {
112
+ declare type ApiSettings = {
85
113
  /**
86
- * Configure injection of OpenFin API into iframes based on domain
114
+ * Configure conditional injection of OpenFin API into iframes
87
115
  */
88
116
  iframe?: {
89
117
  /**
@@ -114,41 +142,6 @@ declare type Api = {
114
142
  fin?: InjectionType;
115
143
  };
116
144
 
117
- declare type ApiCall<Request, Response> = {
118
- request: Request;
119
- response: Response;
120
- };
121
-
122
- declare type ApiClient<T extends Record<any, any>> = {
123
- [key in keyof PickOfType<T, Function>]: (...args: Parameters<T[key]>) => ReturnType<T[key]> extends Promise<any> ? ReturnType<T[key]> : Promise<ReturnType<T[key]>>;
124
- };
125
-
126
- /**
127
- * @interface
128
- *
129
- * Rules for domain-conditional `fin` API injection.
130
- */
131
- declare type ApiInjection = {
132
- /**
133
- * Injection setting for the `fin` API for contexts on a matched domain.
134
- *
135
- * * 'none': The `fin` API will be not available.
136
- * * 'global': The entire `fin` API will be available.
137
- *
138
- * @defaultValue 'global'
139
- */
140
- fin: InjectionType;
141
- };
142
-
143
- /**
144
- * Generated when a new Platform's API becomes responsive.
145
- * @interface
146
- */
147
- declare type ApiReadyEvent = BaseEvent & {
148
- topic: 'application';
149
- type: 'platform-api-ready';
150
- };
151
-
152
145
  /**
153
146
  * @interface
154
147
  */
@@ -187,31 +180,6 @@ declare type AppAssetRequest = {
187
180
  alias: string;
188
181
  };
189
182
 
190
- declare interface AppIdentifier {
191
- /** The unique application identifier located within a specific application directory instance. An example of an appId might be 'app@sub.root' */
192
- readonly appId: string;
193
- /** An optional instance identifier, indicating that this object represents a specific instance of the application described. */
194
- readonly instanceId?: string;
195
- }
196
-
197
- /**
198
- * An interface that relates an intent to apps
199
- */
200
- declare interface AppIntent {
201
- readonly intent: IntentMetadata;
202
- readonly apps: Array<AppMetadata>;
203
- }
204
-
205
- /**
206
- * An interface that relates an intent to apps
207
- */
208
- declare interface AppIntent_2 {
209
- /** Details of the intent whose relationship to resolving applications is being described. */
210
- readonly intent: IntentMetadata_2;
211
- /** Details of applications that can resolve the intent. */
212
- readonly apps: Array<AppMetadata_2>;
213
- }
214
-
215
183
  /**
216
184
  * An object representing an application. Allows the developer to create,
217
185
  * execute, show/close an application as well as listen to {@link OpenFin.ApplicationEvents application events}.
@@ -1428,60 +1396,6 @@ declare type ApplySnapshotPayload = {
1428
1396
  options?: ApplySnapshotOptions;
1429
1397
  };
1430
1398
 
1431
- /**
1432
- * App definition as provided by the application directory
1433
- */
1434
- declare interface AppMetadata {
1435
- /** The unique app name that can be used with the open and raiseIntent calls. */
1436
- readonly name: string;
1437
- /** The unique application identifier located within a specific application directory instance. An example of an appId might be 'app@sub.root' */
1438
- readonly appId?: string;
1439
- /** The Version of the application. */
1440
- readonly version?: string;
1441
- /** A more user-friendly application title that can be used to render UI elements */
1442
- readonly title?: string;
1443
- /** A tooltip for the application that can be used to render UI elements */
1444
- readonly tooltip?: string;
1445
- /** A longer, multi-paragraph description for the application that could include markup */
1446
- readonly description?: string;
1447
- /** A list of icon URLs for the application that can be used to render UI elements */
1448
- readonly icons?: Array<string>;
1449
- /** A list of image URLs for the application that can be used to render UI elements */
1450
- readonly images?: Array<string>;
1451
- }
1452
-
1453
- /**
1454
- * Extends an `AppIdentifier`, describing an application or instance of an application, with additional descriptive metadata that is usually provided by an FDC3 App Directory that the desktop agent connects to.
1455
- *
1456
- * The additional information from an app directory can aid in rendering UI elements, such as a launcher menu or resolver UI. This includes a title, description, tooltip and icon and screenshot URLs.
1457
- *
1458
- * Note that as `AppMetadata` instances are also `AppIdentifiers` they may be passed to the `app` argument of `fdc3.open`, `fdc3.raiseIntent` etc.
1459
- */
1460
- declare interface AppMetadata_2 extends AppIdentifier {
1461
- /**
1462
- The 'friendly' app name.
1463
- This field was used with the `open` and `raiseIntent` calls in FDC3 <2.0, which now require an `AppIdentifier` wth `appId` set.
1464
- Note that for display purposes the `title` field should be used, if set, in preference to this field.
1465
- */
1466
- readonly name?: string;
1467
- /** The Version of the application. */
1468
- readonly version?: string;
1469
- /** An optional set of, implementation specific, metadata fields that can be used to disambiguate instances, such as a window title or screen position. Must only be set if `instanceId` is set. */
1470
- readonly instanceMetadata?: Record<string, any>;
1471
- /** A more user-friendly application title that can be used to render UI elements */
1472
- readonly title?: string;
1473
- /** A tooltip for the application that can be used to render UI elements */
1474
- readonly tooltip?: string;
1475
- /** A longer, multi-paragraph description for the application that could include markup */
1476
- readonly description?: string;
1477
- /** A list of icon URLs for the application that can be used to render UI elements */
1478
- readonly icons?: Array<Icon>;
1479
- /** Images representing the app in common usage scenarios that can be used to render UI elements */
1480
- readonly screenshots?: Array<Image_2>;
1481
- /** The type of output returned for any intent specified during resolution. May express a particular context type (e.g. "fdc3.instrument"), channel (e.g. "channel") or a channel that will receive a specified type (e.g. "channel<fdc3.instrument>"). */
1482
- readonly resultType?: string | null;
1483
- }
1484
-
1485
1399
  /**
1486
1400
  * @interface
1487
1401
  */
@@ -2408,25 +2322,7 @@ declare class Channel extends EmitterBase<ChannelEvent> {
2408
2322
 
2409
2323
  declare type Channel_2 = OpenFin.Fin['InterApplicationBus']['Channel'];
2410
2324
 
2411
- declare interface Channel_3 {
2412
- id: string;
2413
- type: string;
2414
- displayMetadata?: DisplayMetadata;
2415
- broadcast(context: Context): void;
2416
- getCurrentContext(contextType?: string): Promise<Context | null>;
2417
- addContextListener(contextType: string | null, handler: ContextHandler): Listener & Promise<Listener>;
2418
- }
2419
-
2420
- declare interface Channel_4 {
2421
- readonly id: string;
2422
- readonly type: 'user' | 'app' | 'private';
2423
- readonly displayMetadata?: DisplayMetadata_2;
2424
- broadcast(context: Context_2): Promise<void>;
2425
- getCurrentContext(contextType?: string): Promise<Context_2 | null>;
2426
- addContextListener(contextType: string | null, handler: ContextHandler_2): Listener_2 & Promise<Listener_2>;
2427
- }
2428
-
2429
- declare type Channel_5 = OpenFin.Fin['InterApplicationBus']['Channel'];
2325
+ declare type Channel_3 = OpenFin.Fin['InterApplicationBus']['Channel'];
2430
2326
 
2431
2327
  declare type ChannelAction = OpenFin.ChannelAction;
2432
2328
 
@@ -2743,7 +2639,7 @@ declare class ChannelClient extends ChannelBase {
2743
2639
  /**
2744
2640
  * @internal
2745
2641
  */
2746
- constructor(routingInfo: OpenFin.RoutingInfo, wire: Transport, strategy: AnyStrategy);
2642
+ constructor(routingInfo: OpenFin.RoutingInfo, close: () => Promise<void>, strategy: AnyStrategy);
2747
2643
  protected processAction: (action: string, payload: any, senderIdentity: OpenFin.ProviderIdentity | OpenFin.ClientIdentity) => Promise<any>;
2748
2644
  /**
2749
2645
  * a read-only provider identity
@@ -2809,6 +2705,11 @@ declare class ChannelClient extends ChannelBase {
2809
2705
  */
2810
2706
  disconnect(): Promise<void>;
2811
2707
  sendDisconnectAction(): Promise<void>;
2708
+ /**
2709
+ * @internal
2710
+ * Writing this as a static to keep code together, but in environments with a wire, this will be DI'd into the protectedObject class as close.
2711
+ */
2712
+ static wireClose(wire: Transport, providerIdentity: OpenFin.ProviderIdentity, endpointId: string): Promise<void>;
2812
2713
  }
2813
2714
 
2814
2715
  declare type ChannelClient_2 = OpenFin.ChannelClient;
@@ -2896,7 +2797,7 @@ declare class ChannelProvider extends ChannelBase {
2896
2797
  /**
2897
2798
  * @internal
2898
2799
  */
2899
- constructor(providerIdentity: ProviderIdentity_3, wire: Transport, strategy: AnyStrategy);
2800
+ constructor(providerIdentity: ProviderIdentity_3, close: () => Promise<void>, strategy: AnyStrategy);
2900
2801
  /**
2901
2802
  * Dispatch an action to a specified client. Returns a promise for the result of executing that action on the client side.
2902
2803
  *
@@ -3052,6 +2953,7 @@ declare class ChannelProvider extends ChannelBase {
3052
2953
  private getEndpointIdForOpenFinId;
3053
2954
  private static clientIdentityIncludesEndpointId;
3054
2955
  private static clientIsMultiRuntime;
2956
+ static wireClose(wire: Transport, channelName: string): Promise<void>;
3055
2957
  }
3056
2958
 
3057
2959
  declare type ChannelProviderDisconnectionListener = (identity: ProviderIdentity_4) => any;
@@ -3553,7 +3455,7 @@ declare type ConstViewOptions = {
3553
3455
  /**
3554
3456
  * Configurations for API injection.
3555
3457
  */
3556
- api: Api;
3458
+ api: ApiSettings;
3557
3459
  /**
3558
3460
  * The name of the view.
3559
3461
  */
@@ -3973,7 +3875,23 @@ declare interface Container extends EventEmitter_2 {
3973
3875
  close(): boolean;
3974
3876
  }
3975
3877
 
3976
- declare type ContentCreationBehaviorNames = 'window' | 'view' | 'block' | 'browser';
3878
+ /**
3879
+ * Generated when content navigation or redirection is blocked by {@link OpenFin.DomainSettings}.
3880
+ */
3881
+ declare type ContentBlockedEvent = NamedEvent & {
3882
+ type: 'content-blocked';
3883
+ /**
3884
+ * The domain whose content was blocked.
3885
+ */
3886
+ url: string;
3887
+ };
3888
+
3889
+ declare type ContentCreationBehavior = 'window' | 'view' | 'block' | 'browser';
3890
+
3891
+ /**
3892
+ * @deprecated Renamed to {@link ContentCreationBehavior}.
3893
+ */
3894
+ declare type ContentCreationBehaviorNames = ContentCreationBehavior;
3977
3895
 
3978
3896
  /**
3979
3897
  * Configures how new content (e,g, from `window.open` or a link) is opened.
@@ -3997,7 +3915,7 @@ declare type ContentCreationOptions = {
3997
3915
  * @typeParam Behavior The way content governed by this rule will be created. If provided, this type will narrow to
3998
3916
  * the specified `behavior` key.
3999
3917
  */
4000
- declare type ContentCreationRule<Behavior extends ContentCreationBehaviorNames = ContentCreationBehaviorNames> = Extract<WindowContentCreationRule | ViewContentCreationRule | BrowserContentCreationRule | BlockedContentCreationRule, {
3918
+ declare type ContentCreationRule<Behavior extends ContentCreationBehavior = ContentCreationBehavior> = Extract<WindowContentCreationRule | ViewContentCreationRule | BrowserContentCreationRule | BlockedContentCreationRule, {
4001
3919
  behavior: Behavior;
4002
3920
  }>;
4003
3921
 
@@ -4247,39 +4165,39 @@ declare interface ContentItem extends EventEmitter_2 {
4247
4165
  * In the lack of an allowlist, navigation to URLs that match a denied pattern would be prohibited.
4248
4166
  * See [here](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) for more details.
4249
4167
  *
4168
+ * @remarks Superseded by {@link DomainSettingsRule.content}. If {@link DomainSettings.default} includes a
4169
+ * `content` setting, this setting will be **ignored**.
4170
+ *
4250
4171
  * @interface
4251
4172
  */
4252
4173
  declare type ContentNavigation = NavigationRules;
4253
4174
 
4175
+ /**
4176
+ * Whether a content url is allowed or blocked for navigation or redirection.
4177
+ *
4178
+ * * 'allow': The content url is allowed.
4179
+ * * 'block': The content url is blocked.
4180
+ */
4181
+ declare type ContentPermission = 'allow' | 'block';
4182
+
4254
4183
  /**
4255
4184
  * Restrict redirects to URLs that match an allowed pattern.
4256
4185
  * In the lack of an allowlist, redirects to URLs that match a denied pattern would be prohibited.
4257
4186
  * See [here](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) for more details.
4258
4187
  *
4188
+ * @remarks Superseded by {@link DomainSettingsRule.content}. If {@link DomainSettings.default} includes a
4189
+ * `content` setting, this setting will be **ignored**.
4190
+ *
4259
4191
  * @interface
4260
4192
  */
4261
4193
  declare type ContentRedirect = NavigationRules;
4262
4194
 
4263
- declare interface Context {
4264
- id?: { [key: string]: string };
4265
- name?: string;
4266
- type: string;
4267
- }
4268
-
4269
- declare interface Context_2 {
4270
- id?: { [key: string]: string };
4271
- name?: string;
4272
- type: string;
4273
- contextMetadata?: ContextMetadata;
4274
- metadata?: any;
4275
- }
4276
-
4277
4195
  /**
4278
4196
  * Data passed between entities and applications.
4279
4197
  *
4280
4198
  * @interface
4281
4199
  */
4282
- declare type Context_3 = {
4200
+ declare type Context = {
4283
4201
  /**
4284
4202
  * An object containing string key-value pairs for the bulk of the data for the context. Differs between context types.
4285
4203
  */
@@ -4308,7 +4226,7 @@ declare type ContextChangedEvent = BaseEvent_5 & {
4308
4226
  /**
4309
4227
  * @interface
4310
4228
  */
4311
- declare type ContextForIntent<MetadataType = any> = Context_3 & {
4229
+ declare type ContextForIntent<MetadataType = any> = Context & {
4312
4230
  metadata?: MetadataType;
4313
4231
  };
4314
4232
 
@@ -4324,23 +4242,19 @@ declare type ContextGroupInfo = {
4324
4242
  /**
4325
4243
  * Metadata for the Context Group. Contains the group's human-readable name, color, and an image, as defined by the Interop Broker.
4326
4244
  */
4327
- displayMetadata?: DisplayMetadata_3;
4245
+ displayMetadata?: DisplayMetadata;
4328
4246
  };
4329
4247
 
4330
4248
  declare type ContextGroupStates = {
4331
4249
  [key: string]: {
4332
- [key: string]: Context_3;
4250
+ [key: string]: Context;
4333
4251
  };
4334
4252
  };
4335
4253
 
4336
- declare type ContextHandler = (context: Context) => void;
4337
-
4338
- declare type ContextHandler_2 = (context: Context_2, metadata?: ContextMetadata) => void;
4339
-
4340
4254
  /**
4341
4255
  * Subscription function for addContextHandler.
4342
4256
  */
4343
- declare type ContextHandler_3 = (context: Context_3) => void;
4257
+ declare type ContextHandler = (context: Context) => void;
4344
4258
 
4345
4259
  /**
4346
4260
  * Configure the context menu when right-clicking on a window.
@@ -4379,20 +4293,6 @@ declare type ContextMenuSettings = {
4379
4293
  reload?: boolean;
4380
4294
  };
4381
4295
 
4382
- /**
4383
- * Metadata relating to a context or intent and context received through the
4384
- * `addContextListener` and `addIntentListener` functions.
4385
- *
4386
- * @experimental Introduced in FDC3 2.0 and may be refined by further changes outside the normal FDC3 versioning policy.
4387
- */
4388
- declare interface ContextMetadata {
4389
- /** Identifier for the app instance that sent the context and/or intent.
4390
- *
4391
- * @experimental
4392
- */
4393
- readonly source: AppIdentifier;
4394
- }
4395
-
4396
4296
  /**
4397
4297
  * @interface
4398
4298
  */
@@ -4639,45 +4539,6 @@ declare type DefaultDomainSettings = DomainSettings;
4639
4539
  */
4640
4540
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4641
4541
 
4642
- declare interface DesktopAgent {
4643
- open(app: TargetApp, context?: Context): Promise<void>;
4644
- findIntent(intent: string, context?: Context): Promise<AppIntent>;
4645
- findIntentsByContext(context: Context): Promise<Array<AppIntent>>;
4646
- broadcast(context: Context): void;
4647
- raiseIntent(intent: string, context: Context, app?: TargetApp): Promise<IntentResolution>;
4648
- raiseIntentForContext(context: Context, app?: TargetApp): Promise<IntentResolution>;
4649
- addIntentListener(intent: string, handler: ContextHandler): Listener;
4650
- joinChannel(channelId: string): Promise<void>;
4651
- leaveCurrentChannel(): Promise<void>;
4652
- getInfo(): ImplementationMetadata;
4653
- addContextListener(contextType: string | null, handler: ContextHandler): Listener & Promise<Listener>;
4654
- getOrCreateChannel(channelId: string): Promise<Channel_3>;
4655
- getSystemChannels(): Promise<SystemChannel[]>;
4656
- getCurrentChannel(): Promise<Channel_3 | null>;
4657
- }
4658
-
4659
- declare interface DesktopAgent_2 {
4660
- open(app: AppIdentifier | TargetApp, context?: Context_2): Promise<AppIdentifier>;
4661
- findIntent(intent: string, context?: Context_2, resultType?: string): Promise<AppIntent_2>;
4662
- findIntentsByContext(context: Context_2, resultType?: string): Promise<Array<AppIntent_2>>;
4663
- findInstances(app: AppIdentifier): Promise<Array<AppIdentifier>>;
4664
- broadcast(context: Context_2): Promise<void>;
4665
- raiseIntent(intent: string, context: Context_2, app?: AppIdentifier | TargetApp): Promise<IntentResolution_2>;
4666
- raiseIntentForContext(context: Context_2, app?: AppIdentifier | TargetApp): Promise<IntentResolution_2>;
4667
- addIntentListener(intent: string, handler: IntentHandler): Promise<Listener_2>;
4668
- addContextListener(contextType: string | null, handler: ContextHandler_2): Promise<Listener_2>;
4669
- getUserChannels(): Promise<Array<SystemChannel>>;
4670
- joinUserChannel(channelId: string): Promise<void>;
4671
- getOrCreateChannel(channelId: string): Promise<Channel_4>;
4672
- createPrivateChannel(): Promise<PrivateChannel>;
4673
- getCurrentChannel(): Promise<Channel_3 | null>;
4674
- leaveCurrentChannel(): Promise<void>;
4675
- getInfo(): Promise<ImplementationMetadata_2>;
4676
- getAppMetadata(app: AppIdentifier): Promise<AppMetadata_2>;
4677
- getSystemChannels(): Promise<Array<SystemChannel>>;
4678
- joinChannel(channelId: string): Promise<void>;
4679
- }
4680
-
4681
4542
  /**
4682
4543
  * Generated when the desktop icon is clicked while it's already running.
4683
4544
  * @interface
@@ -4822,52 +4683,12 @@ declare type DisconnectedEvent_3 = BaseFrameEvent & {
4822
4683
  type: 'disconnected';
4823
4684
  };
4824
4685
 
4825
- /**
4826
- * A system channel will be global enough to have a presence across many apps. This gives us some hints
4827
- * to render them in a standard way. It is assumed it may have other properties too, but if it has these,
4828
- * this is their meaning.
4829
- */
4830
- declare interface DisplayMetadata {
4831
- /**
4832
- * A user-readable name for this channel, e.g: `"Red"`
4833
- */
4834
- readonly name?: string;
4835
- /**
4836
- * The color that should be associated within this channel when displaying this channel in a UI, e.g: `0xFF0000`.
4837
- */
4838
- readonly color?: string;
4839
- /**
4840
- * A URL of an image that can be used to display this channel
4841
- */
4842
- readonly glyph?: string;
4843
- }
4844
-
4845
- /**
4846
- * A system channel will be global enough to have a presence across many apps. This gives us some hints
4847
- * to render them in a standard way. It is assumed it may have other properties too, but if it has these,
4848
- * this is their meaning.
4849
- */
4850
- declare interface DisplayMetadata_2 {
4851
- /**
4852
- * A user-readable name for this channel, e.g: `"Red"`
4853
- */
4854
- readonly name?: string;
4855
- /**
4856
- * The color that should be associated within this channel when displaying this channel in a UI, e.g: `0xFF0000`.
4857
- */
4858
- readonly color?: string;
4859
- /**
4860
- * A URL of an image that can be used to display this channel
4861
- */
4862
- readonly glyph?: string;
4863
- }
4864
-
4865
4686
  /**
4866
4687
  * The display data for a context group.
4867
4688
  *
4868
4689
  * @interface
4869
4690
  */
4870
- declare type DisplayMetadata_3 = {
4691
+ declare type DisplayMetadata = {
4871
4692
  /**
4872
4693
  * A user-readable name for this context group, e.g: `"Red"`
4873
4694
  */
@@ -4882,6 +4703,25 @@ declare type DisplayMetadata_3 = {
4882
4703
  readonly glyph?: string;
4883
4704
  };
4884
4705
 
4706
+ /**
4707
+ * @interface
4708
+ *
4709
+ * Rules for domain-conditional `fin` API injection.
4710
+ *
4711
+ * @remarks Subset of {@link DomainSettings}.
4712
+ */
4713
+ declare type DomainApiSettings = {
4714
+ /**
4715
+ * Injection setting for the `fin` API for contexts on a matched domain.
4716
+ *
4717
+ * * 'none': The `fin` API will be not available.
4718
+ * * 'global': The entire `fin` API will be available.
4719
+ *
4720
+ * @defaultValue 'global'
4721
+ */
4722
+ fin: InjectionType;
4723
+ };
4724
+
4885
4725
  /**
4886
4726
  * @interface
4887
4727
  * Defines application settings that vary by the domain of the current context.
@@ -4894,6 +4734,10 @@ declare type DomainSettings = {
4894
4734
  * {@inheritDoc DomainSettingsRule}
4895
4735
  */
4896
4736
  rules: DomainSettingsRule[];
4737
+ /**
4738
+ * Default values for settings in {@link DomainSettingsRule}.
4739
+ */
4740
+ default?: PerDomainSettings;
4897
4741
  };
4898
4742
 
4899
4743
  /**
@@ -4906,22 +4750,11 @@ declare type DomainSettingsRule = {
4906
4750
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4907
4751
  * the domain(s) for which the rule applies.
4908
4752
  */
4909
- match: string[];
4753
+ match?: string[];
4910
4754
  /**
4911
4755
  * Settings applied when a webcontents has been navigated to a matched domain.
4912
4756
  */
4913
- options: {
4914
- /**
4915
- * {@inheritDoc FileDownloadSettings}
4916
- *
4917
- * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
4918
- */
4919
- downloadSettings?: FileDownloadSettings;
4920
- /**
4921
- * {@inheritDoc ApiInjection}
4922
- */
4923
- api?: ApiInjection;
4924
- };
4757
+ options: PerDomainSettings;
4925
4758
  };
4926
4759
 
4927
4760
  /**
@@ -4959,18 +4792,19 @@ declare type DownloadPreloadOption = {
4959
4792
  /**
4960
4793
  * @interface
4961
4794
  *
4962
- * A rule governing domain-conditional download behavior.
4795
+ * A rule that governs download behavior, discriminated by the URL of the download.
4963
4796
  */
4964
4797
  declare type DownloadRule = {
4965
4798
  /**
4966
- * {@inheritDoc FileDownloadBehaviorNames}
4799
+ * {@inheritDoc FileDownloadBehavior}
4967
4800
  */
4968
- behavior: FileDownloadBehaviorNames;
4801
+ behavior: FileDownloadBehavior;
4969
4802
  /**
4970
4803
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4971
- * the domain(s) for which the rule applies.
4804
+ * URL(s) of the resource(s) being downloaded.
4972
4805
  *
4973
- * @remarks The match is evaluated against the URL of the *download*.
4806
+ * @remarks The match is evaluated against the URL of the *file*, which is not necessarily the same as that
4807
+ * of the page in which a file download link is embedded.
4974
4808
  */
4975
4809
  match: string[];
4976
4810
  };
@@ -5250,7 +5084,7 @@ declare interface Environment {
5250
5084
  getWsConstructor(): typeof WebSocket;
5251
5085
  whenReady(): Promise<void>;
5252
5086
  getInteropInfo(fin: OpenFin.Fin<OpenFin.EntityType>): Promise<InternalInteropBrokerOptions & {
5253
- fdc3Version?: Fdc3Version;
5087
+ fdc3Version?: Version;
5254
5088
  }>;
5255
5089
  readonly type: EnvironmentType;
5256
5090
  }
@@ -5318,7 +5152,7 @@ declare type Event_4 = (WebContentsEvents.Event<'view'> & {
5318
5152
  */
5319
5153
  declare type Event_5<Topic extends string> = {
5320
5154
  topic: Topic;
5321
- } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent);
5155
+ } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent);
5322
5156
 
5323
5157
  /**
5324
5158
  * [Union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types) containing every possible event that can be emitted by a {@link Window}. Events are
@@ -5676,8 +5510,9 @@ declare type FaviconUpdatedEvent = PageFaviconUpdatedEvent;
5676
5510
 
5677
5511
  declare namespace FDC3 {
5678
5512
  export {
5679
- v1,
5680
- v2
5513
+ Version,
5514
+ v1_2,
5515
+ v2_0
5681
5516
  }
5682
5517
  }
5683
5518
 
@@ -5720,7 +5555,8 @@ export declare function fdc3FromFin(fin: OpenFin.Fin<OpenFin.EntityType>, { fdc3
5720
5555
  * }
5721
5556
  * ```
5722
5557
  */
5723
- export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5558
+ export declare class Fdc3Module extends FDC3ModuleBase<v1_2.Channel> implements v1_2.DesktopAgent {
5559
+ open(app: v1_2.TargetApp, context?: v1_2.Context): Promise<void>;
5724
5560
  /**
5725
5561
  * Add a context handler for incoming context. If an entity is part of a context group, and then sets its context handler, it will receive all of its declared contexts. If you wish to listen for all incoming contexts, pass `null` for the contextType argument.
5726
5562
  * @param contextType - The type of context you wish to handle.
@@ -5729,42 +5565,7 @@ export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5729
5565
  * @tutorial fdc3.addContextListener
5730
5566
  * @static
5731
5567
  */
5732
- addContextListener(contextType: string | null, handler: v1.ContextHandler): v1.Listener & Promise<v1.Listener>;
5733
- /**
5734
- * Broadcasts a context for the channel of the current entity.
5735
- * @param context - New context to set.
5736
- *
5737
- * @tutorial fdc3.broadcast
5738
- * @static
5739
- */
5740
- broadcast(context: v1.Context): Promise<void>;
5741
- /**
5742
- * Returns the Interop-Broker-defined context groups available for an entity to join.
5743
- *
5744
- * @tutorial fdc3.getSystemChannels
5745
- * @static
5746
- */
5747
- getSystemChannels(): Promise<v1.SystemChannel[]>;
5748
- /**
5749
- * Join all Interop Clients at the given identity to context group `contextGroupId`.
5750
- * If no target is specified, it adds the sender to the context group.
5751
- * Because multiple Channel connections/Interop Clients can potentially exist at a `uuid`/`name` combo, we currently join all Channel connections/Interop Clients at the given identity to the context group.
5752
- * If an `endpointId` is provided (which is unlikely, unless the call is coming from an external adapter), then we only join that single connection to the context group.
5753
- * For all intents and purposes, there will only be 1 connection present in Platform and Browser implementations, so this point is more-or-less moot.
5754
- * @param channelId - Id of the context group.
5755
- *
5756
- * @tutorial fdc3.joinChannel
5757
- * @static
5758
- */
5759
- joinChannel(channelId: string): Promise<void>;
5760
- /**
5761
- * Removes the specified target from a context group.
5762
- * If no target is specified, it removes the sender from their context group.
5763
- *
5764
- * @tutorial fdc3.leaveCurrentChannel
5765
- * @static
5766
- */
5767
- leaveCurrentChannel(): Promise<void>;
5568
+ addContextListener(contextType: string | null, handler: v1_2.ContextHandler): v1_2.Listener & Promise<v1_2.Listener>;
5768
5569
  /**
5769
5570
  * Adds a listener for incoming Intents.
5770
5571
  * @param intent - Name of the Intent
@@ -5773,7 +5574,7 @@ export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5773
5574
  * @tutorial fdc3.addIntentListener
5774
5575
  * @static
5775
5576
  */
5776
- addIntentListener(intent: string, handler: v1.ContextHandler): v1.Listener & Promise<v1.Listener>;
5577
+ addIntentListener(intent: string, handler: v1_2.ContextHandler): v1_2.Listener & Promise<v1_2.Listener>;
5777
5578
  /**
5778
5579
  * Raises a specific intent.
5779
5580
  * @param intent Name of the Intent.
@@ -5783,13 +5584,7 @@ export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5783
5584
  * @tutorial fdc3.raiseIntent
5784
5585
  * @static
5785
5586
  */
5786
- raiseIntent(intent: string, context: v1.Context, app?: v1.TargetApp): Promise<v1.IntentResolution>;
5787
- /**
5788
- * Returns the Channel that the entity is subscribed to. Returns null if not joined to a channel.
5789
- *
5790
- * @tutorial fdc3.getCurrentChannel
5791
- */
5792
- getCurrentChannel(): Promise<v1.Channel | null>;
5587
+ raiseIntent(intent: string, context: v1_2.Context, app?: v1_2.TargetApp): Promise<v1_2.IntentResolution>;
5793
5588
  /**
5794
5589
  * Find out more information about a particular intent by passing its name, and optionally its context.
5795
5590
  * @param intent Name of the Intent
@@ -5797,14 +5592,14 @@ export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5797
5592
  *
5798
5593
  * @tutorial fdc3.findIntent
5799
5594
  */
5800
- findIntent(intent: string, context?: v1.Context): Promise<v1.AppIntent>;
5595
+ findIntent(intent: string, context?: v1_2.Context): Promise<v1_2.AppIntent>;
5801
5596
  /**
5802
5597
  * Find all the available intents for a particular context.
5803
5598
  * @param context
5804
5599
  *
5805
5600
  * @tutorial fdc3.findIntentsByContext
5806
5601
  */
5807
- findIntentsByContext(context: v1.Context): Promise<Array<v1.AppIntent>>;
5602
+ findIntentsByContext(context: v1_2.Context): Promise<Array<v1_2.AppIntent>>;
5808
5603
  /**
5809
5604
  * Finds and raises an intent against a target app based purely on context data.
5810
5605
  * @param context
@@ -5812,30 +5607,20 @@ export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5812
5607
  *
5813
5608
  * @tutorial fdc3.raiseIntentForContext
5814
5609
  */
5815
- raiseIntentForContext(context: v1.Context, app?: v1.TargetApp): Promise<v1.IntentResolution>;
5610
+ raiseIntentForContext(context: v1_2.Context, app?: v1_2.TargetApp): Promise<v1_2.IntentResolution>;
5816
5611
  /**
5817
5612
  * Returns a Channel object for the specified channel, creating it as an App Channel if it does not exist.
5818
5613
  * @param channelId
5819
5614
  *
5820
5615
  * @tutorial fdc3.getOrCreateChannel
5821
5616
  */
5822
- getOrCreateChannel(channelId: string): Promise<v1.Channel>;
5617
+ getOrCreateChannel(channelId: string): Promise<v1_2.Channel>;
5823
5618
  /**
5824
5619
  * Returns metadata relating to the FDC3 object and its provider, including the supported version of the FDC3 specification and the name of the provider of the implementation.
5825
5620
  *
5826
5621
  * @tutorial fdc3.getInfo
5827
5622
  */
5828
- getInfo(): v1.ImplementationMetadata;
5829
- /**
5830
- * Launches an app with target information, which can either be a string or an AppMetadata object.
5831
- * @param app
5832
- * @param context
5833
- *
5834
- * @tutorial fdc3.open
5835
- */
5836
- open(app: v1.TargetApp, context?: v1.Context): Promise<void>;
5837
- private getCurrentContextGroupInfo;
5838
- private buildChannelObject;
5623
+ getInfo(): v1_2.ImplementationMetadata;
5839
5624
  }
5840
5625
 
5841
5626
  /**
@@ -5873,9 +5658,7 @@ export declare class Fdc3Module extends Base implements v1.DesktopAgent {
5873
5658
  * }
5874
5659
  * ```
5875
5660
  */
5876
- export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5877
- private fdc3Module;
5878
- constructor(wire: Transport);
5661
+ export declare class Fdc3Module2 extends FDC3ModuleBase<v2_0.Channel> implements v2_0.DesktopAgent {
5879
5662
  /**
5880
5663
  * Launches an app, specified via an AppIdentifier object.
5881
5664
  * @param app
@@ -5883,28 +5666,28 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5883
5666
  *
5884
5667
  * @tutorial fdc3.open
5885
5668
  */
5886
- open(app: v2.AppIdentifier | v1.TargetApp, context?: v2.Context): Promise<v2.AppIdentifier>;
5669
+ open(app: v2_0.AppIdentifier | string, context?: v2_0.Context): Promise<v2_0.AppIdentifier>;
5887
5670
  /**
5888
5671
  * Find all the available instances for a particular application.
5889
5672
  * @param app
5890
5673
  *
5891
5674
  * @tutorial fdc3v2.findInstances
5892
5675
  */
5893
- findInstances(app: v2.AppIdentifier): Promise<Array<v2.AppIdentifier>>;
5676
+ findInstances(app: v2_0.AppIdentifier): Promise<Array<v2_0.AppIdentifier>>;
5894
5677
  /**
5895
5678
  * Retrieves the AppMetadata for an AppIdentifier, which provides additional metadata (such as icons, a title and description) from the App Directory record for the application, that may be used for display purposes.
5896
5679
  * @param app
5897
5680
  *
5898
5681
  * @tutorial fdc3v2.getAppMetadata
5899
5682
  */
5900
- getAppMetadata(app: v2.AppIdentifier): Promise<v2.AppMetadata>;
5683
+ getAppMetadata(app: v2_0.AppIdentifier): Promise<v2_0.AppMetadata>;
5901
5684
  /**
5902
5685
  * Broadcasts a context for the channel of the current entity.
5903
5686
  * @param context - New context to set.
5904
5687
  *
5905
5688
  * @tutorial fdc3.broadcast
5906
5689
  */
5907
- broadcast(context: v2.Context): Promise<void>;
5690
+ broadcast(context: v2_0.Context): Promise<void>;
5908
5691
  /**
5909
5692
  * Add a context handler for incoming context. If an entity is part of a context group, and then sets its context handler, it will receive all of its declared contexts. If you wish to listen for all incoming contexts, pass `null` for the contextType argument.
5910
5693
  * @param contextType
@@ -5912,7 +5695,7 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5912
5695
  *
5913
5696
  * @tutorial fdc3.addContextListener
5914
5697
  */
5915
- addContextListener(contextType: string | null, handler: v2.ContextHandler): Promise<v2.Listener>;
5698
+ addContextListener(contextType: string | null, handler: v2_0.ContextHandler): Promise<v2_0.Listener>;
5916
5699
  /**
5917
5700
  * Find out more information about a particular intent by passing its name, and optionally its context and resultType.
5918
5701
  * @param intent Name of the Intent
@@ -5921,7 +5704,7 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5921
5704
  *
5922
5705
  * @tutorial fdc3.findIntent
5923
5706
  */
5924
- findIntent(intent: string, context?: v2.Context, resultType?: string): Promise<v2.AppIntent>;
5707
+ findIntent(intent: string, context?: v2_0.Context, resultType?: string): Promise<v2_0.AppIntent>;
5925
5708
  /**
5926
5709
  * Find all the available intents for a particular context.
5927
5710
  * @param context
@@ -5929,7 +5712,7 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5929
5712
  *
5930
5713
  * @tutorial fdc3v2.findIntentsByContext
5931
5714
  */
5932
- findIntentsByContext(context: v2.Context, resultType?: string): Promise<Array<v2.AppIntent>>;
5715
+ findIntentsByContext(context: v2_0.Context, resultType?: string): Promise<Array<v2_0.AppIntent>>;
5933
5716
  /**
5934
5717
  * Raises a specific intent for resolution against apps registered with the desktop agent.
5935
5718
  * @param intent Name of the Intent
@@ -5938,7 +5721,7 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5938
5721
  *
5939
5722
  * @tutorial fdc3v2.raiseIntent
5940
5723
  */
5941
- raiseIntent(intent: string, context: v2.Context, app?: v2.AppIdentifier | v1.TargetApp): Promise<v2.IntentResolution>;
5724
+ raiseIntent(intent: string, context: v2_0.Context, app?: v2_0.AppIdentifier | string): Promise<v2_0.IntentResolution>;
5942
5725
  /**
5943
5726
  * Finds and raises an intent against apps registered with the desktop agent based purely on the type of the context data.
5944
5727
  * @param context Context associated with the Intent
@@ -5946,7 +5729,7 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5946
5729
  *
5947
5730
  * @tutorial fdc3v2.raiseIntentForContext
5948
5731
  */
5949
- raiseIntentForContext(context: v2.Context, app?: v2.AppIdentifier | v1.TargetApp): Promise<v2.IntentResolution>;
5732
+ raiseIntentForContext(context: v2_0.Context, app?: v2_0.AppIdentifier | string): Promise<v2_0.IntentResolution>;
5950
5733
  /**
5951
5734
  * Adds a listener for incoming intents.
5952
5735
  * @param intent Name of the Intent
@@ -5954,33 +5737,33 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
5954
5737
  *
5955
5738
  * @tutorial fdc3.addIntentListener
5956
5739
  */
5957
- addIntentListener(intent: string, handler: v2.IntentHandler): Promise<v1.Listener>;
5740
+ addIntentListener(intent: string, handler: v2_0.IntentHandler): Promise<v2_0.Listener>;
5958
5741
  /**
5959
5742
  * Returns a Channel object for the specified channel, creating it as an App Channel if it does not exist.
5960
5743
  * @param channelId
5961
5744
  *
5962
5745
  * @tutorial fdc3.getOrCreateChannel
5963
5746
  */
5964
- getOrCreateChannel(channelId: string): Promise<v2.Channel>;
5747
+ getOrCreateChannel(channelId: string): Promise<v2_0.Channel>;
5965
5748
  /**
5966
5749
  * Returns a Channel with an auto-generated identity that is intended for private communication between applications. Primarily used to create channels that will be returned to other applications via an IntentResolution for a raised intent.
5967
5750
  *
5968
5751
  * @tutorial fdc3v2.createPrivateChannel
5969
5752
  */
5970
- createPrivateChannel(): Promise<v2.PrivateChannel>;
5753
+ createPrivateChannel(): Promise<v2_0.PrivateChannel>;
5971
5754
  /**
5972
5755
  * Retrieves a list of the User Channels available for the app to join.
5973
5756
  *
5974
5757
  * @tutorial fdc3v2.getUserChannels
5975
5758
  */
5976
- getUserChannels(): Promise<Array<v1.SystemChannel>>;
5759
+ getUserChannels(): Promise<Array<v2_0.Channel>>;
5977
5760
  /**
5978
5761
  * Retrieves a list of the User Channels available for the app to join.
5979
5762
  *
5980
5763
  * @deprecated Please use {@link fdc3.getUserChannels fdc3.getUserChannels} instead
5981
5764
  * @tutorial fdc3.getSystemChannels
5982
5765
  */
5983
- getSystemChannels(): Promise<Array<v1.SystemChannel>>;
5766
+ getSystemChannels(): Promise<Array<v2_0.Channel>>;
5984
5767
  /**
5985
5768
  * Join an app to a specified User channel.
5986
5769
  * @param channelId Channel name
@@ -6001,23 +5784,83 @@ export declare class Fdc3Module2 extends Base implements v2.DesktopAgent {
6001
5784
  *
6002
5785
  * @tutorial fdc3.getCurrentChannel
6003
5786
  */
6004
- getCurrentChannel(): Promise<v2.Channel | null>;
6005
- /**
6006
- * Removes the app from any User channel membership.
6007
- *
6008
- * @tutorial fdc3.leaveCurrentChannel
6009
- */
6010
- leaveCurrentChannel(): Promise<void>;
5787
+ getCurrentChannel(): Promise<v2_0.Channel | null>;
6011
5788
  /**
6012
5789
  * Retrieves information about the FDC3 implementation, including the supported version of the FDC3 specification, the name of the provider of the implementation, its own version number, details of whether optional API features are implemented and the metadata of the calling application according to the desktop agent.
6013
5790
  * fdc3HandleGetInfo must be overridden in the InteropBroker so that the ImplementationMetadata will have the appMetadata info.
6014
5791
  *
6015
5792
  * @tutorial fdc3v2.getInfo
6016
5793
  */
6017
- getInfo(): Promise<v2.ImplementationMetadata>;
5794
+ getInfo(): Promise<v2_0.ImplementationMetadata>;
6018
5795
  }
6019
5796
 
6020
- export declare type Fdc3Version = '1.2' | '2.0';
5797
+ declare class FDC3ModuleBase<ChannelType extends v1_2.Channel | v2_0.Channel> {
5798
+ #private;
5799
+ protected wire: Transport;
5800
+ protected get client(): InteropClient;
5801
+ protected get fin(): OpenFin.Fin;
5802
+ constructor(producer: () => InteropClient, wire: Transport);
5803
+ /**
5804
+ * Broadcasts a context for the channel of the current entity.
5805
+ * @param context - New context to set.
5806
+ *
5807
+ * @tutorial fdc3.broadcast
5808
+ * @static
5809
+ */
5810
+ broadcast(context: v1_2.Context): Promise<void>;
5811
+ /**
5812
+ * Launches an app with target information, which can either be a string or an AppMetadata object.
5813
+ * @param app
5814
+ * @param context
5815
+ *
5816
+ * @tutorial fdc3.open
5817
+ */
5818
+ protected _open(app: v1_2.TargetApp, context?: v1_2.Context): Promise<v2_0.AppIdentifier>;
5819
+ /**
5820
+ * Returns a Channel object for the specified channel, creating it as an App Channel if it does not exist.
5821
+ * @param channelId
5822
+ *
5823
+ * @tutorial fdc3.getOrCreateChannel
5824
+ */
5825
+ getOrCreateChannel(channelId: string): Promise<ChannelType>;
5826
+ /**
5827
+ * Returns the Interop-Broker-defined context groups available for an entity to join.
5828
+ *
5829
+ * @tutorial fdc3.getSystemChannels
5830
+ * @static
5831
+ */
5832
+ getSystemChannels(): Promise<ChannelType[]>;
5833
+ /**
5834
+ * Join all Interop Clients at the given identity to context group `contextGroupId`.
5835
+ * If no target is specified, it adds the sender to the context group.
5836
+ * Because multiple Channel connections/Interop Clients can potentially exist at a `uuid`/`name` combo, we currently join all Channel connections/Interop Clients at the given identity to the context group.
5837
+ * If an `endpointId` is provided (which is unlikely, unless the call is coming from an external adapter), then we only join that single connection to the context group.
5838
+ * For all intents and purposes, there will only be 1 connection present in Platform and Browser implementations, so this point is more-or-less moot.
5839
+ * @param channelId - Id of the context group.
5840
+ *
5841
+ * @tutorial fdc3.joinChannel
5842
+ * @static
5843
+ */
5844
+ joinChannel(channelId: string): Promise<void>;
5845
+ /**
5846
+ * Returns the Channel that the entity is subscribed to. Returns null if not joined to a channel.
5847
+ *
5848
+ * @tutorial fdc3.getCurrentChannel
5849
+ */
5850
+ getCurrentChannel(): Promise<ChannelType | null>;
5851
+ /**
5852
+ * Removes the specified target from a context group.
5853
+ * If no target is specified, it removes the sender from their context group.
5854
+ *
5855
+ * @tutorial fdc3.leaveCurrentChannel
5856
+ * @static
5857
+ */
5858
+ leaveCurrentChannel(): Promise<void>;
5859
+ private getCurrentContextGroupInfo;
5860
+ private buildChannelObject;
5861
+ }
5862
+
5863
+ export declare type Fdc3Version = OpenFin.FDC3.Version;
6021
5864
 
6022
5865
  /**
6023
5866
  * @interface
@@ -6032,7 +5875,12 @@ declare type FetchManifestPayload = {
6032
5875
  /**
6033
5876
  * Whether file downloads raise a user prompt.
6034
5877
  */
6035
- declare type FileDownloadBehaviorNames = 'prompt' | 'no-prompt';
5878
+ declare type FileDownloadBehavior = 'prompt' | 'no-prompt';
5879
+
5880
+ /**
5881
+ * @deprecated Renamed to {@link FileDownloadBehavior}.
5882
+ */
5883
+ declare type FileDownloadBehaviorNames = FileDownloadBehavior;
6036
5884
 
6037
5885
  /**
6038
5886
  * Generated when a file download has completed.
@@ -6217,8 +6065,8 @@ declare type FindInPageResult = {
6217
6065
  /**
6218
6066
  * @interface
6219
6067
  */
6220
- declare type FindIntentsByContextOptions<MetadataType = IntentMetadata_3> = {
6221
- context: Context_3;
6068
+ declare type FindIntentsByContextOptions<MetadataType = IntentMetadata> = {
6069
+ context: Context;
6222
6070
  metadata?: MetadataType;
6223
6071
  };
6224
6072
 
@@ -6663,6 +6511,20 @@ declare class GoldenLayout_2 implements EventEmitter_2 {
6663
6511
 
6664
6512
  dropTargetIndicator: any;
6665
6513
 
6514
+ _isFullPage: boolean;
6515
+
6516
+ _onUnload: any;
6517
+
6518
+ tabDropPlaceholder: any;
6519
+
6520
+ transitionIndicator: any;
6521
+
6522
+ _dragSources: any;
6523
+
6524
+ _resizeFunction: any;
6525
+
6526
+ _unloadFunction: any;
6527
+
6666
6528
  /**
6667
6529
  * @param config A GoldenLayout configuration object
6668
6530
  * @param container The DOM element the layout will be initialised in. Default: document.body
@@ -6991,15 +6853,6 @@ declare type HotkeyEvent_2 = InputEvent_2 & BaseEvent_5 & {
6991
6853
  type: 'hotkey';
6992
6854
  };
6993
6855
 
6994
- declare interface Icon {
6995
- /** The icon url */
6996
- readonly src: string;
6997
- /** The icon dimension, formatted as `<height>x<width>`. */
6998
- readonly size?: string;
6999
- /** Icon media type. If not present the Desktop Agent may use the src file extension. */
7000
- readonly type?: string;
7001
- }
7002
-
7003
6856
  declare type Identity = OpenFin.Identity;
7004
6857
 
7005
6858
  declare type Identity_2 = OpenFin.Identity;
@@ -7061,17 +6914,6 @@ declare type IdleStateChangedEvent = BaseEvent_9 & {
7061
6914
  isIdle: boolean;
7062
6915
  };
7063
6916
 
7064
- declare interface Image_2 {
7065
- /** The image url. */
7066
- readonly src: string;
7067
- /** The image dimension, formatted as `<height>x<width>`. */
7068
- readonly size?: string;
7069
- /** Image media type. If not present the Desktop Agent may use the src file extension. */
7070
- readonly type?: string;
7071
- /** Caption for the image. */
7072
- readonly label?: string;
7073
- }
7074
-
7075
6917
  declare type ImageFormatOptions = {
7076
6918
  format: 'dataURL' | 'png' | 'bmp';
7077
6919
  } | {
@@ -7082,57 +6924,15 @@ declare type ImageFormatOptions = {
7082
6924
  quality?: number;
7083
6925
  };
7084
6926
 
7085
- /**
7086
- * Metadata relating to the FDC3 Desktop Agent implementation and its provider.
7087
- */
7088
- declare interface ImplementationMetadata {
7089
- /** The version number of the FDC3 specification that the implementation provides.
7090
- * The string must be a numeric semver version, e.g. 1.2 or 1.2.1.
7091
- */
7092
- readonly fdc3Version: string;
7093
- /** The name of the provider of the FDC3 Desktop Agent Implementation (e.g. Finsemble, Glue42, OpenFin etc.). */
7094
- readonly provider: string;
7095
- /** The version of the provider of the FDC3 Desktop Agent Implementation (e.g. 5.3.0). */
7096
- readonly providerVersion?: string;
7097
- }
7098
-
7099
- /**
7100
- * Metadata relating to the FDC3 Desktop Agent implementation and its provider.
7101
- */
7102
- declare interface ImplementationMetadata_2 {
7103
- /** The version number of the FDC3 specification that the implementation provides.
7104
- * The string must be a numeric semver version, e.g. 1.2 or 1.2.1.
7105
- */
7106
- readonly fdc3Version: string;
7107
- /** The name of the provider of the Desktop Agent implementation (e.g. Finsemble, Glue42, OpenFin etc.). */
7108
- readonly provider: string;
7109
- /** The version of the provider of the Desktop Agent implementation (e.g. 5.3.0). */
7110
- readonly providerVersion?: string;
7111
- /** Metadata indicating whether the Desktop Agent implements optional features of
7112
- * the Desktop Agent API.
7113
- */
7114
- readonly optionalFeatures: {
7115
- /** Used to indicate whether the exposure of 'originating app metadata' for
7116
- * context and intent messages is supported by the Desktop Agent. */
7117
- readonly OriginatingAppMetadata: boolean;
7118
- /** Used to indicate whether the optional `fdc3.joinUserChannel`,
7119
- * `fdc3.getCurrentChannel` and `fdc3.leaveCurrentChannel` are implemented by
7120
- * the Desktop Agent. */
7121
- readonly UserChannelMembershipAPIs: boolean;
7122
- };
7123
- /** The calling application instance's own metadata, according to the Desktop Agent (MUST include at least the `appId` and `instanceId`). */
7124
- readonly appMetadata: AppMetadata_2;
7125
- }
7126
-
7127
6927
  /**
7128
6928
  * @interface
7129
6929
  */
7130
- declare type InfoForIntentOptions<MetadataType = IntentMetadata_3> = {
6930
+ declare type InfoForIntentOptions<MetadataType = IntentMetadata> = {
7131
6931
  /**
7132
6932
  * Name of the intent to get info for.
7133
6933
  */
7134
6934
  name: string;
7135
- context?: Context_3;
6935
+ context?: Context;
7136
6936
  metadata?: MetadataType;
7137
6937
  };
7138
6938
 
@@ -7240,16 +7040,10 @@ declare type InstalledApps_2 = {
7240
7040
  [key: string]: InstallationInfo;
7241
7041
  };
7242
7042
 
7243
- declare interface Intent {
7244
- name: string;
7245
- context: Context_2;
7246
- metadata: IntentMetadata_2;
7247
- }
7248
-
7249
7043
  /**
7250
7044
  * Combination of an action and a context that is passed to an application for resolution.
7251
7045
  */
7252
- declare type Intent_2<MetadataType = IntentMetadata_3> = {
7046
+ declare type Intent<MetadataType = IntentMetadata> = {
7253
7047
  /**
7254
7048
  * Name of the intent.
7255
7049
  */
@@ -7257,54 +7051,25 @@ declare type Intent_2<MetadataType = IntentMetadata_3> = {
7257
7051
  /**
7258
7052
  * Data associated with the intent.
7259
7053
  */
7260
- context: Context_3;
7054
+ context: Context;
7261
7055
  metadata?: MetadataType;
7262
7056
  };
7263
7057
 
7264
- declare type IntentHandler = (context: Context_2, metadata?: ContextMetadata) => Promise<IntentResult> | void;
7265
-
7266
7058
  /**
7267
7059
  * Subscription function for registerIntentHandler.
7268
7060
  */
7269
- declare type IntentHandler_2 = (intent: Intent_2) => void;
7061
+ declare type IntentHandler = (intent: Intent) => void;
7270
7062
 
7271
7063
  /**
7272
- * Intent descriptor
7064
+ * The type used to describe an intent within the platform.
7065
+ * @interface
7273
7066
  */
7274
- declare interface IntentMetadata {
7275
- /** The unique name of the intent that can be invoked by the raiseIntent call */
7276
- readonly name: string;
7277
- /** A friendly display name for the intent that should be used to render UI elements */
7278
- readonly displayName: string;
7279
- }
7280
-
7281
- declare type IntentMetadata_2<TargetType = any> = {
7067
+ declare type IntentMetadata<TargetType = any> = {
7282
7068
  target?: TargetType;
7283
7069
  resultType?: string;
7284
7070
  intentResolutionResultId?: string;
7285
7071
  };
7286
7072
 
7287
- /**
7288
- * The type used to describe an intent within the platform.
7289
- * @interface
7290
- */
7291
- declare type IntentMetadata_3<TargetType = any> = FDC3.v2.IntentMetadata<TargetType>;
7292
-
7293
- declare interface IntentResolution {
7294
- source: TargetApp;
7295
- data?: object;
7296
- version: string;
7297
- }
7298
-
7299
- declare interface IntentResolution_2 {
7300
- source: AppIdentifier;
7301
- intent: string;
7302
- version?: string;
7303
- getResult(): Promise<IntentResult>;
7304
- }
7305
-
7306
- declare type IntentResult = Context_2 | Channel_4 | PrivateChannel;
7307
-
7308
7073
  /**
7309
7074
  * A messaging bus that allows for pub/sub messaging between different applications.
7310
7075
  *
@@ -7562,7 +7327,6 @@ declare type InteropActionLoggingOption = {
7562
7327
  */
7563
7328
  declare class InteropBroker extends Base {
7564
7329
  #private;
7565
- private getProvider;
7566
7330
  private interopClients;
7567
7331
  private contextGroupsById;
7568
7332
  private intentClientMap;
@@ -7573,7 +7337,8 @@ declare class InteropBroker extends Base {
7573
7337
  /**
7574
7338
  * @internal
7575
7339
  */
7576
- constructor(wire: Transport, getProvider: () => Promise<OpenFin.ChannelProvider>, options: InternalInteropBrokerOptions);
7340
+ constructor(wire: Transport, createProvider: () => Promise<OpenFin.ChannelProvider>, options: InternalInteropBrokerOptions);
7341
+ private getProvider;
7577
7342
  static createClosedConstructor(...args: ConstructorParameters<typeof InteropBroker>): {
7578
7343
  new (): InteropBroker;
7579
7344
  };
@@ -7878,23 +7643,23 @@ declare class InteropBroker extends Base {
7878
7643
  * @param clientIdentity Identity of the Client making the request.
7879
7644
  */
7880
7645
  fdc3HandleOpen({ app, context }: {
7881
- app: FDC3.v1.TargetApp | FDC3.v2.AppIdentifier;
7646
+ app: FDC3.v1_2.TargetApp | FDC3.v2_0.AppIdentifier;
7882
7647
  context: OpenFin.Context;
7883
- }, clientIdentity: OpenFin.ClientIdentity): Promise<void | FDC3.v2.AppIdentifier>;
7648
+ }, clientIdentity: OpenFin.ClientIdentity): Promise<void | FDC3.v2_0.AppIdentifier>;
7884
7649
  /**
7885
7650
  * Responsible for resolving the fdc3.findInstances call.
7886
7651
  * Must be overridden
7887
7652
  * @param app AppIdentifier that was passed to fdc3.findInstances
7888
7653
  * @param clientIdentity Identity of the Client making the request.
7889
7654
  */
7890
- fdc3HandleFindInstances(app: FDC3.v2.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7655
+ fdc3HandleFindInstances(app: FDC3.v2_0.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7891
7656
  /**
7892
7657
  * Responsible for resolving the fdc3.getAppMetadata call.
7893
7658
  * Must be overridden
7894
7659
  * @param app AppIdentifier that was passed to fdc3.getAppMetadata
7895
7660
  * @param clientIdentity Identity of the Client making the request.
7896
7661
  */
7897
- fdc3HandleGetAppMetadata(app: FDC3.v2.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7662
+ fdc3HandleGetAppMetadata(app: FDC3.v2_0.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7898
7663
  /**
7899
7664
  * This function is called by the Interop Broker whenever a Context handler would fire.
7900
7665
  * For FDC3 2.0 you would need to override this function and add the contextMetadata as
@@ -8139,7 +7904,7 @@ declare class InteropClient extends Base {
8139
7904
  /**
8140
7905
  * @internal
8141
7906
  */
8142
- constructor(wire: Transport, name: string, interopConfig?: OpenFin.InteropConfig);
7907
+ constructor(wire: Transport, clientPromise: Promise<OpenFin.ChannelClient>);
8143
7908
  /**
8144
7909
  * Sets a context for the context group of the current entity.
8145
7910
  *
@@ -8491,6 +8256,23 @@ declare class InteropClient extends Base {
8491
8256
  * ```
8492
8257
  */
8493
8258
  onDisconnection(listener: OpenFin.InteropClientOnDisconnectionListener): Promise<void>;
8259
+ /**
8260
+ * Returns a representation of this Interop Client as an FDC3 DesktopAgent matching the given version.
8261
+ * Note that this does not set a global FDC3 object, it only returns an instance of the FDC3 DesktopAgent.
8262
+ * This also does not raise the FDC3Ready event.
8263
+ */
8264
+ getFDC3Sync(version: '2.0'): OpenFin.FDC3.v2_0.DesktopAgent;
8265
+ getFDC3Sync(version: '1.2'): OpenFin.FDC3.v1_2.DesktopAgent;
8266
+ getFDC3Sync(version: OpenFin.FDC3.Version): OpenFin.FDC3.v1_2.DesktopAgent | OpenFin.FDC3.v2_0.DesktopAgent;
8267
+ /**
8268
+ *
8269
+ * Returns a representation of this Interop Client as an FDC3 DesktopAgent matching the given version.
8270
+ * Note that this does not set a global FDC3 object, it only returns an instance of the FDC3 DesktopAgent.
8271
+ * This also does not raise the FDC3Ready event.
8272
+ */
8273
+ getFDC3(version: '2.0'): Promise<OpenFin.FDC3.v2_0.DesktopAgent>;
8274
+ getFDC3(version: '1.2'): Promise<OpenFin.FDC3.v1_2.DesktopAgent>;
8275
+ getFDC3(version: OpenFin.FDC3.Version): Promise<OpenFin.FDC3.v1_2.DesktopAgent | OpenFin.FDC3.v2_0.DesktopAgent>;
8494
8276
  /**
8495
8277
  * @internal
8496
8278
  *
@@ -9716,21 +9498,7 @@ declare type LayoutSnapshot = {
9716
9498
  */
9717
9499
  declare type LegacyWinOptionsInAppOptions = Pick<WindowCreationOptions, 'accelerator' | 'alwaysOnTop' | 'api' | 'aspectRatio' | 'autoplayPolicy' | 'autoShow' | 'backgroundColor' | 'contentNavigation' | 'contextMenu' | 'cornerRounding' | 'customData' | 'customRequestHeaders' | 'defaultCentered' | 'defaultHeight' | 'defaultLeft' | 'defaultTop' | 'defaultWidth' | 'frame' | 'hideOnClose' | 'icon' | 'maxHeight' | 'maximizable' | 'maxWidth' | 'minHeight' | 'minimizable' | 'minWidth' | 'opacity' | 'preloadScripts' | 'resizable' | 'resizeRegion' | 'saveWindowState' | 'ignoreSavedWindowState' | 'shadow' | 'showTaskbarIcon' | 'smallWindow' | 'state' | 'taskbarIconGroup' | 'waitForPageLoad' | '_internalWorkspaceData'>;
9718
9500
 
9719
- declare interface Listener {
9720
- /**
9721
- * Unsubscribe the listener object.
9722
- */
9723
- unsubscribe(): void;
9724
- }
9725
-
9726
- declare interface Listener_2 {
9727
- /**
9728
- * Unsubscribe the listener object.
9729
- */
9730
- unsubscribe(): void;
9731
- }
9732
-
9733
- declare type Listener_3<T extends {
9501
+ declare type Listener<T extends {
9734
9502
  type: string;
9735
9503
  }> = (payload: T) => void;
9736
9504
 
@@ -10119,7 +9887,7 @@ declare type MutableViewOptions = {
10119
9887
  /**
10120
9888
  * Configurations for API injection.
10121
9889
  */
10122
- api: Api;
9890
+ api: ApiSettings;
10123
9891
  /**
10124
9892
  * Restrict navigation to URLs that match an allowed pattern.
10125
9893
  * In the lack of an allowlist, navigation to URLs that match a denylisted pattern would be prohibited.
@@ -10519,6 +10287,7 @@ declare namespace OpenFin {
10519
10287
  export {
10520
10288
  FinApi,
10521
10289
  Fin,
10290
+ FDC3,
10522
10291
  Application,
10523
10292
  ApplicationModule,
10524
10293
  ExternalApplication,
@@ -10570,11 +10339,11 @@ declare namespace OpenFin {
10570
10339
  CustomProtocolOptions,
10571
10340
  InteropBrokerOptions,
10572
10341
  ContextGroupInfo,
10573
- DisplayMetadata_3 as DisplayMetadata,
10342
+ DisplayMetadata,
10574
10343
  LegacyWinOptionsInAppOptions,
10575
10344
  Snapshot,
10576
10345
  ContextGroupStates,
10577
- Context_3 as Context,
10346
+ Context,
10578
10347
  MonitorInfo,
10579
10348
  Point,
10580
10349
  PointTopLeft,
@@ -10601,6 +10370,7 @@ declare namespace OpenFin {
10601
10370
  ResizeRegion,
10602
10371
  Accelerator,
10603
10372
  Api,
10373
+ ApiSettings,
10604
10374
  InjectionType,
10605
10375
  NavigationRules,
10606
10376
  ContentNavigation,
@@ -10752,14 +10522,19 @@ declare namespace OpenFin {
10752
10522
  DefaultDomainSettingsRule,
10753
10523
  DomainSettings,
10754
10524
  ApiInjection,
10525
+ DomainApiSettings,
10526
+ ContentPermission,
10527
+ PerDomainSettings,
10755
10528
  DomainSettingsRule,
10529
+ FileDownloadBehavior,
10756
10530
  FileDownloadBehaviorNames,
10757
10531
  FileDownloadSettings,
10758
10532
  DownloadRule,
10759
- ContextHandler_3 as ContextHandler,
10760
- Intent_2 as Intent,
10761
- IntentMetadata_3 as IntentMetadata,
10762
- IntentHandler_2 as IntentHandler,
10533
+ ContextHandler,
10534
+ Intent,
10535
+ IntentMetadata,
10536
+ IntentHandler,
10537
+ ContentCreationBehavior,
10763
10538
  ContentCreationBehaviorNames,
10764
10539
  MatchPattern,
10765
10540
  BaseContentCreationRule,
@@ -10979,6 +10754,31 @@ declare type Payload_9<Type extends EventType_8> = Extract<Event_11, {
10979
10754
  type: Type;
10980
10755
  }>;
10981
10756
 
10757
+ /**
10758
+ * @interface
10759
+ *
10760
+ * Conditional settings for a domain or set of domains.
10761
+ */
10762
+ declare type PerDomainSettings = {
10763
+ /**
10764
+ * {@inheritDoc FileDownloadSettings}
10765
+ *
10766
+ * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
10767
+ */
10768
+ downloadSettings?: FileDownloadSettings;
10769
+ /**
10770
+ * {@inheritDoc ApiInjection}
10771
+ */
10772
+ api?: DomainApiSettings;
10773
+ /**
10774
+ * Whether DOM content can be loaded (by navigation or redirect).
10775
+ *
10776
+ * @remarks If this is included in {@link DomainSettings.default}, then {@link ContentNavigation} and
10777
+ * {@link ContentRedirect} will be **ignored**.
10778
+ */
10779
+ content?: ContentPermission;
10780
+ };
10781
+
10982
10782
  /**
10983
10783
  * Generated when window finishes loading. Provides performance and navigation data.
10984
10784
  * @interface
@@ -11017,7 +10817,7 @@ declare class Platform extends EmitterBase<OpenFin.PlatformEvent> {
11017
10817
  /**
11018
10818
  * @internal
11019
10819
  */
11020
- constructor(identity: OpenFin.ApplicationIdentity, channel: Channel_5);
10820
+ constructor(identity: OpenFin.ApplicationIdentity, channel: Channel_3);
11021
10821
  getClient: (identity?: OpenFin.ApplicationIdentity) => Promise<ChannelClient_2>;
11022
10822
  /**
11023
10823
  * Creates a new view and attaches it to a specified target window.
@@ -12793,14 +12593,6 @@ declare type PrintOptions = {
12793
12593
  dpi?: Dpi;
12794
12594
  };
12795
12595
 
12796
- declare type PrivateChannel = Omit<Channel_4, 'addContextListener'> & {
12797
- addContextListener(contextType: string | null, handler: ContextHandler_2): Promise<Listener_2>;
12798
- onAddContextListener(handler: (contextType?: string) => void): Listener_2;
12799
- onUnsubscribe(handler: (contextType?: string) => void): Listener_2;
12800
- onDisconnect(handler: () => void): Listener_2;
12801
- disconnect(): void;
12802
- };
12803
-
12804
12596
  /**
12805
12597
  * Strategy to assign views to process affinity by domain.
12806
12598
  *
@@ -13766,19 +13558,19 @@ declare type SessionContextGroup = {
13766
13558
  * A SessionContextGroup instance method for setting a context in the SessionContextGroup.
13767
13559
  * @param context The Context to be set.
13768
13560
  */
13769
- setContext: (context: Context_3) => Promise<void>;
13561
+ setContext: (context: Context) => Promise<void>;
13770
13562
  /**
13771
13563
  * A SessionContextGroup instance method for getting the current context of a certain type.
13772
13564
  * @param type The Context Type to get. If not specified the last contextType set would get used.
13773
13565
  */
13774
- getCurrentContext: (type?: string) => Promise<Context_3>;
13566
+ getCurrentContext: (type?: string) => Promise<Context>;
13775
13567
  /**
13776
13568
  * A SessionContextGroup instance method for adding a handler for context change.
13777
13569
  * @param handler The callback to be invoked. Is invoked when (a) the context changes or (b) immediately after getting created if the context is already set.
13778
13570
  * @param contextType The context type this handler should listen to. If not specified, a global handler for all context types will get created. Only one global handler is allowed per SessionContextGroup.
13779
13571
  *
13780
13572
  */
13781
- addContextHandler: (handler: ContextHandler_3, contextType?: string) => Promise<{
13573
+ addContextHandler: (handler: ContextHandler, contextType?: string) => Promise<{
13782
13574
  unsubscribe: () => void;
13783
13575
  }>;
13784
13576
  };
@@ -15671,12 +15463,6 @@ declare class System extends EmitterBase<OpenFin.SystemEvent> {
15671
15463
  setDomainSettings(domainSettings: OpenFin.DefaultDomainSettings): Promise<void>;
15672
15464
  }
15673
15465
 
15674
- declare type SystemChannel = Omit<Channel_3, 'addContextListener' | 'broadcast' | 'getCurrentContext'> & {
15675
- addContextListener(): Error;
15676
- broadcast(): Error;
15677
- getCurrentContext(): Error;
15678
- };
15679
-
15680
15466
  /**
15681
15467
  * @deprecated Renamed to {@link Event}.
15682
15468
  */
@@ -15955,8 +15741,6 @@ declare class TabStack extends LayoutNode {
15955
15741
  setActiveView: (view: OpenFin.Identity) => Promise<void>;
15956
15742
  }
15957
15743
 
15958
- declare type TargetApp = string | AppMetadata;
15959
-
15960
15744
  /**
15961
15745
  * Generated when a View changes its window target.
15962
15746
  * @remarks This event will fire during creation of a View.
@@ -16154,13 +15938,13 @@ declare type tween = 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out' | 'ease-i
16154
15938
  declare interface TypedEventEmitter<Event extends {
16155
15939
  type: string;
16156
15940
  }, EmitterEventType = Event['type']> {
16157
- on<EventType extends EmitterEventType>(event: EventType, listener: Listener_3<Extract<Event, {
15941
+ on<EventType extends EmitterEventType>(event: EventType, listener: Listener<Extract<Event, {
16158
15942
  type: EventType;
16159
15943
  }>>): this;
16160
- addListener<EventType extends EmitterEventType>(event: EventType, listener: Listener_3<Extract<Event, {
15944
+ addListener<EventType extends EmitterEventType>(event: EventType, listener: Listener<Extract<Event, {
16161
15945
  type: EventType;
16162
15946
  }>>): this;
16163
- removeListener<EventType extends EmitterEventType>(event: EventType, listener: Listener_3<Extract<Event, {
15947
+ removeListener<EventType extends EmitterEventType>(event: EventType, listener: Listener<Extract<Event, {
16164
15948
  type: EventType;
16165
15949
  }>>): this;
16166
15950
  removeAllListeners<EventType extends EmitterEventType>(event?: EmitterEventType): this;
@@ -16231,45 +16015,102 @@ declare type UserMovementEnabledEvent = BaseEvent_5 & {
16231
16015
  type: 'user-movement-enabled';
16232
16016
  };
16233
16017
 
16234
- declare namespace v1 {
16235
- export {
16236
- Listener,
16237
- AppMetadata,
16238
- IntentMetadata,
16018
+ declare namespace v1_2 {
16019
+ {
16239
16020
  AppIntent,
16021
+ AppMetadata,
16240
16022
  DisplayMetadata,
16023
+ OpenError,
16024
+ ResolveError,
16025
+ ChannelError,
16241
16026
  ImplementationMetadata,
16242
- ContextHandler,
16243
- TargetApp,
16027
+ IntentMetadata,
16028
+ Listener,
16029
+ ContextTypes,
16030
+ ContextType,
16244
16031
  Context,
16032
+ ContactList,
16033
+ Contact,
16034
+ ContactID,
16035
+ InstrumentList,
16036
+ Instrument,
16037
+ InstrumentID,
16038
+ Country,
16039
+ CountryID,
16040
+ Organization,
16041
+ OrganizationID,
16042
+ Portfolio,
16043
+ Position,
16044
+ Convert,
16045
+ Intents,
16046
+ Channel,
16047
+ DesktopAgent,
16245
16048
  IntentResolution,
16246
- Channel_3 as Channel,
16247
- SystemChannel,
16248
- DesktopAgent
16049
+ TargetApp,
16050
+ ContextHandler
16249
16051
  }
16250
16052
  }
16251
16053
 
16252
- declare namespace v2 {
16253
- export {
16254
- IntentMetadata_2 as IntentMetadata,
16054
+ declare namespace v2_0 {
16055
+ {
16255
16056
  AppIdentifier,
16256
- Listener_2 as Listener,
16257
16057
  AppIntent_2 as AppIntent,
16258
- ImplementationMetadata_2 as ImplementationMetadata,
16058
+ AppMetadata_2 as AppMetadata,
16259
16059
  ContextMetadata,
16060
+ DisplayMetadata_2 as DisplayMetadata,
16061
+ OpenError_2 as OpenError,
16062
+ ResolveError_2 as ResolveError,
16063
+ ResultError,
16064
+ ChannelError_2 as ChannelError,
16260
16065
  Icon,
16261
16066
  Image_2 as Image,
16262
- AppMetadata_2 as AppMetadata,
16263
- DisplayMetadata_2 as DisplayMetadata,
16264
- ContextHandler_2 as ContextHandler,
16265
- IntentHandler,
16266
- IntentResult,
16067
+ ImplementationMetadata_2 as ImplementationMetadata,
16068
+ IntentMetadata_2 as IntentMetadata,
16069
+ Listener_2 as Listener,
16070
+ ContextTypes_2 as ContextTypes,
16071
+ ContextType_2 as ContextType,
16072
+ Chart,
16073
+ InstrumentElement,
16074
+ PurpleID,
16075
+ PurpleMarket,
16076
+ TimeRangeObject,
16077
+ Style,
16078
+ ChatInitSettings,
16079
+ ContactListObject,
16080
+ ContactElement,
16081
+ FluffyID,
16082
+ Contact_2 as Contact,
16083
+ TentacledID,
16084
+ ContactList_2 as ContactList,
16267
16085
  Context_2 as Context,
16268
- Intent,
16086
+ Country_2 as Country,
16087
+ CountryID_2 as CountryID,
16088
+ Currency,
16089
+ CurrencyID,
16090
+ Email,
16091
+ RecipientsObject,
16092
+ RecipientsID,
16093
+ Instrument_2 as Instrument,
16094
+ StickyID,
16095
+ FluffyMarket,
16096
+ InstrumentList_2 as InstrumentList,
16097
+ Nothing,
16098
+ Organization_2 as Organization,
16099
+ OrganizationID_2 as OrganizationID,
16100
+ Portfolio_2 as Portfolio,
16101
+ PositionElement,
16102
+ Position_2 as Position,
16103
+ TimeRange,
16104
+ Valuation,
16105
+ Convert_2 as Convert,
16106
+ Intents_2 as Intents,
16107
+ Channel_2 as Channel,
16108
+ DesktopAgent_2 as DesktopAgent,
16269
16109
  IntentResolution_2 as IntentResolution,
16270
- Channel_4 as Channel,
16271
16110
  PrivateChannel,
16272
- DesktopAgent_2 as DesktopAgent
16111
+ ContextHandler_2 as ContextHandler,
16112
+ IntentResult,
16113
+ IntentHandler
16273
16114
  }
16274
16115
  }
16275
16116
 
@@ -16278,6 +16119,13 @@ declare type VerboseWebPermission = {
16278
16119
  enabled: boolean;
16279
16120
  };
16280
16121
 
16122
+ declare type Version = (typeof versions)[keyof typeof versions];
16123
+
16124
+ declare const versions: {
16125
+ readonly v1_2: "1.2";
16126
+ readonly v2_0: "2.0";
16127
+ };
16128
+
16281
16129
  declare type View = OpenFin.View;
16282
16130
 
16283
16131
  /**
@@ -18016,10 +17864,12 @@ declare namespace WebContentsEvents {
18016
17864
  FileDownloadStartedEvent,
18017
17865
  FileDownloadProgressEvent,
18018
17866
  FileDownloadCompletedEvent,
17867
+ ContentBlockedEvent,
18019
17868
  Event_5 as Event,
18020
17869
  WebContentsEvent,
18021
17870
  WillPropagateWebContentsEvent,
18022
- NonPropagatedWebContentsEvent
17871
+ NonPropagatedWebContentsEvent,
17872
+ WillRedirectEvent
18023
17873
  }
18024
17874
  }
18025
17875
 
@@ -18097,14 +17947,15 @@ declare type WillPropagateWebContentsEvent = Event_5<string>;
18097
17947
  declare type WillPropagateWindowEvent = WindowSourcedEvent;
18098
17948
 
18099
17949
  /**
18100
- * Generated when window is being redirected as per contentRedirect allowlist/denylist rules.
17950
+ * Generated whenever a redirection occurs.
18101
17951
  * @interface
18102
17952
  */
18103
- declare type WillRedirectEvent = BaseEvent_5 & {
17953
+ declare type WillRedirectEvent = NamedEvent & {
18104
17954
  type: 'will-redirect';
18105
17955
  blocked: boolean;
18106
17956
  isInPlace: boolean;
18107
17957
  url: string;
17958
+ isMainFrame: boolean;
18108
17959
  };
18109
17960
 
18110
17961
  /**
@@ -18129,10 +17980,6 @@ declare class _Window extends WebContents<OpenFin.WindowEvent> {
18129
17980
  * @internal
18130
17981
  */
18131
17982
  constructor(wire: Transport, identity: OpenFin.Identity);
18132
- /**
18133
- * create a new window
18134
- * @internal
18135
- */
18136
17983
  createWindow(options: OpenFin.WindowCreationOptions): Promise<OpenFin.Window>;
18137
17984
  /**
18138
17985
  * Retrieves an array of frame info objects representing the main frame and any
@@ -19256,7 +19103,6 @@ declare namespace WindowEvents {
19256
19103
  AlertRequestedEvent,
19257
19104
  AuthRequestedEvent,
19258
19105
  EndLoadEvent,
19259
- WillRedirectEvent,
19260
19106
  ReloadedEvent,
19261
19107
  OptionsChangedEvent,
19262
19108
  WindowOptionsChangedEvent_2 as WindowOptionsChangedEvent,
@@ -19512,7 +19358,7 @@ declare type WindowShowRequestedEvent = ShowRequestedEvent;
19512
19358
  * A union of all events that emit natively on the `Window` topic, i.e. excluding those that propagate
19513
19359
  * from {@link OpenFin.ViewEvents}.
19514
19360
  */
19515
- 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 | WillRedirectEvent | WillResizeEvent | ShowAllDownloadsEvent | DownloadShelfVisibilityChangedEvent;
19361
+ 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;
19516
19362
 
19517
19363
  /**
19518
19364
  * Generated when a child window starts loading.