@openfin/core 45.100.114 → 45.100.115

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/stub.d.ts CHANGED
@@ -932,6 +932,21 @@ declare class Application extends EmitterBase<OpenFin_2.ApplicationEvent> {
932
932
  * ```
933
933
  */
934
934
  closeTrayIconPopupMenu(): Promise<void>;
935
+ /**
936
+ * @experimental
937
+ * Retrieves a performance snapshot for all Windows, Views and Frames in the Application.
938
+ *
939
+ * By default, all custom marks and measures are collected, along with navigation/paint entries
940
+ * and resource timing (`resources` defaults to `true`). Pass `include` to restrict custom
941
+ * marks/measures to matching names (string substring or RegExp). Pass `browser: true` to also
942
+ * include hereio internal runtime metrics.
943
+ *
944
+ * See also [MDN | Performance Mark API](https://developer.mozilla.org/en-US/docs/Web/API/Performance/mark)
945
+ *
946
+ * Note - only currently running WebContents will be captured, and performance entries can only be
947
+ * captured for the current navigation of each.
948
+ */
949
+ getPerformanceStats: (options?: OpenFin_2.GetPerformanceStatsOptions) => Promise<OpenFin_2.PerformanceStatsResult>;
935
950
  }
936
951
 
937
952
  /**
@@ -1383,6 +1398,7 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
1383
1398
  declare type ApplicationPermissions = {
1384
1399
  setFileDownloadLocation: boolean;
1385
1400
  getFileDownloadLocation: boolean;
1401
+ getPerformanceStats: boolean;
1386
1402
  };
1387
1403
 
1388
1404
  /**
@@ -3188,23 +3204,6 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3188
3204
  childOptions: OpenFin_2.WindowOptions;
3189
3205
  };
3190
3206
 
3191
- /**
3192
- * End of Interop Client Events
3193
- */
3194
- /**
3195
- * Client-side handle for the chrome-browser feature.
3196
- *
3197
- * For extension integration to be active on a window, that window must be
3198
- * created with `chromeBrowser: true` in its window options.
3199
- *
3200
- * @remarks
3201
- * This namespace is intended for internal experimentation only. Enabling the
3202
- * `chromeBrowser` window option changes how the runtime manages content and standard
3203
- * OpenFin content behavior is not guaranteed.
3204
- *
3205
- * @internal
3206
- * @experimental This API is under active development and may change or be removed without notice.
3207
- */
3208
3207
  declare interface ChromeBrowser {
3209
3208
  /**
3210
3209
  * Extension action surface — observe and invoke installed Chrome extension actions.
@@ -4212,6 +4211,32 @@ declare type ConstWindowOptions = {
4212
4211
  width: number;
4213
4212
  x: number;
4214
4213
  y: number;
4214
+ /**
4215
+ * Experimental window options. These options are not yet stable and may change without notice.
4216
+ *
4217
+ * Supported properties:
4218
+ *
4219
+ * - **`layoutEngine`** `'v1' | 'v2'` — Selects the layout engine used to render
4220
+ * layouts in this window. `'v1'` is the legacy engine, `'v2'` is the modernized engine.
4221
+ * Defaults to `'v1'`.
4222
+ *
4223
+ * - **`showFavicons`** `boolean` — When `true`, displays favicon icons on layout tabs.
4224
+ *
4225
+ * - **`defaultFaviconUrl`** `string` — URL of a fallback favicon to display when a view does not
4226
+ * provide its own.
4227
+ *
4228
+ * - **`windowLogLevel`** `string` — Sets the log level for layout-related window logging
4229
+ * (e.g. `'verbose'`, `'warn'`, `'error'`).
4230
+ *
4231
+ * - **`enableLayoutCollapsing`** `boolean` — When `true`, enables the Golden Layout restacking
4232
+ * feature by preserving minimum item dimensions.
4233
+ *
4234
+ * - **`showViewsOnResize`** `{ enabled: boolean; delayMs?: number }` — Controls whether views
4235
+ * are shown during window resize operations. Deprecated in favor of
4236
+ * `viewVisibility.showViewsOnWindowResize`.
4237
+ *
4238
+ * @internal
4239
+ */
4215
4240
  experimental?: any;
4216
4241
  fdc3InteropApi?: string;
4217
4242
  /**
@@ -4535,6 +4560,8 @@ declare type CopyPermissions = {
4535
4560
  };
4536
4561
  };
4537
4562
 
4563
+ declare type CorePerformanceEntry = Omit<PerformanceEntry, 'toJSON'>;
4564
+
4538
4565
  /**
4539
4566
  * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
4540
4567
  * average of _height_ and _width_.
@@ -4687,6 +4714,32 @@ declare type CreateLayoutOptions = {
4687
4714
  * @experimental
4688
4715
  */
4689
4716
  renderCustomHeaderControls?: (controlsElement: HTMLElement, context: HeaderControlsContext) => (() => void) | void;
4717
+ /**
4718
+ * Callback invoked once per tab after core has finished building the tab DOM.
4719
+ * Use this to inject custom controls (e.g. action icons) into view tab hats.
4720
+ *
4721
+ * Optionally return a cleanup function that will be called when the tab is destroyed.
4722
+ *
4723
+ * Custom controls are not serialized into snapshots since callbacks are not
4724
+ * serializable. The callback is re-invoked when tabs are recreated.
4725
+ *
4726
+ * **NOTE**: This feature is only supported with layout engine `'v2'` (GL2) and
4727
+ * `settings.tabOverflowBehavior: 'scroll'`.
4728
+ *
4729
+ * Optionally add the `lm_tab_custom_control` class to each injected control as a direct child of
4730
+ * `tabElement`. That opts the control into {@link LayoutAccessibilityOptions} keyboard
4731
+ * navigation (roving tabindex, arrow keys in DOM order, Enter/Space without switching tabs),
4732
+ * pointer isolation so clicks do not activate or close the tab (press-and-drag still
4733
+ * reorders/tears out tab, matching the close button), and default 20×20 flex sizing
4734
+ * (override using `--layout-tab-custom-control-size`).
4735
+ *
4736
+ * @param tabElement The `.lm_tab` DOM element for the view tab.
4737
+ * @param context Context object with DOM anchors for the tab.
4738
+ * @returns A callback to be called when the rendered elements need to be cleaned up.
4739
+ *
4740
+ * @experimental
4741
+ */
4742
+ renderCustomTabControls?: (tabElement: HTMLElement, context: CustomTabControlsContext) => (() => void) | void;
4690
4743
  /**
4691
4744
  * Accessibility options for the layout. Controls ARIA attributes and keyboard navigation.
4692
4745
  */
@@ -4776,8 +4829,69 @@ declare type CustomRequestHeaders = {
4776
4829
  headers: WebRequestHeader[];
4777
4830
  };
4778
4831
 
4832
+ /**
4833
+ * @interface @experimental
4834
+ */
4835
+ declare type CustomTabControlsContext = {
4836
+ viewIdentity: Identity_4;
4837
+ /** Anchor for inserting controls adjacent to the tab text. */
4838
+ titleElement: HTMLElement;
4839
+ /** Anchor for the trailing outer edge. Absent when the view is not closable. */
4840
+ closeElement?: HTMLElement;
4841
+ /** The favicon element. Hidden when favicons are disabled. */
4842
+ faviconElement?: HTMLElement;
4843
+ };
4844
+
4779
4845
  declare type DataChannelReadyState = RTCDataChannel['readyState'];
4780
4846
 
4847
+ export declare type DefaultColorChannelId = keyof typeof defaultColorChannels;
4848
+
4849
+ /**
4850
+ * The default FDC3 user channels advertised by the Interop Broker.
4851
+ */
4852
+ export declare const defaultColorChannels: {
4853
+ readonly 'fdc3.channel.1': {
4854
+ readonly name: "Channel 1";
4855
+ readonly color: "red";
4856
+ readonly glyph: "1";
4857
+ };
4858
+ readonly 'fdc3.channel.2': {
4859
+ readonly name: "Channel 2";
4860
+ readonly color: "orange";
4861
+ readonly glyph: "2";
4862
+ };
4863
+ readonly 'fdc3.channel.3': {
4864
+ readonly name: "Channel 3";
4865
+ readonly color: "yellow";
4866
+ readonly glyph: "3";
4867
+ };
4868
+ readonly 'fdc3.channel.4': {
4869
+ readonly name: "Channel 4";
4870
+ readonly color: "green";
4871
+ readonly glyph: "4";
4872
+ };
4873
+ readonly 'fdc3.channel.5': {
4874
+ readonly name: "Channel 5";
4875
+ readonly color: "cyan";
4876
+ readonly glyph: "5";
4877
+ };
4878
+ readonly 'fdc3.channel.6': {
4879
+ readonly name: "Channel 6";
4880
+ readonly color: "blue";
4881
+ readonly glyph: "6";
4882
+ };
4883
+ readonly 'fdc3.channel.7': {
4884
+ readonly name: "Channel 7";
4885
+ readonly color: "magenta";
4886
+ readonly glyph: "7";
4887
+ };
4888
+ readonly 'fdc3.channel.8': {
4889
+ readonly name: "Channel 8";
4890
+ readonly color: "purple";
4891
+ readonly glyph: "8";
4892
+ };
4893
+ };
4894
+
4781
4895
  /**
4782
4896
  * @deprecated Use {@link OpenFin.DomainSettings} instead.
4783
4897
  * @interface
@@ -6510,6 +6624,32 @@ declare type GetLogRequestType = {
6510
6624
  name: string;
6511
6625
  };
6512
6626
 
6627
+ /**
6628
+ * End of Interop Client Events
6629
+ */
6630
+ /**
6631
+ * Performance Entry Types
6632
+ */
6633
+ declare type GetPerformanceStatsOptions = {
6634
+ /**
6635
+ * Optional filter for custom performance marks and measures.
6636
+ * When omitted, all custom marks and measures are collected.
6637
+ * When specified, only entries whose names match one of the filters are collected.
6638
+ * Strings match by substring; RegExp matches by test.
6639
+ */
6640
+ include?: (string | RegExp)[];
6641
+ /**
6642
+ * Include `resource` timing entries from each View / Frame / Window.
6643
+ * Defaults to `true`. Pass `false` to omit them.
6644
+ */
6645
+ resources?: boolean;
6646
+ /**
6647
+ * Whether to include hereio internal runtime metrics.
6648
+ * Defaults to `false`. Pass `true` to include.
6649
+ */
6650
+ browser?: boolean;
6651
+ };
6652
+
6513
6653
  declare type GetterCall<T> = ApiCall<void, T>;
6514
6654
 
6515
6655
  /**
@@ -7203,17 +7343,19 @@ declare type InteropActionLoggingOption = {
7203
7343
  * "interopBrokerConfiguration": {
7204
7344
  * "contextGroups": [
7205
7345
  * {
7206
- * "id": "green",
7346
+ * "id": "fdc3.channel.4",
7207
7347
  * "displayMetadata": {
7208
- * "color": "#00CC88",
7209
- * "name": "green"
7348
+ * "color": "green",
7349
+ * "name": "Channel 4",
7350
+ * "glyph": "4"
7210
7351
  * }
7211
7352
  * },
7212
7353
  * {
7213
- * "id": "purple",
7354
+ * "id": "fdc3.channel.8",
7214
7355
  * "displayMetadata": {
7215
- * "color": "#8C61FF",
7216
- * "name": "purple"
7356
+ * "color": "purple",
7357
+ * "name": "Channel 8",
7358
+ * "glyph": "8"
7217
7359
  * }
7218
7360
  * },
7219
7361
  * ]
@@ -7350,7 +7492,7 @@ declare class InteropBroker extends Base {
7350
7492
  * @param joinContextGroupOptions - Id of the Context Group and identity of the entity to join to the group.
7351
7493
  * @param senderIdentity - Identity of the client sender.
7352
7494
  */
7353
- joinContextGroup({ contextGroupId, target }: {
7495
+ joinContextGroup({ contextGroupId: requestedContextGroupId, target }: {
7354
7496
  contextGroupId: string;
7355
7497
  target?: OpenFin_2.ClientIdentity | OpenFin_2.Identity;
7356
7498
  }, senderIdentity: OpenFin_2.ClientIdentity): Promise<void>;
@@ -7361,7 +7503,7 @@ declare class InteropBroker extends Base {
7361
7503
  * @param addClientToContextGroupOptions - Contains the contextGroupId
7362
7504
  * @param clientIdentity - Identity of the client sender.
7363
7505
  */
7364
- addClientToContextGroup({ contextGroupId }: {
7506
+ addClientToContextGroup({ contextGroupId: requestedContextGroupId }: {
7365
7507
  contextGroupId: string;
7366
7508
  }, clientIdentity: OpenFin_2.ClientIdentity): Promise<void>;
7367
7509
  /**
@@ -7774,6 +7916,8 @@ declare class InteropBroker extends Base {
7774
7916
  };
7775
7917
  private getClientState;
7776
7918
  private static toObject;
7919
+ private normalizeContextGroupStates;
7920
+ private normalizeContextGroupId;
7777
7921
  static checkContextIntegrity: (context: OpenFin_2.Context) => {
7778
7922
  isValid: true;
7779
7923
  } | {
@@ -8004,7 +8148,7 @@ declare class InteropClient extends Base {
8004
8148
  *
8005
8149
  * getLastFocusedView()
8006
8150
  * .then(lastFocusedViewIdentity => {
8007
- * joinViewToContextGroup('red', lastFocusedViewIdentity)
8151
+ * joinViewToContextGroup('fdc3.channel.1', lastFocusedViewIdentity)
8008
8152
  * })
8009
8153
  * ```
8010
8154
  */
@@ -8039,7 +8183,7 @@ declare class InteropClient extends Base {
8039
8183
  *
8040
8184
  * @example
8041
8185
  * ```js
8042
- * fin.me.interop.getAllClientsInContextGroup('red')
8186
+ * fin.me.interop.getAllClientsInContextGroup('fdc3.channel.1')
8043
8187
  * .then(clientsInContextGroup => {
8044
8188
  * console.log(clientsInContextGroup)
8045
8189
  * })
@@ -8054,7 +8198,7 @@ declare class InteropClient extends Base {
8054
8198
  *
8055
8199
  * @example
8056
8200
  * ```js
8057
- * fin.me.interop.getInfoForContextGroup('red')
8201
+ * fin.me.interop.getInfoForContextGroup('fdc3.channel.1')
8058
8202
  * .then(contextGroupInfo => {
8059
8203
  * console.log(contextGroupInfo.displayMetadata.name)
8060
8204
  * console.log(contextGroupInfo.displayMetadata.color)
@@ -8111,12 +8255,12 @@ declare class InteropClient extends Base {
8111
8255
  *
8112
8256
  * @example
8113
8257
  * ```js
8114
- * await fin.me.interop.joinContextGroup('yellow');
8258
+ * await fin.me.interop.joinContextGroup('fdc3.channel.3');
8115
8259
  * await fin.me.interop.setContext({ type: 'instrument', id: { ticker: 'FOO' }});
8116
8260
  * const currentContext = await fin.me.interop.getCurrentContext();
8117
8261
  *
8118
8262
  * // with a specific context
8119
- * await fin.me.interop.joinContextGroup('yellow');
8263
+ * await fin.me.interop.joinContextGroup('fdc3.channel.3');
8120
8264
  * await fin.me.interop.setContext({ type: 'country', id: { ISOALPHA3: 'US' }});
8121
8265
  * await fin.me.interop.setContext({ type: 'instrument', id: { ticker: 'FOO' }});
8122
8266
  * const currentContext = await fin.me.interop.getCurrentContext('country');
@@ -8283,7 +8427,7 @@ declare type InteropClientOnDisconnectionListener = (InteropBrokerDisconnectionE
8283
8427
  */
8284
8428
  declare type InteropConfig = {
8285
8429
  /**
8286
- * Context Group for the client. (green, yellow, red, etc.).
8430
+ * Context Group ID for the client (for example, `fdc3.channel.4`).
8287
8431
  */
8288
8432
  currentContextGroup?: string | null;
8289
8433
  /**
@@ -8332,7 +8476,7 @@ declare class InteropModule extends Base {
8332
8476
  * @example
8333
8477
  * ```js
8334
8478
  * const interopConfig = {
8335
- * currentContextGroup: 'green'
8479
+ * currentContextGroup: 'fdc3.channel.4'
8336
8480
  * }
8337
8481
  *
8338
8482
  * const interopBroker = await fin.Interop.init('openfin');
@@ -9554,8 +9698,26 @@ declare type LayoutOptions = {
9554
9698
  content?: LayoutContent;
9555
9699
  dimensions?: {
9556
9700
  borderWidth?: number;
9701
+ /**
9702
+ * Minimum height a layout item can be resized to, in pixels.
9703
+ * On web layouts this is mapped to Golden Layout 2 `defaultMinItemHeight`.
9704
+ */
9557
9705
  minItemHeight?: number;
9706
+ /**
9707
+ * Minimum width a layout item can be resized to, in pixels.
9708
+ * On web layouts this is mapped to Golden Layout 2 `defaultMinItemWidth`.
9709
+ */
9558
9710
  minItemWidth?: number;
9711
+ /**
9712
+ * Minimum height a layout item can be resized to (CSS size, e.g. `'500px'`).
9713
+ * Web layouts only. Takes precedence over {@link LayoutOptions.dimensions.minItemHeight} when both are set.
9714
+ */
9715
+ defaultMinItemHeight?: string;
9716
+ /**
9717
+ * Minimum width a layout item can be resized to (CSS size, e.g. `'500px'`).
9718
+ * Web layouts only. Takes precedence over {@link LayoutOptions.dimensions.minItemWidth} when both are set.
9719
+ */
9720
+ defaultMinItemWidth?: string;
9559
9721
  headerHeight?: number;
9560
9722
  };
9561
9723
  };
@@ -9628,6 +9790,20 @@ declare type LayoutSyncApi = {
9628
9790
  updateAccessibilityOptions(options: Partial<LayoutAccessibilityOptions>): void;
9629
9791
  };
9630
9792
 
9793
+ declare type LegacyColorChannelId = keyof typeof legacyColorChannelIds;
9794
+
9795
+ declare const legacyColorChannelIds: {
9796
+ readonly red: "fdc3.channel.1";
9797
+ readonly orange: "fdc3.channel.2";
9798
+ readonly yellow: "fdc3.channel.3";
9799
+ readonly green: "fdc3.channel.4";
9800
+ readonly teal: "fdc3.channel.5";
9801
+ readonly blue: "fdc3.channel.6";
9802
+ readonly pink: "fdc3.channel.7";
9803
+ readonly indigo: "fdc3.channel.8";
9804
+ readonly purple: "fdc3.channel.8";
9805
+ };
9806
+
9631
9807
  /**
9632
9808
  * @interface
9633
9809
  */
@@ -10222,6 +10398,24 @@ declare type MutableViewOptions = {
10222
10398
  * Used by Workspace to store custom data. Overwriting or modifying this field may impact the functionality of Workspace
10223
10399
  */
10224
10400
  _internalWorkspaceData: any;
10401
+ /**
10402
+ * @internal
10403
+ * Used by Workspace to store platform-specific options (including `viewTab`). Overwriting or modifying this field may impact the functionality of Workspace.
10404
+ * Persisted on create, {@link View.View#updateOptions updateOptions}, snapshot, and {@link View.View#getOptions getOptions} — the same way windows persist `workspacePlatform`.
10405
+ */
10406
+ workspacePlatform?: WorkspacePlatformOptions;
10407
+ /**
10408
+ * Per-view tab icon. Exception to `showFavicons` / `defaultFaviconUrl`.
10409
+ *
10410
+ * Distinct from Window `icon` (taskbar).
10411
+ *
10412
+ * - Omitted / `''` / `'unset'`: inherit — if `showFavicons`, page favicon then `defaultFaviconUrl`, else hide
10413
+ * - URL string: always show that URL, even when `showFavicons` is false. Load failure uses `defaultFaviconUrl`
10414
+ * - `'hide'`: always hide, even when `showFavicons` is true
10415
+ *
10416
+ * On `updateOptions`, omitted keys are a no-op; set `'unset'` to return to inherit.
10417
+ */
10418
+ icon?: ViewTabIcon;
10225
10419
  /**
10226
10420
  * {@inheritDoc ViewThrottling}
10227
10421
  *
@@ -10718,6 +10912,14 @@ declare type NonTabInjectionRule = {
10718
10912
  matchOptions?: RuleMatchOptions;
10719
10913
  };
10720
10914
 
10915
+ /**
10916
+ * Converts a legacy color-named channel ID to its canonical FDC3 user-channel ID.
10917
+ * The removed legacy gray channel resolves to no channel.
10918
+ */
10919
+ export declare function normalizeColorChannelId<T extends string>(colorChannelId: T): NormalizedColorChannelId<T>;
10920
+
10921
+ declare type NormalizedColorChannelId<T extends string> = string extends T ? string | undefined : T extends 'gray' ? undefined : T extends LegacyColorChannelId ? (typeof legacyColorChannelIds)[T] : T;
10922
+
10721
10923
  /**
10722
10924
  * @internal
10723
10925
  *
@@ -10986,6 +11188,7 @@ declare namespace OpenFin_2 {
10986
11188
  ViewInfo,
10987
11189
  WindowThrottling,
10988
11190
  ViewThrottling,
11191
+ ViewTabIcon,
10989
11192
  UpdatableViewOptions,
10990
11193
  ViewCreationOptions,
10991
11194
  MutableViewOptions,
@@ -11158,6 +11361,7 @@ declare namespace OpenFin_2 {
11158
11361
  ScreenCaptureBehavior,
11159
11362
  DomainSettingsPreloadScripts,
11160
11363
  PerDomainSettings,
11364
+ UrlRestoreSettings,
11161
11365
  CopyPermissions,
11162
11366
  PastePermissions,
11163
11367
  ClipboardPermissions,
@@ -11225,6 +11429,7 @@ declare namespace OpenFin_2 {
11225
11429
  LayoutManagerOverride,
11226
11430
  LayoutManager,
11227
11431
  HeaderControlsContext,
11432
+ CustomTabControlsContext,
11228
11433
  CreateLayoutOptions,
11229
11434
  MultiInstanceViewBehavior,
11230
11435
  LayoutAccessibilityOptions,
@@ -11298,6 +11503,12 @@ declare namespace OpenFin_2 {
11298
11503
  InteropClientEvent,
11299
11504
  ClientChangedContextGroup,
11300
11505
  InteropClientEvents,
11506
+ GetPerformanceStatsOptions,
11507
+ SerializedPerformanceOptions,
11508
+ CorePerformanceEntry,
11509
+ WebContentPerformanceStats,
11510
+ WindowPerformanceStats,
11511
+ PerformanceStatsResult,
11301
11512
  ChromeBrowser,
11302
11513
  LanguageInfo,
11303
11514
  PageTranslateOptions,
@@ -11584,6 +11795,12 @@ declare type PerDomainSettings = {
11584
11795
  * See also {@link AppLogLevel} for more information.
11585
11796
  */
11586
11797
  appLogLevel?: AppLogLevel;
11798
+ /**
11799
+ * When the live URL matches this rule, remap inbound
11800
+ * {@link View.ViewModule.navigate View.navigate} / {@link Window.WindowModule.navigate Window.navigate}
11801
+ * to {@link UrlRestoreSettings.url}.
11802
+ */
11803
+ urlRestore?: UrlRestoreSettings;
11587
11804
  };
11588
11805
 
11589
11806
  /**
@@ -11594,6 +11811,15 @@ declare type PerformanceReportEvent = Performance & BaseEvent_5 & {
11594
11811
  type: 'performance-report';
11595
11812
  };
11596
11813
 
11814
+ declare type PerformanceStatsResult = {
11815
+ mainWindow: WindowPerformanceStats;
11816
+ childWindows: WindowPerformanceStats[];
11817
+ browser?: {
11818
+ timeOrigin: number;
11819
+ entries: CorePerformanceEntry[];
11820
+ };
11821
+ };
11822
+
11597
11823
  /**
11598
11824
  * @interface
11599
11825
  *
@@ -13803,6 +14029,11 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
13803
14029
  response: OpenFin_2.MenuResult;
13804
14030
  };
13805
14031
  'close-tray-icon-popup-menu': IdentityCall<{}, void>;
14032
+ 'get-application-performance-stats': ApplicationIdentityCall<OpenFin_2.SerializedPerformanceOptions, OpenFin_2.PerformanceStatsResult> & {
14033
+ secure: true;
14034
+ namespace: 'Application';
14035
+ apiPath: '.getPerformanceStats';
14036
+ };
13806
14037
  'create-application': ApiCall<OpenFin_2.ApplicationCreationOptions, void>;
13807
14038
  'run-applications': ApiCall<{
13808
14039
  applications: Array<OpenFin_2.ManifestInfo>;
@@ -15188,6 +15419,16 @@ declare type SentMessage<Value> = Promise<Value> & {
15188
15419
  messageId: ReturnType<Environment['getNextMessageId']>;
15189
15420
  };
15190
15421
 
15422
+ declare type SerializedFilter = string | {
15423
+ type: 'regex';
15424
+ expression: string;
15425
+ flags?: string;
15426
+ };
15427
+
15428
+ declare type SerializedPerformanceOptions = Omit<GetPerformanceStatsOptions, 'include'> & {
15429
+ include?: SerializedFilter[];
15430
+ };
15431
+
15191
15432
  declare type ServeAssetOptions = AppAssetServeRequest | PathServeRequest;
15192
15433
 
15193
15434
  declare type ServedAssetInfo = {
@@ -18201,6 +18442,16 @@ declare type UrlChangedEvent = BaseUrlEvent & ({
18201
18442
  httpStatusText: string;
18202
18443
  });
18203
18444
 
18445
+ /**
18446
+ * Domain-settings policy that replaces a matched live URL with a configured start URI.
18447
+ */
18448
+ declare type UrlRestoreSettings = {
18449
+ /**
18450
+ * Absolute replacement URL. Full URL replace, not prefix rewrite.
18451
+ */
18452
+ url: string;
18453
+ };
18454
+
18204
18455
  /**
18205
18456
  * @interface
18206
18457
  */
@@ -19045,10 +19296,10 @@ declare type ViewTabAccessibilityOptions = {
19045
19296
  * Uses roving tabindex pattern - only one element focusable at a time.
19046
19297
  * @default ['active-tab', 'add-tab-button']
19047
19298
  */
19048
- tabNavigation?: ViewTabElements[];
19299
+ tabNavigation?: Exclude<ViewTabElements, 'active-tab-custom-control' | 'inactive-tab-custom-control'>[];
19049
19300
  /**
19050
19301
  * Controls which elements are navigable via Arrow keys.
19051
- * @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button']
19302
+ * @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button', 'active-tab-custom-control', 'inactive-tab-custom-control']
19052
19303
  */
19053
19304
  arrowNavigation?: ViewTabElements[];
19054
19305
  /**
@@ -19080,7 +19331,14 @@ declare type ViewTabAccessibilityOptions = {
19080
19331
  /**
19081
19332
  * Elements that can be navigated in view tabs.
19082
19333
  */
19083
- declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button';
19334
+ declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button' | 'active-tab-custom-control' | 'inactive-tab-custom-control';
19335
+
19336
+ /**
19337
+ * Per-view tab icon. A URL, or the reserved sentinels `'hide'` / `'unset'`.
19338
+ *
19339
+ * `'hide'` and `'unset'` are not URLs. `''` is also unset (inherit) and is the default.
19340
+ */
19341
+ declare type ViewTabIcon = string | 'hide' | 'unset';
19084
19342
 
19085
19343
  /**
19086
19344
  * View throttling state.
@@ -19134,6 +19392,22 @@ declare type VoidCall = ApiCall<void, void>;
19134
19392
 
19135
19393
  declare type WebContent = View_2 | _Window;
19136
19394
 
19395
+ declare type WebContentPerformanceStatBase = {
19396
+ name: string;
19397
+ entries: CorePerformanceEntry[];
19398
+ navigation: {
19399
+ historyLength: number;
19400
+ timeOrigin: number;
19401
+ };
19402
+ url: string;
19403
+ frames: WebContentPerformanceStats[];
19404
+ };
19405
+
19406
+ declare type WebContentPerformanceStats = WebContentPerformanceStatBase | {
19407
+ error: string;
19408
+ url: string;
19409
+ };
19410
+
19137
19411
  declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
19138
19412
  identity: OpenFin_2.Identity;
19139
19413
  entityType: 'window' | 'view';
@@ -21744,6 +22018,13 @@ declare type WindowOptionsChangedEvent = OpenFin_2.WindowEvents.WindowOptionsCha
21744
22018
  */
21745
22019
  declare type WindowOptionsChangedEvent_2 = OptionsChangedEvent;
21746
22020
 
22021
+ declare type WindowPerformanceStats = (WebContentPerformanceStatBase & {
22022
+ views: WebContentPerformanceStats[];
22023
+ }) | {
22024
+ error: string;
22025
+ url: string;
22026
+ };
22027
+
21747
22028
  declare type WindowPrintOptions = PrintOptions | ScreenshotPrintOptions | WindowViewsPrintOptions;
21748
22029
 
21749
22030
  /**