@openfin/core 45.100.72 → 45.100.73

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.
@@ -3104,6 +3104,53 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3104
3104
  childOptions: OpenFin_2.WindowOptions;
3105
3105
  };
3106
3106
 
3107
+ /**
3108
+ * End of Interop Client Events
3109
+ */
3110
+ /**
3111
+ * Client-side handle for the chrome-browser feature.
3112
+ *
3113
+ * For Chrome extension integration to be active on a window, that window must be
3114
+ * created with `chromeBrowser: true` in its window options. There is no separate
3115
+ * `init()` step.
3116
+ */
3117
+ declare interface ChromeBrowser {
3118
+ /**
3119
+ * Extension action surface — observe and invoke installed Chrome extension actions.
3120
+ */
3121
+ readonly Actions: ChromeBrowserActions;
3122
+ }
3123
+
3124
+ /**
3125
+ * APIs for interacting with Chromium extension actions from an initialized ChromeBrowser window.
3126
+ *
3127
+ * @interface
3128
+ */
3129
+ declare interface ChromeBrowserActions {
3130
+ /**
3131
+ * Returns the current list of extension actions with the minimal render state
3132
+ * required to build a toolbar UI.
3133
+ */
3134
+ getExtensionActions(): Promise<ExtensionActionListItem[]>;
3135
+ /**
3136
+ * Executes the specified extension action.
3137
+ *
3138
+ * @remarks
3139
+ * This may trigger an extension popup to be shown by the Runtime if the extension
3140
+ * has a popup configured for the currently active tab.
3141
+ */
3142
+ invokeExtensionAction(options: ExtensionActionInvokeOptions): Promise<void>;
3143
+ /**
3144
+ * Hides the active extension popup, if any.
3145
+ */
3146
+ hideActiveExtensionPopup(): Promise<void>;
3147
+ /**
3148
+ * Reactive value reflecting the current extension action list.
3149
+ * Compatible with React's `useSyncExternalStore`.
3150
+ */
3151
+ readonly state: Readable<ExtensionActionListItem[]>;
3152
+ }
3153
+
3107
3154
  /**
3108
3155
  * Control behavior for Chromium policies
3109
3156
  *
@@ -5431,6 +5478,33 @@ declare type ExitCode = {
5431
5478
  exitCode: number;
5432
5479
  };
5433
5480
 
5481
+ /**
5482
+ * Options for invoking an extension action.
5483
+ *
5484
+ * @interface
5485
+ */
5486
+ declare type ExtensionActionInvokeOptions = {
5487
+ extensionId: ExtensionId;
5488
+ /** Anchor in window client coordinates (from getBoundingClientRect). */
5489
+ anchor: Anchor;
5490
+ };
5491
+
5492
+ /**
5493
+ * Minimal UI model required to render a list of extension actions.
5494
+ *
5495
+ * @interface
5496
+ */
5497
+ declare type ExtensionActionListItem = {
5498
+ /** Stable ID for the extension that owns this action. */
5499
+ extensionId: ExtensionId;
5500
+ /** Whether to show the action button for the current context (active tab). */
5501
+ isVisible: boolean;
5502
+ /** Accessible label / title for the action button. */
5503
+ title: string;
5504
+ /** Renderer-safe icon (data URL). */
5505
+ iconDataUrl: string;
5506
+ };
5507
+
5434
5508
  declare type ExtensionEvent = SecurityRealmEvent & {
5435
5509
  /**
5436
5510
  * Runtime extension whose status has been (possibly) modified
@@ -5438,6 +5512,13 @@ declare type ExtensionEvent = SecurityRealmEvent & {
5438
5512
  extension: string;
5439
5513
  };
5440
5514
 
5515
+ /**
5516
+ * Unique identifier of a Chromium extension.
5517
+ *
5518
+ * @interface
5519
+ */
5520
+ declare type ExtensionId = string;
5521
+
5441
5522
  /**
5442
5523
  * @interface
5443
5524
  */
@@ -5882,6 +5963,7 @@ declare interface FinApi<MeType extends OpenFin_2.EntityType> {
5882
5963
  readonly Interop: InteropModule;
5883
5964
  readonly SnapshotSource: SnapshotSourceModule;
5884
5965
  readonly NotificationManager: NotificationManagerModule;
5966
+ readonly ChromeBrowser: OpenFin_2.ChromeBrowser;
5885
5967
  /**
5886
5968
  * Provides access to the OpenFin representation of the current code context (usually an entity
5887
5969
  * such as a {@link OpenFin.View} or {@link OpenFin.Window}), as well as to the current `Interop` context.
@@ -10267,6 +10349,7 @@ declare namespace OpenFin_2 {
10267
10349
  SnapshotSource,
10268
10350
  SnapshotSourceModule,
10269
10351
  System,
10352
+ Readable,
10270
10353
  LayoutEntityDefinition,
10271
10354
  LayoutEntityTypes,
10272
10355
  LayoutPosition,
@@ -10299,6 +10382,10 @@ declare namespace OpenFin_2 {
10299
10382
  AnchorLocation,
10300
10383
  Anchor,
10301
10384
  DownloadBubbleOptions,
10385
+ ExtensionId,
10386
+ ExtensionActionListItem,
10387
+ ExtensionActionInvokeOptions,
10388
+ ChromeBrowserActions,
10302
10389
  DisplayMetadata,
10303
10390
  LegacyWinOptionsInAppOptions,
10304
10391
  Snapshot,
@@ -10664,6 +10751,7 @@ declare namespace OpenFin_2 {
10664
10751
  InteropClientEvent,
10665
10752
  ClientChangedContextGroup,
10666
10753
  InteropClientEvents,
10754
+ ChromeBrowser,
10667
10755
  ApplicationEvents,
10668
10756
  BaseEvents,
10669
10757
  ExternalApplicationEvents,
@@ -13838,6 +13926,14 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
13838
13926
  };
13839
13927
  response: void;
13840
13928
  };
13929
+ 'chrome-browser-get-extension-actions': ApiCall<{}, {
13930
+ actions: OpenFin_2.ExtensionActionListItem[];
13931
+ }>;
13932
+ 'chrome-browser-invoke-extension-action': ApiCall<{
13933
+ extensionId: string;
13934
+ anchor: OpenFin_2.Anchor;
13935
+ }, void>;
13936
+ 'chrome-browser-hide-active-extension-popup': ApiCall<{}, void>;
13841
13937
  };
13842
13938
 
13843
13939
  declare type ProtocolOffer = ClassicProtocolOffer | RTCProtocolOffer;
@@ -13934,6 +14030,21 @@ declare type QueryPermissionResult = {
13934
14030
  rawValue?: unknown;
13935
14031
  };
13936
14032
 
14033
+ /**
14034
+ * A readonly implementation of the observable pattern.
14035
+ * Frameworks and vanilla consumers use this to read state and subscribe to changes.
14036
+ */
14037
+ declare interface Readable<T> {
14038
+ /** Synchronously returns the current value. */
14039
+ get(): T;
14040
+ /**
14041
+ * Subscribes to changes.
14042
+ * @param listener A callback that is invoked when the value changes.
14043
+ * @returns An unsubscribe function to clean up the listener.
14044
+ */
14045
+ subscribe(listener: () => void): () => void;
14046
+ }
14047
+
13937
14048
  /**
13938
14049
  * @interface
13939
14050
  */
@@ -3104,6 +3104,53 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3104
3104
  childOptions: OpenFin_2.WindowOptions;
3105
3105
  };
3106
3106
 
3107
+ /**
3108
+ * End of Interop Client Events
3109
+ */
3110
+ /**
3111
+ * Client-side handle for the chrome-browser feature.
3112
+ *
3113
+ * For Chrome extension integration to be active on a window, that window must be
3114
+ * created with `chromeBrowser: true` in its window options. There is no separate
3115
+ * `init()` step.
3116
+ */
3117
+ declare interface ChromeBrowser {
3118
+ /**
3119
+ * Extension action surface — observe and invoke installed Chrome extension actions.
3120
+ */
3121
+ readonly Actions: ChromeBrowserActions;
3122
+ }
3123
+
3124
+ /**
3125
+ * APIs for interacting with Chromium extension actions from an initialized ChromeBrowser window.
3126
+ *
3127
+ * @interface
3128
+ */
3129
+ declare interface ChromeBrowserActions {
3130
+ /**
3131
+ * Returns the current list of extension actions with the minimal render state
3132
+ * required to build a toolbar UI.
3133
+ */
3134
+ getExtensionActions(): Promise<ExtensionActionListItem[]>;
3135
+ /**
3136
+ * Executes the specified extension action.
3137
+ *
3138
+ * @remarks
3139
+ * This may trigger an extension popup to be shown by the Runtime if the extension
3140
+ * has a popup configured for the currently active tab.
3141
+ */
3142
+ invokeExtensionAction(options: ExtensionActionInvokeOptions): Promise<void>;
3143
+ /**
3144
+ * Hides the active extension popup, if any.
3145
+ */
3146
+ hideActiveExtensionPopup(): Promise<void>;
3147
+ /**
3148
+ * Reactive value reflecting the current extension action list.
3149
+ * Compatible with React's `useSyncExternalStore`.
3150
+ */
3151
+ readonly state: Readable<ExtensionActionListItem[]>;
3152
+ }
3153
+
3107
3154
  /**
3108
3155
  * Control behavior for Chromium policies
3109
3156
  *
@@ -5431,6 +5478,33 @@ declare type ExitCode = {
5431
5478
  exitCode: number;
5432
5479
  };
5433
5480
 
5481
+ /**
5482
+ * Options for invoking an extension action.
5483
+ *
5484
+ * @interface
5485
+ */
5486
+ declare type ExtensionActionInvokeOptions = {
5487
+ extensionId: ExtensionId;
5488
+ /** Anchor in window client coordinates (from getBoundingClientRect). */
5489
+ anchor: Anchor;
5490
+ };
5491
+
5492
+ /**
5493
+ * Minimal UI model required to render a list of extension actions.
5494
+ *
5495
+ * @interface
5496
+ */
5497
+ declare type ExtensionActionListItem = {
5498
+ /** Stable ID for the extension that owns this action. */
5499
+ extensionId: ExtensionId;
5500
+ /** Whether to show the action button for the current context (active tab). */
5501
+ isVisible: boolean;
5502
+ /** Accessible label / title for the action button. */
5503
+ title: string;
5504
+ /** Renderer-safe icon (data URL). */
5505
+ iconDataUrl: string;
5506
+ };
5507
+
5434
5508
  declare type ExtensionEvent = SecurityRealmEvent & {
5435
5509
  /**
5436
5510
  * Runtime extension whose status has been (possibly) modified
@@ -5438,6 +5512,13 @@ declare type ExtensionEvent = SecurityRealmEvent & {
5438
5512
  extension: string;
5439
5513
  };
5440
5514
 
5515
+ /**
5516
+ * Unique identifier of a Chromium extension.
5517
+ *
5518
+ * @interface
5519
+ */
5520
+ declare type ExtensionId = string;
5521
+
5441
5522
  /**
5442
5523
  * @interface
5443
5524
  */
@@ -5882,6 +5963,7 @@ declare interface FinApi<MeType extends OpenFin_2.EntityType> {
5882
5963
  readonly Interop: InteropModule;
5883
5964
  readonly SnapshotSource: SnapshotSourceModule;
5884
5965
  readonly NotificationManager: NotificationManagerModule;
5966
+ readonly ChromeBrowser: OpenFin_2.ChromeBrowser;
5885
5967
  /**
5886
5968
  * Provides access to the OpenFin representation of the current code context (usually an entity
5887
5969
  * such as a {@link OpenFin.View} or {@link OpenFin.Window}), as well as to the current `Interop` context.
@@ -10267,6 +10349,7 @@ declare namespace OpenFin_2 {
10267
10349
  SnapshotSource,
10268
10350
  SnapshotSourceModule,
10269
10351
  System,
10352
+ Readable,
10270
10353
  LayoutEntityDefinition,
10271
10354
  LayoutEntityTypes,
10272
10355
  LayoutPosition,
@@ -10299,6 +10382,10 @@ declare namespace OpenFin_2 {
10299
10382
  AnchorLocation,
10300
10383
  Anchor,
10301
10384
  DownloadBubbleOptions,
10385
+ ExtensionId,
10386
+ ExtensionActionListItem,
10387
+ ExtensionActionInvokeOptions,
10388
+ ChromeBrowserActions,
10302
10389
  DisplayMetadata,
10303
10390
  LegacyWinOptionsInAppOptions,
10304
10391
  Snapshot,
@@ -10664,6 +10751,7 @@ declare namespace OpenFin_2 {
10664
10751
  InteropClientEvent,
10665
10752
  ClientChangedContextGroup,
10666
10753
  InteropClientEvents,
10754
+ ChromeBrowser,
10667
10755
  ApplicationEvents,
10668
10756
  BaseEvents,
10669
10757
  ExternalApplicationEvents,
@@ -13838,6 +13926,14 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
13838
13926
  };
13839
13927
  response: void;
13840
13928
  };
13929
+ 'chrome-browser-get-extension-actions': ApiCall<{}, {
13930
+ actions: OpenFin_2.ExtensionActionListItem[];
13931
+ }>;
13932
+ 'chrome-browser-invoke-extension-action': ApiCall<{
13933
+ extensionId: string;
13934
+ anchor: OpenFin_2.Anchor;
13935
+ }, void>;
13936
+ 'chrome-browser-hide-active-extension-popup': ApiCall<{}, void>;
13841
13937
  };
13842
13938
 
13843
13939
  declare type ProtocolOffer = ClassicProtocolOffer | RTCProtocolOffer;
@@ -13934,6 +14030,21 @@ declare type QueryPermissionResult = {
13934
14030
  rawValue?: unknown;
13935
14031
  };
13936
14032
 
14033
+ /**
14034
+ * A readonly implementation of the observable pattern.
14035
+ * Frameworks and vanilla consumers use this to read state and subscribe to changes.
14036
+ */
14037
+ declare interface Readable<T> {
14038
+ /** Synchronously returns the current value. */
14039
+ get(): T;
14040
+ /**
14041
+ * Subscribes to changes.
14042
+ * @param listener A callback that is invoked when the value changes.
14043
+ * @returns An unsubscribe function to clean up the listener.
14044
+ */
14045
+ subscribe(listener: () => void): () => void;
14046
+ }
14047
+
13937
14048
  /**
13938
14049
  * @interface
13939
14050
  */
@@ -3104,6 +3104,53 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3104
3104
  childOptions: OpenFin_2.WindowOptions;
3105
3105
  };
3106
3106
 
3107
+ /**
3108
+ * End of Interop Client Events
3109
+ */
3110
+ /**
3111
+ * Client-side handle for the chrome-browser feature.
3112
+ *
3113
+ * For Chrome extension integration to be active on a window, that window must be
3114
+ * created with `chromeBrowser: true` in its window options. There is no separate
3115
+ * `init()` step.
3116
+ */
3117
+ declare interface ChromeBrowser {
3118
+ /**
3119
+ * Extension action surface — observe and invoke installed Chrome extension actions.
3120
+ */
3121
+ readonly Actions: ChromeBrowserActions;
3122
+ }
3123
+
3124
+ /**
3125
+ * APIs for interacting with Chromium extension actions from an initialized ChromeBrowser window.
3126
+ *
3127
+ * @interface
3128
+ */
3129
+ declare interface ChromeBrowserActions {
3130
+ /**
3131
+ * Returns the current list of extension actions with the minimal render state
3132
+ * required to build a toolbar UI.
3133
+ */
3134
+ getExtensionActions(): Promise<ExtensionActionListItem[]>;
3135
+ /**
3136
+ * Executes the specified extension action.
3137
+ *
3138
+ * @remarks
3139
+ * This may trigger an extension popup to be shown by the Runtime if the extension
3140
+ * has a popup configured for the currently active tab.
3141
+ */
3142
+ invokeExtensionAction(options: ExtensionActionInvokeOptions): Promise<void>;
3143
+ /**
3144
+ * Hides the active extension popup, if any.
3145
+ */
3146
+ hideActiveExtensionPopup(): Promise<void>;
3147
+ /**
3148
+ * Reactive value reflecting the current extension action list.
3149
+ * Compatible with React's `useSyncExternalStore`.
3150
+ */
3151
+ readonly state: Readable<ExtensionActionListItem[]>;
3152
+ }
3153
+
3107
3154
  /**
3108
3155
  * Control behavior for Chromium policies
3109
3156
  *
@@ -5431,6 +5478,33 @@ declare type ExitCode = {
5431
5478
  exitCode: number;
5432
5479
  };
5433
5480
 
5481
+ /**
5482
+ * Options for invoking an extension action.
5483
+ *
5484
+ * @interface
5485
+ */
5486
+ declare type ExtensionActionInvokeOptions = {
5487
+ extensionId: ExtensionId;
5488
+ /** Anchor in window client coordinates (from getBoundingClientRect). */
5489
+ anchor: Anchor;
5490
+ };
5491
+
5492
+ /**
5493
+ * Minimal UI model required to render a list of extension actions.
5494
+ *
5495
+ * @interface
5496
+ */
5497
+ declare type ExtensionActionListItem = {
5498
+ /** Stable ID for the extension that owns this action. */
5499
+ extensionId: ExtensionId;
5500
+ /** Whether to show the action button for the current context (active tab). */
5501
+ isVisible: boolean;
5502
+ /** Accessible label / title for the action button. */
5503
+ title: string;
5504
+ /** Renderer-safe icon (data URL). */
5505
+ iconDataUrl: string;
5506
+ };
5507
+
5434
5508
  declare type ExtensionEvent = SecurityRealmEvent & {
5435
5509
  /**
5436
5510
  * Runtime extension whose status has been (possibly) modified
@@ -5438,6 +5512,13 @@ declare type ExtensionEvent = SecurityRealmEvent & {
5438
5512
  extension: string;
5439
5513
  };
5440
5514
 
5515
+ /**
5516
+ * Unique identifier of a Chromium extension.
5517
+ *
5518
+ * @interface
5519
+ */
5520
+ declare type ExtensionId = string;
5521
+
5441
5522
  /**
5442
5523
  * @interface
5443
5524
  */
@@ -5882,6 +5963,7 @@ declare interface FinApi<MeType extends OpenFin_2.EntityType> {
5882
5963
  readonly Interop: InteropModule;
5883
5964
  readonly SnapshotSource: SnapshotSourceModule;
5884
5965
  readonly NotificationManager: NotificationManagerModule;
5966
+ readonly ChromeBrowser: OpenFin_2.ChromeBrowser;
5885
5967
  /**
5886
5968
  * Provides access to the OpenFin representation of the current code context (usually an entity
5887
5969
  * such as a {@link OpenFin.View} or {@link OpenFin.Window}), as well as to the current `Interop` context.
@@ -10267,6 +10349,7 @@ declare namespace OpenFin_2 {
10267
10349
  SnapshotSource,
10268
10350
  SnapshotSourceModule,
10269
10351
  System,
10352
+ Readable,
10270
10353
  LayoutEntityDefinition,
10271
10354
  LayoutEntityTypes,
10272
10355
  LayoutPosition,
@@ -10299,6 +10382,10 @@ declare namespace OpenFin_2 {
10299
10382
  AnchorLocation,
10300
10383
  Anchor,
10301
10384
  DownloadBubbleOptions,
10385
+ ExtensionId,
10386
+ ExtensionActionListItem,
10387
+ ExtensionActionInvokeOptions,
10388
+ ChromeBrowserActions,
10302
10389
  DisplayMetadata,
10303
10390
  LegacyWinOptionsInAppOptions,
10304
10391
  Snapshot,
@@ -10664,6 +10751,7 @@ declare namespace OpenFin_2 {
10664
10751
  InteropClientEvent,
10665
10752
  ClientChangedContextGroup,
10666
10753
  InteropClientEvents,
10754
+ ChromeBrowser,
10667
10755
  ApplicationEvents,
10668
10756
  BaseEvents,
10669
10757
  ExternalApplicationEvents,
@@ -13838,6 +13926,14 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
13838
13926
  };
13839
13927
  response: void;
13840
13928
  };
13929
+ 'chrome-browser-get-extension-actions': ApiCall<{}, {
13930
+ actions: OpenFin_2.ExtensionActionListItem[];
13931
+ }>;
13932
+ 'chrome-browser-invoke-extension-action': ApiCall<{
13933
+ extensionId: string;
13934
+ anchor: OpenFin_2.Anchor;
13935
+ }, void>;
13936
+ 'chrome-browser-hide-active-extension-popup': ApiCall<{}, void>;
13841
13937
  };
13842
13938
 
13843
13939
  declare type ProtocolOffer = ClassicProtocolOffer | RTCProtocolOffer;
@@ -13934,6 +14030,21 @@ declare type QueryPermissionResult = {
13934
14030
  rawValue?: unknown;
13935
14031
  };
13936
14032
 
14033
+ /**
14034
+ * A readonly implementation of the observable pattern.
14035
+ * Frameworks and vanilla consumers use this to read state and subscribe to changes.
14036
+ */
14037
+ declare interface Readable<T> {
14038
+ /** Synchronously returns the current value. */
14039
+ get(): T;
14040
+ /**
14041
+ * Subscribes to changes.
14042
+ * @param listener A callback that is invoked when the value changes.
14043
+ * @returns An unsubscribe function to clean up the listener.
14044
+ */
14045
+ subscribe(listener: () => void): () => void;
14046
+ }
14047
+
13937
14048
  /**
13938
14049
  * @interface
13939
14050
  */
package/out/stub.d.ts CHANGED
@@ -3160,6 +3160,53 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3160
3160
  childOptions: OpenFin_2.WindowOptions;
3161
3161
  };
3162
3162
 
3163
+ /**
3164
+ * End of Interop Client Events
3165
+ */
3166
+ /**
3167
+ * Client-side handle for the chrome-browser feature.
3168
+ *
3169
+ * For Chrome extension integration to be active on a window, that window must be
3170
+ * created with `chromeBrowser: true` in its window options. There is no separate
3171
+ * `init()` step.
3172
+ */
3173
+ declare interface ChromeBrowser {
3174
+ /**
3175
+ * Extension action surface — observe and invoke installed Chrome extension actions.
3176
+ */
3177
+ readonly Actions: ChromeBrowserActions;
3178
+ }
3179
+
3180
+ /**
3181
+ * APIs for interacting with Chromium extension actions from an initialized ChromeBrowser window.
3182
+ *
3183
+ * @interface
3184
+ */
3185
+ declare interface ChromeBrowserActions {
3186
+ /**
3187
+ * Returns the current list of extension actions with the minimal render state
3188
+ * required to build a toolbar UI.
3189
+ */
3190
+ getExtensionActions(): Promise<ExtensionActionListItem[]>;
3191
+ /**
3192
+ * Executes the specified extension action.
3193
+ *
3194
+ * @remarks
3195
+ * This may trigger an extension popup to be shown by the Runtime if the extension
3196
+ * has a popup configured for the currently active tab.
3197
+ */
3198
+ invokeExtensionAction(options: ExtensionActionInvokeOptions): Promise<void>;
3199
+ /**
3200
+ * Hides the active extension popup, if any.
3201
+ */
3202
+ hideActiveExtensionPopup(): Promise<void>;
3203
+ /**
3204
+ * Reactive value reflecting the current extension action list.
3205
+ * Compatible with React's `useSyncExternalStore`.
3206
+ */
3207
+ readonly state: Readable<ExtensionActionListItem[]>;
3208
+ }
3209
+
3163
3210
  /**
3164
3211
  * Control behavior for Chromium policies
3165
3212
  *
@@ -5513,6 +5560,33 @@ declare type ExitCode = {
5513
5560
  exitCode: number;
5514
5561
  };
5515
5562
 
5563
+ /**
5564
+ * Options for invoking an extension action.
5565
+ *
5566
+ * @interface
5567
+ */
5568
+ declare type ExtensionActionInvokeOptions = {
5569
+ extensionId: ExtensionId;
5570
+ /** Anchor in window client coordinates (from getBoundingClientRect). */
5571
+ anchor: Anchor;
5572
+ };
5573
+
5574
+ /**
5575
+ * Minimal UI model required to render a list of extension actions.
5576
+ *
5577
+ * @interface
5578
+ */
5579
+ declare type ExtensionActionListItem = {
5580
+ /** Stable ID for the extension that owns this action. */
5581
+ extensionId: ExtensionId;
5582
+ /** Whether to show the action button for the current context (active tab). */
5583
+ isVisible: boolean;
5584
+ /** Accessible label / title for the action button. */
5585
+ title: string;
5586
+ /** Renderer-safe icon (data URL). */
5587
+ iconDataUrl: string;
5588
+ };
5589
+
5516
5590
  declare type ExtensionEvent = SecurityRealmEvent & {
5517
5591
  /**
5518
5592
  * Runtime extension whose status has been (possibly) modified
@@ -5520,6 +5594,13 @@ declare type ExtensionEvent = SecurityRealmEvent & {
5520
5594
  extension: string;
5521
5595
  };
5522
5596
 
5597
+ /**
5598
+ * Unique identifier of a Chromium extension.
5599
+ *
5600
+ * @interface
5601
+ */
5602
+ declare type ExtensionId = string;
5603
+
5523
5604
  /**
5524
5605
  * @interface
5525
5606
  */
@@ -5967,6 +6048,7 @@ declare interface FinApi<MeType extends OpenFin_2.EntityType> {
5967
6048
  readonly Interop: InteropModule;
5968
6049
  readonly SnapshotSource: SnapshotSourceModule;
5969
6050
  readonly NotificationManager: NotificationManagerModule;
6051
+ readonly ChromeBrowser: OpenFin_2.ChromeBrowser;
5970
6052
  /**
5971
6053
  * Provides access to the OpenFin representation of the current code context (usually an entity
5972
6054
  * such as a {@link OpenFin.View} or {@link OpenFin.Window}), as well as to the current `Interop` context.
@@ -10601,6 +10683,7 @@ declare namespace OpenFin_2 {
10601
10683
  SnapshotSource,
10602
10684
  SnapshotSourceModule,
10603
10685
  System,
10686
+ Readable,
10604
10687
  LayoutEntityDefinition,
10605
10688
  LayoutEntityTypes,
10606
10689
  LayoutPosition,
@@ -10633,6 +10716,10 @@ declare namespace OpenFin_2 {
10633
10716
  AnchorLocation,
10634
10717
  Anchor,
10635
10718
  DownloadBubbleOptions,
10719
+ ExtensionId,
10720
+ ExtensionActionListItem,
10721
+ ExtensionActionInvokeOptions,
10722
+ ChromeBrowserActions,
10636
10723
  DisplayMetadata,
10637
10724
  LegacyWinOptionsInAppOptions,
10638
10725
  Snapshot,
@@ -10998,6 +11085,7 @@ declare namespace OpenFin_2 {
10998
11085
  InteropClientEvent,
10999
11086
  ClientChangedContextGroup,
11000
11087
  InteropClientEvents,
11088
+ ChromeBrowser,
11001
11089
  ApplicationEvents,
11002
11090
  BaseEvents,
11003
11091
  ExternalApplicationEvents,
@@ -14255,6 +14343,14 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
14255
14343
  };
14256
14344
  response: void;
14257
14345
  };
14346
+ 'chrome-browser-get-extension-actions': ApiCall<{}, {
14347
+ actions: OpenFin_2.ExtensionActionListItem[];
14348
+ }>;
14349
+ 'chrome-browser-invoke-extension-action': ApiCall<{
14350
+ extensionId: string;
14351
+ anchor: OpenFin_2.Anchor;
14352
+ }, void>;
14353
+ 'chrome-browser-hide-active-extension-popup': ApiCall<{}, void>;
14258
14354
  };
14259
14355
 
14260
14356
  declare type ProtocolOffer = ClassicProtocolOffer | RTCProtocolOffer;
@@ -14351,6 +14447,21 @@ declare type QueryPermissionResult = {
14351
14447
  rawValue?: unknown;
14352
14448
  };
14353
14449
 
14450
+ /**
14451
+ * A readonly implementation of the observable pattern.
14452
+ * Frameworks and vanilla consumers use this to read state and subscribe to changes.
14453
+ */
14454
+ declare interface Readable<T> {
14455
+ /** Synchronously returns the current value. */
14456
+ get(): T;
14457
+ /**
14458
+ * Subscribes to changes.
14459
+ * @param listener A callback that is invoked when the value changes.
14460
+ * @returns An unsubscribe function to clean up the listener.
14461
+ */
14462
+ subscribe(listener: () => void): () => void;
14463
+ }
14464
+
14354
14465
  /**
14355
14466
  * @interface
14356
14467
  */