@openfin/remote-adapter 37.80.39 → 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.
@@ -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;
@@ -3577,7 +3479,7 @@ declare type ConstViewOptions = {
3577
3479
  /**
3578
3480
  * Configurations for API injection.
3579
3481
  */
3580
- api: Api;
3482
+ api: ApiSettings;
3581
3483
  /**
3582
3484
  * The name of the view.
3583
3485
  */
@@ -3997,7 +3899,23 @@ declare interface Container extends EventEmitter_2 {
3997
3899
  close(): boolean;
3998
3900
  }
3999
3901
 
4000
- declare type ContentCreationBehaviorNames = 'window' | 'view' | 'block' | 'browser';
3902
+ /**
3903
+ * Generated when content navigation or redirection is blocked by {@link OpenFin.DomainSettings}.
3904
+ */
3905
+ declare type ContentBlockedEvent = NamedEvent & {
3906
+ type: 'content-blocked';
3907
+ /**
3908
+ * The domain whose content was blocked.
3909
+ */
3910
+ url: string;
3911
+ };
3912
+
3913
+ declare type ContentCreationBehavior = 'window' | 'view' | 'block' | 'browser';
3914
+
3915
+ /**
3916
+ * @deprecated Renamed to {@link ContentCreationBehavior}.
3917
+ */
3918
+ declare type ContentCreationBehaviorNames = ContentCreationBehavior;
4001
3919
 
4002
3920
  /**
4003
3921
  * Configures how new content (e,g, from `window.open` or a link) is opened.
@@ -4021,7 +3939,7 @@ declare type ContentCreationOptions = {
4021
3939
  * @typeParam Behavior The way content governed by this rule will be created. If provided, this type will narrow to
4022
3940
  * the specified `behavior` key.
4023
3941
  */
4024
- declare type ContentCreationRule<Behavior extends ContentCreationBehaviorNames = ContentCreationBehaviorNames> = Extract<WindowContentCreationRule | ViewContentCreationRule | BrowserContentCreationRule | BlockedContentCreationRule, {
3942
+ declare type ContentCreationRule<Behavior extends ContentCreationBehavior = ContentCreationBehavior> = Extract<WindowContentCreationRule | ViewContentCreationRule | BrowserContentCreationRule | BlockedContentCreationRule, {
4025
3943
  behavior: Behavior;
4026
3944
  }>;
4027
3945
 
@@ -4271,39 +4189,39 @@ declare interface ContentItem extends EventEmitter_2 {
4271
4189
  * In the lack of an allowlist, navigation to URLs that match a denied pattern would be prohibited.
4272
4190
  * See [here](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) for more details.
4273
4191
  *
4192
+ * @remarks Superseded by {@link DomainSettingsRule.content}. If {@link DomainSettings.default} includes a
4193
+ * `content` setting, this setting will be **ignored**.
4194
+ *
4274
4195
  * @interface
4275
4196
  */
4276
4197
  declare type ContentNavigation = NavigationRules;
4277
4198
 
4199
+ /**
4200
+ * Whether a content url is allowed or blocked for navigation or redirection.
4201
+ *
4202
+ * * 'allow': The content url is allowed.
4203
+ * * 'block': The content url is blocked.
4204
+ */
4205
+ declare type ContentPermission = 'allow' | 'block';
4206
+
4278
4207
  /**
4279
4208
  * Restrict redirects to URLs that match an allowed pattern.
4280
4209
  * In the lack of an allowlist, redirects to URLs that match a denied pattern would be prohibited.
4281
4210
  * See [here](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) for more details.
4282
4211
  *
4212
+ * @remarks Superseded by {@link DomainSettingsRule.content}. If {@link DomainSettings.default} includes a
4213
+ * `content` setting, this setting will be **ignored**.
4214
+ *
4283
4215
  * @interface
4284
4216
  */
4285
4217
  declare type ContentRedirect = NavigationRules;
4286
4218
 
4287
- declare interface Context {
4288
- id?: { [key: string]: string };
4289
- name?: string;
4290
- type: string;
4291
- }
4292
-
4293
- declare interface Context_2 {
4294
- id?: { [key: string]: string };
4295
- name?: string;
4296
- type: string;
4297
- contextMetadata?: ContextMetadata;
4298
- metadata?: any;
4299
- }
4300
-
4301
4219
  /**
4302
4220
  * Data passed between entities and applications.
4303
4221
  *
4304
4222
  * @interface
4305
4223
  */
4306
- declare type Context_3 = {
4224
+ declare type Context = {
4307
4225
  /**
4308
4226
  * An object containing string key-value pairs for the bulk of the data for the context. Differs between context types.
4309
4227
  */
@@ -4332,7 +4250,7 @@ declare type ContextChangedEvent = BaseEvent_5 & {
4332
4250
  /**
4333
4251
  * @interface
4334
4252
  */
4335
- declare type ContextForIntent<MetadataType = any> = Context_3 & {
4253
+ declare type ContextForIntent<MetadataType = any> = Context & {
4336
4254
  metadata?: MetadataType;
4337
4255
  };
4338
4256
 
@@ -4348,23 +4266,19 @@ declare type ContextGroupInfo = {
4348
4266
  /**
4349
4267
  * Metadata for the Context Group. Contains the group's human-readable name, color, and an image, as defined by the Interop Broker.
4350
4268
  */
4351
- displayMetadata?: DisplayMetadata_3;
4269
+ displayMetadata?: DisplayMetadata;
4352
4270
  };
4353
4271
 
4354
4272
  declare type ContextGroupStates = {
4355
4273
  [key: string]: {
4356
- [key: string]: Context_3;
4274
+ [key: string]: Context;
4357
4275
  };
4358
4276
  };
4359
4277
 
4360
- declare type ContextHandler = (context: Context) => void;
4361
-
4362
- declare type ContextHandler_2 = (context: Context_2, metadata?: ContextMetadata) => void;
4363
-
4364
4278
  /**
4365
4279
  * Subscription function for addContextHandler.
4366
4280
  */
4367
- declare type ContextHandler_3 = (context: Context_3) => void;
4281
+ declare type ContextHandler = (context: Context) => void;
4368
4282
 
4369
4283
  /**
4370
4284
  * Configure the context menu when right-clicking on a window.
@@ -4403,20 +4317,6 @@ declare type ContextMenuSettings = {
4403
4317
  reload?: boolean;
4404
4318
  };
4405
4319
 
4406
- /**
4407
- * Metadata relating to a context or intent and context received through the
4408
- * `addContextListener` and `addIntentListener` functions.
4409
- *
4410
- * @experimental Introduced in FDC3 2.0 and may be refined by further changes outside the normal FDC3 versioning policy.
4411
- */
4412
- declare interface ContextMetadata {
4413
- /** Identifier for the app instance that sent the context and/or intent.
4414
- *
4415
- * @experimental
4416
- */
4417
- readonly source: AppIdentifier;
4418
- }
4419
-
4420
4320
  /**
4421
4321
  * @interface
4422
4322
  */
@@ -4663,45 +4563,6 @@ declare type DefaultDomainSettings = DomainSettings;
4663
4563
  */
4664
4564
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4665
4565
 
4666
- declare interface DesktopAgent {
4667
- open(app: TargetApp, context?: Context): Promise<void>;
4668
- findIntent(intent: string, context?: Context): Promise<AppIntent>;
4669
- findIntentsByContext(context: Context): Promise<Array<AppIntent>>;
4670
- broadcast(context: Context): void;
4671
- raiseIntent(intent: string, context: Context, app?: TargetApp): Promise<IntentResolution>;
4672
- raiseIntentForContext(context: Context, app?: TargetApp): Promise<IntentResolution>;
4673
- addIntentListener(intent: string, handler: ContextHandler): Listener;
4674
- joinChannel(channelId: string): Promise<void>;
4675
- leaveCurrentChannel(): Promise<void>;
4676
- getInfo(): ImplementationMetadata;
4677
- addContextListener(contextType: string | null, handler: ContextHandler): Listener & Promise<Listener>;
4678
- getOrCreateChannel(channelId: string): Promise<Channel_3>;
4679
- getSystemChannels(): Promise<SystemChannel[]>;
4680
- getCurrentChannel(): Promise<Channel_3 | null>;
4681
- }
4682
-
4683
- declare interface DesktopAgent_2 {
4684
- open(app: AppIdentifier | TargetApp, context?: Context_2): Promise<AppIdentifier>;
4685
- findIntent(intent: string, context?: Context_2, resultType?: string): Promise<AppIntent_2>;
4686
- findIntentsByContext(context: Context_2, resultType?: string): Promise<Array<AppIntent_2>>;
4687
- findInstances(app: AppIdentifier): Promise<Array<AppIdentifier>>;
4688
- broadcast(context: Context_2): Promise<void>;
4689
- raiseIntent(intent: string, context: Context_2, app?: AppIdentifier | TargetApp): Promise<IntentResolution_2>;
4690
- raiseIntentForContext(context: Context_2, app?: AppIdentifier | TargetApp): Promise<IntentResolution_2>;
4691
- addIntentListener(intent: string, handler: IntentHandler): Promise<Listener_2>;
4692
- addContextListener(contextType: string | null, handler: ContextHandler_2): Promise<Listener_2>;
4693
- getUserChannels(): Promise<Array<SystemChannel>>;
4694
- joinUserChannel(channelId: string): Promise<void>;
4695
- getOrCreateChannel(channelId: string): Promise<Channel_4>;
4696
- createPrivateChannel(): Promise<PrivateChannel>;
4697
- getCurrentChannel(): Promise<Channel_3 | null>;
4698
- leaveCurrentChannel(): Promise<void>;
4699
- getInfo(): Promise<ImplementationMetadata_2>;
4700
- getAppMetadata(app: AppIdentifier): Promise<AppMetadata_2>;
4701
- getSystemChannels(): Promise<Array<SystemChannel>>;
4702
- joinChannel(channelId: string): Promise<void>;
4703
- }
4704
-
4705
4566
  /**
4706
4567
  * Generated when the desktop icon is clicked while it's already running.
4707
4568
  * @interface
@@ -4846,52 +4707,12 @@ declare type DisconnectedEvent_3 = BaseFrameEvent & {
4846
4707
  type: 'disconnected';
4847
4708
  };
4848
4709
 
4849
- /**
4850
- * A system channel will be global enough to have a presence across many apps. This gives us some hints
4851
- * to render them in a standard way. It is assumed it may have other properties too, but if it has these,
4852
- * this is their meaning.
4853
- */
4854
- declare interface DisplayMetadata {
4855
- /**
4856
- * A user-readable name for this channel, e.g: `"Red"`
4857
- */
4858
- readonly name?: string;
4859
- /**
4860
- * The color that should be associated within this channel when displaying this channel in a UI, e.g: `0xFF0000`.
4861
- */
4862
- readonly color?: string;
4863
- /**
4864
- * A URL of an image that can be used to display this channel
4865
- */
4866
- readonly glyph?: string;
4867
- }
4868
-
4869
- /**
4870
- * A system channel will be global enough to have a presence across many apps. This gives us some hints
4871
- * to render them in a standard way. It is assumed it may have other properties too, but if it has these,
4872
- * this is their meaning.
4873
- */
4874
- declare interface DisplayMetadata_2 {
4875
- /**
4876
- * A user-readable name for this channel, e.g: `"Red"`
4877
- */
4878
- readonly name?: string;
4879
- /**
4880
- * The color that should be associated within this channel when displaying this channel in a UI, e.g: `0xFF0000`.
4881
- */
4882
- readonly color?: string;
4883
- /**
4884
- * A URL of an image that can be used to display this channel
4885
- */
4886
- readonly glyph?: string;
4887
- }
4888
-
4889
4710
  /**
4890
4711
  * The display data for a context group.
4891
4712
  *
4892
4713
  * @interface
4893
4714
  */
4894
- declare type DisplayMetadata_3 = {
4715
+ declare type DisplayMetadata = {
4895
4716
  /**
4896
4717
  * A user-readable name for this context group, e.g: `"Red"`
4897
4718
  */
@@ -4906,6 +4727,25 @@ declare type DisplayMetadata_3 = {
4906
4727
  readonly glyph?: string;
4907
4728
  };
4908
4729
 
4730
+ /**
4731
+ * @interface
4732
+ *
4733
+ * Rules for domain-conditional `fin` API injection.
4734
+ *
4735
+ * @remarks Subset of {@link DomainSettings}.
4736
+ */
4737
+ declare type DomainApiSettings = {
4738
+ /**
4739
+ * Injection setting for the `fin` API for contexts on a matched domain.
4740
+ *
4741
+ * * 'none': The `fin` API will be not available.
4742
+ * * 'global': The entire `fin` API will be available.
4743
+ *
4744
+ * @defaultValue 'global'
4745
+ */
4746
+ fin: InjectionType;
4747
+ };
4748
+
4909
4749
  /**
4910
4750
  * @interface
4911
4751
  * Defines application settings that vary by the domain of the current context.
@@ -4918,6 +4758,10 @@ declare type DomainSettings = {
4918
4758
  * {@inheritDoc DomainSettingsRule}
4919
4759
  */
4920
4760
  rules: DomainSettingsRule[];
4761
+ /**
4762
+ * Default values for settings in {@link DomainSettingsRule}.
4763
+ */
4764
+ default?: PerDomainSettings;
4921
4765
  };
4922
4766
 
4923
4767
  /**
@@ -4930,22 +4774,11 @@ declare type DomainSettingsRule = {
4930
4774
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4931
4775
  * the domain(s) for which the rule applies.
4932
4776
  */
4933
- match: string[];
4777
+ match?: string[];
4934
4778
  /**
4935
4779
  * Settings applied when a webcontents has been navigated to a matched domain.
4936
4780
  */
4937
- options: {
4938
- /**
4939
- * {@inheritDoc FileDownloadSettings}
4940
- *
4941
- * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
4942
- */
4943
- downloadSettings?: FileDownloadSettings;
4944
- /**
4945
- * {@inheritDoc ApiInjection}
4946
- */
4947
- api?: ApiInjection;
4948
- };
4781
+ options: PerDomainSettings;
4949
4782
  };
4950
4783
 
4951
4784
  /**
@@ -4983,18 +4816,19 @@ declare type DownloadPreloadOption = {
4983
4816
  /**
4984
4817
  * @interface
4985
4818
  *
4986
- * A rule governing domain-conditional download behavior.
4819
+ * A rule that governs download behavior, discriminated by the URL of the download.
4987
4820
  */
4988
4821
  declare type DownloadRule = {
4989
4822
  /**
4990
- * {@inheritDoc FileDownloadBehaviorNames}
4823
+ * {@inheritDoc FileDownloadBehavior}
4991
4824
  */
4992
- behavior: FileDownloadBehaviorNames;
4825
+ behavior: FileDownloadBehavior;
4993
4826
  /**
4994
4827
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4995
- * the domain(s) for which the rule applies.
4828
+ * URL(s) of the resource(s) being downloaded.
4996
4829
  *
4997
- * @remarks The match is evaluated against the URL of the *download*.
4830
+ * @remarks The match is evaluated against the URL of the *file*, which is not necessarily the same as that
4831
+ * of the page in which a file download link is embedded.
4998
4832
  */
4999
4833
  match: string[];
5000
4834
  };
@@ -5274,7 +5108,7 @@ declare interface Environment {
5274
5108
  getWsConstructor(): typeof WebSocket;
5275
5109
  whenReady(): Promise<void>;
5276
5110
  getInteropInfo(fin: OpenFin.Fin<OpenFin.EntityType>): Promise<InternalInteropBrokerOptions & {
5277
- fdc3Version?: Fdc3Version;
5111
+ fdc3Version?: Version;
5278
5112
  }>;
5279
5113
  readonly type: EnvironmentType;
5280
5114
  }
@@ -5342,7 +5176,7 @@ declare type Event_4 = (WebContentsEvents.Event<'view'> & {
5342
5176
  */
5343
5177
  declare type Event_5<Topic extends string> = {
5344
5178
  topic: Topic;
5345
- } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent);
5179
+ } & (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);
5346
5180
 
5347
5181
  /**
5348
5182
  * [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
@@ -5700,13 +5534,12 @@ declare type FaviconUpdatedEvent = PageFaviconUpdatedEvent;
5700
5534
 
5701
5535
  declare namespace FDC3 {
5702
5536
  export {
5703
- v1,
5704
- v2
5537
+ Version,
5538
+ v1_2,
5539
+ v2_0
5705
5540
  }
5706
5541
  }
5707
5542
 
5708
- declare type Fdc3Version = '1.2' | '2.0';
5709
-
5710
5543
  /**
5711
5544
  * @interface
5712
5545
  */
@@ -5720,7 +5553,12 @@ declare type FetchManifestPayload = {
5720
5553
  /**
5721
5554
  * Whether file downloads raise a user prompt.
5722
5555
  */
5723
- declare type FileDownloadBehaviorNames = 'prompt' | 'no-prompt';
5556
+ declare type FileDownloadBehavior = 'prompt' | 'no-prompt';
5557
+
5558
+ /**
5559
+ * @deprecated Renamed to {@link FileDownloadBehavior}.
5560
+ */
5561
+ declare type FileDownloadBehaviorNames = FileDownloadBehavior;
5724
5562
 
5725
5563
  /**
5726
5564
  * Generated when a file download has completed.
@@ -5905,8 +5743,8 @@ declare type FindInPageResult = {
5905
5743
  /**
5906
5744
  * @interface
5907
5745
  */
5908
- declare type FindIntentsByContextOptions<MetadataType = IntentMetadata_3> = {
5909
- context: Context_3;
5746
+ declare type FindIntentsByContextOptions<MetadataType = IntentMetadata> = {
5747
+ context: Context;
5910
5748
  metadata?: MetadataType;
5911
5749
  };
5912
5750
 
@@ -6351,6 +6189,20 @@ declare class GoldenLayout_2 implements EventEmitter_2 {
6351
6189
 
6352
6190
  dropTargetIndicator: any;
6353
6191
 
6192
+ _isFullPage: boolean;
6193
+
6194
+ _onUnload: any;
6195
+
6196
+ tabDropPlaceholder: any;
6197
+
6198
+ transitionIndicator: any;
6199
+
6200
+ _dragSources: any;
6201
+
6202
+ _resizeFunction: any;
6203
+
6204
+ _unloadFunction: any;
6205
+
6354
6206
  /**
6355
6207
  * @param config A GoldenLayout configuration object
6356
6208
  * @param container The DOM element the layout will be initialised in. Default: document.body
@@ -6679,15 +6531,6 @@ declare type HotkeyEvent_2 = InputEvent_2 & BaseEvent_5 & {
6679
6531
  type: 'hotkey';
6680
6532
  };
6681
6533
 
6682
- declare interface Icon {
6683
- /** The icon url */
6684
- readonly src: string;
6685
- /** The icon dimension, formatted as `<height>x<width>`. */
6686
- readonly size?: string;
6687
- /** Icon media type. If not present the Desktop Agent may use the src file extension. */
6688
- readonly type?: string;
6689
- }
6690
-
6691
6534
  declare type Identity = OpenFin.Identity;
6692
6535
 
6693
6536
  declare type Identity_2 = OpenFin.Identity;
@@ -6749,17 +6592,6 @@ declare type IdleStateChangedEvent = BaseEvent_9 & {
6749
6592
  isIdle: boolean;
6750
6593
  };
6751
6594
 
6752
- declare interface Image_2 {
6753
- /** The image url. */
6754
- readonly src: string;
6755
- /** The image dimension, formatted as `<height>x<width>`. */
6756
- readonly size?: string;
6757
- /** Image media type. If not present the Desktop Agent may use the src file extension. */
6758
- readonly type?: string;
6759
- /** Caption for the image. */
6760
- readonly label?: string;
6761
- }
6762
-
6763
6595
  declare type ImageFormatOptions = {
6764
6596
  format: 'dataURL' | 'png' | 'bmp';
6765
6597
  } | {
@@ -6770,57 +6602,15 @@ declare type ImageFormatOptions = {
6770
6602
  quality?: number;
6771
6603
  };
6772
6604
 
6773
- /**
6774
- * Metadata relating to the FDC3 Desktop Agent implementation and its provider.
6775
- */
6776
- declare interface ImplementationMetadata {
6777
- /** The version number of the FDC3 specification that the implementation provides.
6778
- * The string must be a numeric semver version, e.g. 1.2 or 1.2.1.
6779
- */
6780
- readonly fdc3Version: string;
6781
- /** The name of the provider of the FDC3 Desktop Agent Implementation (e.g. Finsemble, Glue42, OpenFin etc.). */
6782
- readonly provider: string;
6783
- /** The version of the provider of the FDC3 Desktop Agent Implementation (e.g. 5.3.0). */
6784
- readonly providerVersion?: string;
6785
- }
6786
-
6787
- /**
6788
- * Metadata relating to the FDC3 Desktop Agent implementation and its provider.
6789
- */
6790
- declare interface ImplementationMetadata_2 {
6791
- /** The version number of the FDC3 specification that the implementation provides.
6792
- * The string must be a numeric semver version, e.g. 1.2 or 1.2.1.
6793
- */
6794
- readonly fdc3Version: string;
6795
- /** The name of the provider of the Desktop Agent implementation (e.g. Finsemble, Glue42, OpenFin etc.). */
6796
- readonly provider: string;
6797
- /** The version of the provider of the Desktop Agent implementation (e.g. 5.3.0). */
6798
- readonly providerVersion?: string;
6799
- /** Metadata indicating whether the Desktop Agent implements optional features of
6800
- * the Desktop Agent API.
6801
- */
6802
- readonly optionalFeatures: {
6803
- /** Used to indicate whether the exposure of 'originating app metadata' for
6804
- * context and intent messages is supported by the Desktop Agent. */
6805
- readonly OriginatingAppMetadata: boolean;
6806
- /** Used to indicate whether the optional `fdc3.joinUserChannel`,
6807
- * `fdc3.getCurrentChannel` and `fdc3.leaveCurrentChannel` are implemented by
6808
- * the Desktop Agent. */
6809
- readonly UserChannelMembershipAPIs: boolean;
6810
- };
6811
- /** The calling application instance's own metadata, according to the Desktop Agent (MUST include at least the `appId` and `instanceId`). */
6812
- readonly appMetadata: AppMetadata_2;
6813
- }
6814
-
6815
6605
  /**
6816
6606
  * @interface
6817
6607
  */
6818
- declare type InfoForIntentOptions<MetadataType = IntentMetadata_3> = {
6608
+ declare type InfoForIntentOptions<MetadataType = IntentMetadata> = {
6819
6609
  /**
6820
6610
  * Name of the intent to get info for.
6821
6611
  */
6822
6612
  name: string;
6823
- context?: Context_3;
6613
+ context?: Context;
6824
6614
  metadata?: MetadataType;
6825
6615
  };
6826
6616
 
@@ -6949,16 +6739,10 @@ declare type InstalledApps_2 = {
6949
6739
  [key: string]: InstallationInfo;
6950
6740
  };
6951
6741
 
6952
- declare interface Intent {
6953
- name: string;
6954
- context: Context_2;
6955
- metadata: IntentMetadata_2;
6956
- }
6957
-
6958
6742
  /**
6959
6743
  * Combination of an action and a context that is passed to an application for resolution.
6960
6744
  */
6961
- declare type Intent_2<MetadataType = IntentMetadata_3> = {
6745
+ declare type Intent<MetadataType = IntentMetadata> = {
6962
6746
  /**
6963
6747
  * Name of the intent.
6964
6748
  */
@@ -6966,54 +6750,25 @@ declare type Intent_2<MetadataType = IntentMetadata_3> = {
6966
6750
  /**
6967
6751
  * Data associated with the intent.
6968
6752
  */
6969
- context: Context_3;
6753
+ context: Context;
6970
6754
  metadata?: MetadataType;
6971
6755
  };
6972
6756
 
6973
- declare type IntentHandler = (context: Context_2, metadata?: ContextMetadata) => Promise<IntentResult> | void;
6974
-
6975
6757
  /**
6976
6758
  * Subscription function for registerIntentHandler.
6977
6759
  */
6978
- declare type IntentHandler_2 = (intent: Intent_2) => void;
6760
+ declare type IntentHandler = (intent: Intent) => void;
6979
6761
 
6980
6762
  /**
6981
- * Intent descriptor
6763
+ * The type used to describe an intent within the platform.
6764
+ * @interface
6982
6765
  */
6983
- declare interface IntentMetadata {
6984
- /** The unique name of the intent that can be invoked by the raiseIntent call */
6985
- readonly name: string;
6986
- /** A friendly display name for the intent that should be used to render UI elements */
6987
- readonly displayName: string;
6988
- }
6989
-
6990
- declare type IntentMetadata_2<TargetType = any> = {
6766
+ declare type IntentMetadata<TargetType = any> = {
6991
6767
  target?: TargetType;
6992
6768
  resultType?: string;
6993
6769
  intentResolutionResultId?: string;
6994
6770
  };
6995
6771
 
6996
- /**
6997
- * The type used to describe an intent within the platform.
6998
- * @interface
6999
- */
7000
- declare type IntentMetadata_3<TargetType = any> = FDC3.v2.IntentMetadata<TargetType>;
7001
-
7002
- declare interface IntentResolution {
7003
- source: TargetApp;
7004
- data?: object;
7005
- version: string;
7006
- }
7007
-
7008
- declare interface IntentResolution_2 {
7009
- source: AppIdentifier;
7010
- intent: string;
7011
- version?: string;
7012
- getResult(): Promise<IntentResult>;
7013
- }
7014
-
7015
- declare type IntentResult = Context_2 | Channel_4 | PrivateChannel;
7016
-
7017
6772
  /**
7018
6773
  * A messaging bus that allows for pub/sub messaging between different applications.
7019
6774
  *
@@ -7271,7 +7026,6 @@ declare type InteropActionLoggingOption = {
7271
7026
  */
7272
7027
  declare class InteropBroker extends Base {
7273
7028
  #private;
7274
- private getProvider;
7275
7029
  private interopClients;
7276
7030
  private contextGroupsById;
7277
7031
  private intentClientMap;
@@ -7282,7 +7036,8 @@ declare class InteropBroker extends Base {
7282
7036
  /**
7283
7037
  * @internal
7284
7038
  */
7285
- constructor(wire: Transport, getProvider: () => Promise<OpenFin.ChannelProvider>, options: InternalInteropBrokerOptions);
7039
+ constructor(wire: Transport, createProvider: () => Promise<OpenFin.ChannelProvider>, options: InternalInteropBrokerOptions);
7040
+ private getProvider;
7286
7041
  static createClosedConstructor(...args: ConstructorParameters<typeof InteropBroker>): {
7287
7042
  new (): InteropBroker;
7288
7043
  };
@@ -7587,23 +7342,23 @@ declare class InteropBroker extends Base {
7587
7342
  * @param clientIdentity Identity of the Client making the request.
7588
7343
  */
7589
7344
  fdc3HandleOpen({ app, context }: {
7590
- app: FDC3.v1.TargetApp | FDC3.v2.AppIdentifier;
7345
+ app: FDC3.v1_2.TargetApp | FDC3.v2_0.AppIdentifier;
7591
7346
  context: OpenFin.Context;
7592
- }, clientIdentity: OpenFin.ClientIdentity): Promise<void | FDC3.v2.AppIdentifier>;
7347
+ }, clientIdentity: OpenFin.ClientIdentity): Promise<void | FDC3.v2_0.AppIdentifier>;
7593
7348
  /**
7594
7349
  * Responsible for resolving the fdc3.findInstances call.
7595
7350
  * Must be overridden
7596
7351
  * @param app AppIdentifier that was passed to fdc3.findInstances
7597
7352
  * @param clientIdentity Identity of the Client making the request.
7598
7353
  */
7599
- fdc3HandleFindInstances(app: FDC3.v2.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7354
+ fdc3HandleFindInstances(app: FDC3.v2_0.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7600
7355
  /**
7601
7356
  * Responsible for resolving the fdc3.getAppMetadata call.
7602
7357
  * Must be overridden
7603
7358
  * @param app AppIdentifier that was passed to fdc3.getAppMetadata
7604
7359
  * @param clientIdentity Identity of the Client making the request.
7605
7360
  */
7606
- fdc3HandleGetAppMetadata(app: FDC3.v2.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7361
+ fdc3HandleGetAppMetadata(app: FDC3.v2_0.AppIdentifier, clientIdentity: OpenFin.ClientIdentity): Promise<unknown>;
7607
7362
  /**
7608
7363
  * This function is called by the Interop Broker whenever a Context handler would fire.
7609
7364
  * For FDC3 2.0 you would need to override this function and add the contextMetadata as
@@ -7848,7 +7603,7 @@ declare class InteropClient extends Base {
7848
7603
  /**
7849
7604
  * @internal
7850
7605
  */
7851
- constructor(wire: Transport, name: string, interopConfig?: OpenFin.InteropConfig);
7606
+ constructor(wire: Transport, clientPromise: Promise<OpenFin.ChannelClient>);
7852
7607
  /**
7853
7608
  * Sets a context for the context group of the current entity.
7854
7609
  *
@@ -8200,6 +7955,23 @@ declare class InteropClient extends Base {
8200
7955
  * ```
8201
7956
  */
8202
7957
  onDisconnection(listener: OpenFin.InteropClientOnDisconnectionListener): Promise<void>;
7958
+ /**
7959
+ * Returns a representation of this Interop Client as an FDC3 DesktopAgent matching the given version.
7960
+ * Note that this does not set a global FDC3 object, it only returns an instance of the FDC3 DesktopAgent.
7961
+ * This also does not raise the FDC3Ready event.
7962
+ */
7963
+ getFDC3Sync(version: '2.0'): OpenFin.FDC3.v2_0.DesktopAgent;
7964
+ getFDC3Sync(version: '1.2'): OpenFin.FDC3.v1_2.DesktopAgent;
7965
+ getFDC3Sync(version: OpenFin.FDC3.Version): OpenFin.FDC3.v1_2.DesktopAgent | OpenFin.FDC3.v2_0.DesktopAgent;
7966
+ /**
7967
+ *
7968
+ * Returns a representation of this Interop Client as an FDC3 DesktopAgent matching the given version.
7969
+ * Note that this does not set a global FDC3 object, it only returns an instance of the FDC3 DesktopAgent.
7970
+ * This also does not raise the FDC3Ready event.
7971
+ */
7972
+ getFDC3(version: '2.0'): Promise<OpenFin.FDC3.v2_0.DesktopAgent>;
7973
+ getFDC3(version: '1.2'): Promise<OpenFin.FDC3.v1_2.DesktopAgent>;
7974
+ getFDC3(version: OpenFin.FDC3.Version): Promise<OpenFin.FDC3.v1_2.DesktopAgent | OpenFin.FDC3.v2_0.DesktopAgent>;
8203
7975
  /**
8204
7976
  * @internal
8205
7977
  *
@@ -9425,21 +9197,7 @@ declare type LayoutSnapshot = {
9425
9197
  */
9426
9198
  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'>;
9427
9199
 
9428
- declare interface Listener {
9429
- /**
9430
- * Unsubscribe the listener object.
9431
- */
9432
- unsubscribe(): void;
9433
- }
9434
-
9435
- declare interface Listener_2 {
9436
- /**
9437
- * Unsubscribe the listener object.
9438
- */
9439
- unsubscribe(): void;
9440
- }
9441
-
9442
- declare type Listener_3<T extends {
9200
+ declare type Listener<T extends {
9443
9201
  type: string;
9444
9202
  }> = (payload: T) => void;
9445
9203
 
@@ -9828,7 +9586,7 @@ declare type MutableViewOptions = {
9828
9586
  /**
9829
9587
  * Configurations for API injection.
9830
9588
  */
9831
- api: Api;
9589
+ api: ApiSettings;
9832
9590
  /**
9833
9591
  * Restrict navigation to URLs that match an allowed pattern.
9834
9592
  * In the lack of an allowlist, navigation to URLs that match a denylisted pattern would be prohibited.
@@ -10228,6 +9986,7 @@ declare namespace OpenFin {
10228
9986
  export {
10229
9987
  FinApi,
10230
9988
  Fin,
9989
+ FDC3,
10231
9990
  Application,
10232
9991
  ApplicationModule,
10233
9992
  ExternalApplication,
@@ -10279,11 +10038,11 @@ declare namespace OpenFin {
10279
10038
  CustomProtocolOptions,
10280
10039
  InteropBrokerOptions,
10281
10040
  ContextGroupInfo,
10282
- DisplayMetadata_3 as DisplayMetadata,
10041
+ DisplayMetadata,
10283
10042
  LegacyWinOptionsInAppOptions,
10284
10043
  Snapshot,
10285
10044
  ContextGroupStates,
10286
- Context_3 as Context,
10045
+ Context,
10287
10046
  MonitorInfo,
10288
10047
  Point,
10289
10048
  PointTopLeft,
@@ -10310,6 +10069,7 @@ declare namespace OpenFin {
10310
10069
  ResizeRegion,
10311
10070
  Accelerator,
10312
10071
  Api,
10072
+ ApiSettings,
10313
10073
  InjectionType,
10314
10074
  NavigationRules,
10315
10075
  ContentNavigation,
@@ -10461,14 +10221,19 @@ declare namespace OpenFin {
10461
10221
  DefaultDomainSettingsRule,
10462
10222
  DomainSettings,
10463
10223
  ApiInjection,
10224
+ DomainApiSettings,
10225
+ ContentPermission,
10226
+ PerDomainSettings,
10464
10227
  DomainSettingsRule,
10228
+ FileDownloadBehavior,
10465
10229
  FileDownloadBehaviorNames,
10466
10230
  FileDownloadSettings,
10467
10231
  DownloadRule,
10468
- ContextHandler_3 as ContextHandler,
10469
- Intent_2 as Intent,
10470
- IntentMetadata_3 as IntentMetadata,
10471
- IntentHandler_2 as IntentHandler,
10232
+ ContextHandler,
10233
+ Intent,
10234
+ IntentMetadata,
10235
+ IntentHandler,
10236
+ ContentCreationBehavior,
10472
10237
  ContentCreationBehaviorNames,
10473
10238
  MatchPattern,
10474
10239
  BaseContentCreationRule,
@@ -10688,6 +10453,31 @@ declare type Payload_9<Type extends EventType_8> = Extract<Event_11, {
10688
10453
  type: Type;
10689
10454
  }>;
10690
10455
 
10456
+ /**
10457
+ * @interface
10458
+ *
10459
+ * Conditional settings for a domain or set of domains.
10460
+ */
10461
+ declare type PerDomainSettings = {
10462
+ /**
10463
+ * {@inheritDoc FileDownloadSettings}
10464
+ *
10465
+ * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
10466
+ */
10467
+ downloadSettings?: FileDownloadSettings;
10468
+ /**
10469
+ * {@inheritDoc ApiInjection}
10470
+ */
10471
+ api?: DomainApiSettings;
10472
+ /**
10473
+ * Whether DOM content can be loaded (by navigation or redirect).
10474
+ *
10475
+ * @remarks If this is included in {@link DomainSettings.default}, then {@link ContentNavigation} and
10476
+ * {@link ContentRedirect} will be **ignored**.
10477
+ */
10478
+ content?: ContentPermission;
10479
+ };
10480
+
10691
10481
  /**
10692
10482
  * Generated when window finishes loading. Provides performance and navigation data.
10693
10483
  * @interface
@@ -10726,7 +10516,7 @@ declare class Platform extends EmitterBase<OpenFin.PlatformEvent> {
10726
10516
  /**
10727
10517
  * @internal
10728
10518
  */
10729
- constructor(identity: OpenFin.ApplicationIdentity, channel: Channel_5);
10519
+ constructor(identity: OpenFin.ApplicationIdentity, channel: Channel_3);
10730
10520
  getClient: (identity?: OpenFin.ApplicationIdentity) => Promise<ChannelClient_2>;
10731
10521
  /**
10732
10522
  * Creates a new view and attaches it to a specified target window.
@@ -12502,14 +12292,6 @@ declare type PrintOptions = {
12502
12292
  dpi?: Dpi;
12503
12293
  };
12504
12294
 
12505
- declare type PrivateChannel = Omit<Channel_4, 'addContextListener'> & {
12506
- addContextListener(contextType: string | null, handler: ContextHandler_2): Promise<Listener_2>;
12507
- onAddContextListener(handler: (contextType?: string) => void): Listener_2;
12508
- onUnsubscribe(handler: (contextType?: string) => void): Listener_2;
12509
- onDisconnect(handler: () => void): Listener_2;
12510
- disconnect(): void;
12511
- };
12512
-
12513
12295
  /**
12514
12296
  * Strategy to assign views to process affinity by domain.
12515
12297
  *
@@ -13475,19 +13257,19 @@ declare type SessionContextGroup = {
13475
13257
  * A SessionContextGroup instance method for setting a context in the SessionContextGroup.
13476
13258
  * @param context The Context to be set.
13477
13259
  */
13478
- setContext: (context: Context_3) => Promise<void>;
13260
+ setContext: (context: Context) => Promise<void>;
13479
13261
  /**
13480
13262
  * A SessionContextGroup instance method for getting the current context of a certain type.
13481
13263
  * @param type The Context Type to get. If not specified the last contextType set would get used.
13482
13264
  */
13483
- getCurrentContext: (type?: string) => Promise<Context_3>;
13265
+ getCurrentContext: (type?: string) => Promise<Context>;
13484
13266
  /**
13485
13267
  * A SessionContextGroup instance method for adding a handler for context change.
13486
13268
  * @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.
13487
13269
  * @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.
13488
13270
  *
13489
13271
  */
13490
- addContextHandler: (handler: ContextHandler_3, contextType?: string) => Promise<{
13272
+ addContextHandler: (handler: ContextHandler, contextType?: string) => Promise<{
13491
13273
  unsubscribe: () => void;
13492
13274
  }>;
13493
13275
  };
@@ -15380,12 +15162,6 @@ declare class System extends EmitterBase<OpenFin.SystemEvent> {
15380
15162
  setDomainSettings(domainSettings: OpenFin.DefaultDomainSettings): Promise<void>;
15381
15163
  }
15382
15164
 
15383
- declare type SystemChannel = Omit<Channel_3, 'addContextListener' | 'broadcast' | 'getCurrentContext'> & {
15384
- addContextListener(): Error;
15385
- broadcast(): Error;
15386
- getCurrentContext(): Error;
15387
- };
15388
-
15389
15165
  /**
15390
15166
  * @deprecated Renamed to {@link Event}.
15391
15167
  */
@@ -15664,8 +15440,6 @@ declare class TabStack extends LayoutNode {
15664
15440
  setActiveView: (view: OpenFin.Identity) => Promise<void>;
15665
15441
  }
15666
15442
 
15667
- declare type TargetApp = string | AppMetadata;
15668
-
15669
15443
  /**
15670
15444
  * Generated when a View changes its window target.
15671
15445
  * @remarks This event will fire during creation of a View.
@@ -15863,13 +15637,13 @@ declare type tween = 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out' | 'ease-i
15863
15637
  declare interface TypedEventEmitter<Event extends {
15864
15638
  type: string;
15865
15639
  }, EmitterEventType = Event['type']> {
15866
- on<EventType extends EmitterEventType>(event: EventType, listener: Listener_3<Extract<Event, {
15640
+ on<EventType extends EmitterEventType>(event: EventType, listener: Listener<Extract<Event, {
15867
15641
  type: EventType;
15868
15642
  }>>): this;
15869
- addListener<EventType extends EmitterEventType>(event: EventType, listener: Listener_3<Extract<Event, {
15643
+ addListener<EventType extends EmitterEventType>(event: EventType, listener: Listener<Extract<Event, {
15870
15644
  type: EventType;
15871
15645
  }>>): this;
15872
- removeListener<EventType extends EmitterEventType>(event: EventType, listener: Listener_3<Extract<Event, {
15646
+ removeListener<EventType extends EmitterEventType>(event: EventType, listener: Listener<Extract<Event, {
15873
15647
  type: EventType;
15874
15648
  }>>): this;
15875
15649
  removeAllListeners<EventType extends EmitterEventType>(event?: EmitterEventType): this;
@@ -15940,45 +15714,102 @@ declare type UserMovementEnabledEvent = BaseEvent_5 & {
15940
15714
  type: 'user-movement-enabled';
15941
15715
  };
15942
15716
 
15943
- declare namespace v1 {
15944
- export {
15945
- Listener,
15946
- AppMetadata,
15947
- IntentMetadata,
15717
+ declare namespace v1_2 {
15718
+ {
15948
15719
  AppIntent,
15720
+ AppMetadata,
15949
15721
  DisplayMetadata,
15722
+ OpenError,
15723
+ ResolveError,
15724
+ ChannelError,
15950
15725
  ImplementationMetadata,
15951
- ContextHandler,
15952
- TargetApp,
15726
+ IntentMetadata,
15727
+ Listener,
15728
+ ContextTypes,
15729
+ ContextType,
15953
15730
  Context,
15731
+ ContactList,
15732
+ Contact,
15733
+ ContactID,
15734
+ InstrumentList,
15735
+ Instrument,
15736
+ InstrumentID,
15737
+ Country,
15738
+ CountryID,
15739
+ Organization,
15740
+ OrganizationID,
15741
+ Portfolio,
15742
+ Position,
15743
+ Convert,
15744
+ Intents,
15745
+ Channel,
15746
+ DesktopAgent,
15954
15747
  IntentResolution,
15955
- Channel_3 as Channel,
15956
- SystemChannel,
15957
- DesktopAgent
15748
+ TargetApp,
15749
+ ContextHandler
15958
15750
  }
15959
15751
  }
15960
15752
 
15961
- declare namespace v2 {
15962
- export {
15963
- IntentMetadata_2 as IntentMetadata,
15753
+ declare namespace v2_0 {
15754
+ {
15964
15755
  AppIdentifier,
15965
- Listener_2 as Listener,
15966
15756
  AppIntent_2 as AppIntent,
15967
- ImplementationMetadata_2 as ImplementationMetadata,
15757
+ AppMetadata_2 as AppMetadata,
15968
15758
  ContextMetadata,
15759
+ DisplayMetadata_2 as DisplayMetadata,
15760
+ OpenError_2 as OpenError,
15761
+ ResolveError_2 as ResolveError,
15762
+ ResultError,
15763
+ ChannelError_2 as ChannelError,
15969
15764
  Icon,
15970
15765
  Image_2 as Image,
15971
- AppMetadata_2 as AppMetadata,
15972
- DisplayMetadata_2 as DisplayMetadata,
15973
- ContextHandler_2 as ContextHandler,
15974
- IntentHandler,
15975
- IntentResult,
15766
+ ImplementationMetadata_2 as ImplementationMetadata,
15767
+ IntentMetadata_2 as IntentMetadata,
15768
+ Listener_2 as Listener,
15769
+ ContextTypes_2 as ContextTypes,
15770
+ ContextType_2 as ContextType,
15771
+ Chart,
15772
+ InstrumentElement,
15773
+ PurpleID,
15774
+ PurpleMarket,
15775
+ TimeRangeObject,
15776
+ Style,
15777
+ ChatInitSettings,
15778
+ ContactListObject,
15779
+ ContactElement,
15780
+ FluffyID,
15781
+ Contact_2 as Contact,
15782
+ TentacledID,
15783
+ ContactList_2 as ContactList,
15976
15784
  Context_2 as Context,
15977
- Intent,
15785
+ Country_2 as Country,
15786
+ CountryID_2 as CountryID,
15787
+ Currency,
15788
+ CurrencyID,
15789
+ Email,
15790
+ RecipientsObject,
15791
+ RecipientsID,
15792
+ Instrument_2 as Instrument,
15793
+ StickyID,
15794
+ FluffyMarket,
15795
+ InstrumentList_2 as InstrumentList,
15796
+ Nothing,
15797
+ Organization_2 as Organization,
15798
+ OrganizationID_2 as OrganizationID,
15799
+ Portfolio_2 as Portfolio,
15800
+ PositionElement,
15801
+ Position_2 as Position,
15802
+ TimeRange,
15803
+ Valuation,
15804
+ Convert_2 as Convert,
15805
+ Intents_2 as Intents,
15806
+ Channel_2 as Channel,
15807
+ DesktopAgent_2 as DesktopAgent,
15978
15808
  IntentResolution_2 as IntentResolution,
15979
- Channel_4 as Channel,
15980
15809
  PrivateChannel,
15981
- DesktopAgent_2 as DesktopAgent
15810
+ ContextHandler_2 as ContextHandler,
15811
+ IntentResult,
15812
+ IntentHandler
15982
15813
  }
15983
15814
  }
15984
15815
 
@@ -15987,6 +15818,13 @@ declare type VerboseWebPermission = {
15987
15818
  enabled: boolean;
15988
15819
  };
15989
15820
 
15821
+ declare type Version = (typeof versions)[keyof typeof versions];
15822
+
15823
+ declare const versions: {
15824
+ readonly v1_2: "1.2";
15825
+ readonly v2_0: "2.0";
15826
+ };
15827
+
15990
15828
  declare type View = OpenFin.View;
15991
15829
 
15992
15830
  /**
@@ -17725,10 +17563,12 @@ declare namespace WebContentsEvents {
17725
17563
  FileDownloadStartedEvent,
17726
17564
  FileDownloadProgressEvent,
17727
17565
  FileDownloadCompletedEvent,
17566
+ ContentBlockedEvent,
17728
17567
  Event_5 as Event,
17729
17568
  WebContentsEvent,
17730
17569
  WillPropagateWebContentsEvent,
17731
- NonPropagatedWebContentsEvent
17570
+ NonPropagatedWebContentsEvent,
17571
+ WillRedirectEvent
17732
17572
  }
17733
17573
  }
17734
17574
 
@@ -17806,14 +17646,15 @@ declare type WillPropagateWebContentsEvent = Event_5<string>;
17806
17646
  declare type WillPropagateWindowEvent = WindowSourcedEvent;
17807
17647
 
17808
17648
  /**
17809
- * Generated when window is being redirected as per contentRedirect allowlist/denylist rules.
17649
+ * Generated whenever a redirection occurs.
17810
17650
  * @interface
17811
17651
  */
17812
- declare type WillRedirectEvent = BaseEvent_5 & {
17652
+ declare type WillRedirectEvent = NamedEvent & {
17813
17653
  type: 'will-redirect';
17814
17654
  blocked: boolean;
17815
17655
  isInPlace: boolean;
17816
17656
  url: string;
17657
+ isMainFrame: boolean;
17817
17658
  };
17818
17659
 
17819
17660
  /**
@@ -17838,10 +17679,6 @@ declare class _Window extends WebContents<OpenFin.WindowEvent> {
17838
17679
  * @internal
17839
17680
  */
17840
17681
  constructor(wire: Transport, identity: OpenFin.Identity);
17841
- /**
17842
- * create a new window
17843
- * @internal
17844
- */
17845
17682
  createWindow(options: OpenFin.WindowCreationOptions): Promise<OpenFin.Window>;
17846
17683
  /**
17847
17684
  * Retrieves an array of frame info objects representing the main frame and any
@@ -18965,7 +18802,6 @@ declare namespace WindowEvents {
18965
18802
  AlertRequestedEvent,
18966
18803
  AuthRequestedEvent,
18967
18804
  EndLoadEvent,
18968
- WillRedirectEvent,
18969
18805
  ReloadedEvent,
18970
18806
  OptionsChangedEvent,
18971
18807
  WindowOptionsChangedEvent_2 as WindowOptionsChangedEvent,
@@ -19221,7 +19057,7 @@ declare type WindowShowRequestedEvent = ShowRequestedEvent;
19221
19057
  * A union of all events that emit natively on the `Window` topic, i.e. excluding those that propagate
19222
19058
  * from {@link OpenFin.ViewEvents}.
19223
19059
  */
19224
- 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;
19060
+ 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;
19225
19061
 
19226
19062
  /**
19227
19063
  * Generated when a child window starts loading.