@sapui5/ts-types-esm 1.138.1 → 1.140.0

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.
Files changed (70) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/types/sap.apf.d.ts +1 -1
  4. package/types/sap.ca.ui.d.ts +1 -1
  5. package/types/sap.chart.d.ts +1 -1
  6. package/types/sap.collaboration.d.ts +1 -1
  7. package/types/sap.cux.home.d.ts +0 -1657
  8. package/types/sap.esh.search.ui.d.ts +1 -2291
  9. package/types/sap.f.d.ts +63 -15
  10. package/types/sap.fe.ariba.d.ts +1 -1
  11. package/types/sap.fe.base.d.ts +1 -5
  12. package/types/sap.fe.controls.d.ts +1 -1
  13. package/types/sap.fe.core.d.ts +30 -15
  14. package/types/sap.fe.ina.d.ts +1 -1
  15. package/types/sap.fe.macros.d.ts +84 -12
  16. package/types/sap.fe.navigation.d.ts +1 -1
  17. package/types/sap.fe.placeholder.d.ts +1 -1
  18. package/types/sap.fe.plugins.managecache.d.ts +1 -1
  19. package/types/sap.fe.templates.d.ts +1 -1
  20. package/types/sap.fe.test.d.ts +13 -1
  21. package/types/sap.fe.tools.d.ts +1 -1
  22. package/types/sap.feedback.ui.d.ts +1 -1
  23. package/types/sap.gantt.d.ts +55 -13
  24. package/types/sap.insights.d.ts +130 -2
  25. package/types/sap.m.d.ts +1132 -293
  26. package/types/sap.makit.d.ts +1 -1
  27. package/types/sap.me.d.ts +1 -1
  28. package/types/sap.ndc.d.ts +1 -1
  29. package/types/sap.ovp.d.ts +1 -1
  30. package/types/sap.rules.ui.d.ts +1 -1
  31. package/types/sap.sac.df.d.ts +2 -30
  32. package/types/sap.suite.ui.commons.d.ts +1 -1
  33. package/types/sap.suite.ui.generic.template.d.ts +1 -1
  34. package/types/sap.suite.ui.microchart.d.ts +1 -1
  35. package/types/sap.tnt.d.ts +5 -1
  36. package/types/sap.ui.codeeditor.d.ts +1 -1
  37. package/types/sap.ui.commons.d.ts +1 -1
  38. package/types/sap.ui.comp.d.ts +125 -2
  39. package/types/sap.ui.core.d.ts +513 -127
  40. package/types/sap.ui.dt.d.ts +1 -1
  41. package/types/sap.ui.export.d.ts +1 -1
  42. package/types/sap.ui.fl.d.ts +1 -7
  43. package/types/sap.ui.generic.app.d.ts +1 -1
  44. package/types/sap.ui.generic.template.d.ts +1 -1
  45. package/types/sap.ui.integration.d.ts +57 -20
  46. package/types/sap.ui.layout.d.ts +1 -1
  47. package/types/sap.ui.mdc.d.ts +88 -22
  48. package/types/sap.ui.richtexteditor.d.ts +1 -1
  49. package/types/sap.ui.rta.d.ts +1 -1
  50. package/types/sap.ui.suite.d.ts +1 -1
  51. package/types/sap.ui.support.d.ts +1 -1
  52. package/types/sap.ui.table.d.ts +568 -1
  53. package/types/sap.ui.testrecorder.d.ts +1 -1
  54. package/types/sap.ui.unified.d.ts +1 -1
  55. package/types/sap.ui.ux3.d.ts +1 -1
  56. package/types/sap.ui.vbm.d.ts +1 -1
  57. package/types/sap.ui.vk.d.ts +392 -58
  58. package/types/sap.ui.vtm.d.ts +1 -1
  59. package/types/sap.ui.webc.common.d.ts +1 -1
  60. package/types/sap.ui.webc.fiori.d.ts +1 -1
  61. package/types/sap.ui.webc.main.d.ts +1 -1
  62. package/types/sap.uiext.inbox.d.ts +1 -1
  63. package/types/sap.ushell.d.ts +69 -23
  64. package/types/sap.ushell_abap.d.ts +3 -1
  65. package/types/sap.uxap.d.ts +1 -1
  66. package/types/sap.viz.d.ts +1 -1
  67. package/types/sap.webanalytics.core.d.ts +1 -1
  68. package/types/sap.zen.commons.d.ts +1 -1
  69. package/types/sap.zen.crosstab.d.ts +1 -1
  70. package/types/sap.zen.dsh.d.ts +1 -1
@@ -279,7 +279,7 @@ declare namespace sap {
279
279
  "sap/ui/thirdparty/qunit-2": undefined;
280
280
  }
281
281
  }
282
- // For Library Version: 1.138.0
282
+ // For Library Version: 1.140.0
283
283
 
284
284
  declare module "sap/base/assert" {
285
285
  /**
@@ -2432,8 +2432,10 @@ declare module "sap/base/security/URLListValidator" {
2432
2432
  */
2433
2433
  port?: string,
2434
2434
  /**
2435
- * the path of the URL, path of the url, can be falsy to allow all paths. A wildcard asterisk can be set
2436
- * at the end, e.g. "/my-example*", "/my-news"
2435
+ * the path of the URL, e.g. "/my-news". Can be falsy to allow all paths. A wildcard asterisk can be set
2436
+ * at the end to ensure a path starts with the given string, e.g. "/my-example*". When using wildcards,
2437
+ * make sure to only provide normalized URLs to the validate function in order to mitigate the risk of path
2438
+ * traversal attacks.
2437
2439
  */
2438
2440
  path?: string
2439
2441
  ): void;
@@ -2451,11 +2453,14 @@ declare module "sap/base/security/URLListValidator" {
2451
2453
  /**
2452
2454
  * Validates a URL. Check if it's not a script or other security issue.
2453
2455
  *
2454
- * **Note**: It is strongly recommended to validate only absolute URLs. There's almost no case where checking
2455
- * only the path of a URL would allow to ensure its validity. For compatibility reasons, this API cannot
2456
- * automatically resolve URLs relative to `document.baseURI`, but callers should do so. In that case, and
2457
- * when the allow list is not empty, an entry for the origin of `document.baseURI` must be added to the
2458
- * allow list.
2456
+ * **Note**: It is strongly recommended to validate only absolute, normalized URLs. There's almost no case
2457
+ * where checking only the path of a URL would allow to ensure its validity. For compatibility reasons,
2458
+ * this API does not normalize URLs and cannot automatically resolve URLs relative to `document.baseURI`,
2459
+ * but callers should do so. In that case, and when the allow list is not empty, an entry for the origin
2460
+ * of `document.baseURI` must be added to the allow list.
2461
+ *
2462
+ * Any measures to mitigate path traversal or similar attack vectors must be taken by the caller, e.g. by
2463
+ * using the {@link https://developer.mozilla.org/docs/Web/API/URL URL} API to normalize the URL beforehand.
2459
2464
  *
2460
2465
  * Details: Splits the given URL into components and checks for allowed characters according to RFC 3986:
2461
2466
  *
@@ -5415,6 +5420,10 @@ declare module "sap/ui/dom/includeStylesheet" {
5415
5420
  *
5416
5421
  * - otherwise: no action
5417
5422
  *
5423
+ * **Note:** `includeStylesheet` must not be used for UI5 library CSS. UI5 library CSS is managed by the
5424
+ * UI5 theming lifecycle. Interfering with this lifecycle by manually including library CSS via `includeStylesheet`
5425
+ * can lead to unexpected behavior and theming issues.
5426
+ *
5418
5427
  * @since 1.58
5419
5428
  *
5420
5429
  * @returns When using the configuration object a `Promise` will be returned. The documentation for the
@@ -6015,8 +6024,8 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6015
6024
  */
6016
6025
  refreshAfterChange?: boolean;
6017
6026
  /**
6018
- * Whether to sequentialize all requests, needed in case the service cannot handle parallel requests. **Deprecated**
6019
- * as of version 1.128.0, the concept has been discarded.
6027
+ * Whether to sequentialize all requests, needed in case the service cannot handle parallel requests. **Deprecated
6028
+ * as of version 1.128.0**, the concept has been discarded.
6020
6029
  */
6021
6030
  sequentializeRequests?: boolean;
6022
6031
  /**
@@ -6051,19 +6060,20 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6051
6060
  */
6052
6061
  withCredentials?: boolean;
6053
6062
  /**
6054
- * **Deprecated** for security reasons. Use strong server side authentication instead. Password for the
6055
- * service.
6063
+ * **Deprecated as of version 1.75.0** for security reasons. Use strong server side authentication instead.
6064
+ * Password for the service.
6056
6065
  */
6057
6066
  password?: string;
6058
6067
  /**
6059
- * **Deprecated** This parameter does not prevent creation of annotations from the metadata document in
6060
- * this model's metamodel. Whether to skip the automated loading of annotations from the metadata document.
6061
- * Loading annotations from metadata does not have any effects (except the lost performance by invoking
6062
- * the parser) if there are no annotations inside the metadata document
6068
+ * **Deprecated as of version 1.112.0** This parameter does not prevent creation of annotations from the
6069
+ * metadata document in this model's metamodel. Whether to skip the automated loading of annotations from
6070
+ * the metadata document. Loading annotations from metadata does not have any effects (except the lost performance
6071
+ * by invoking the parser) if there are no annotations inside the metadata document
6063
6072
  */
6064
6073
  skipMetadataAnnotationParsing?: boolean;
6065
6074
  /**
6066
- * **Deprecated** for security reasons. Use strong server side authentication instead. UserID for the service.
6075
+ * **Deprecated as of version 1.75.0** for security reasons. Use strong server side authentication instead.
6076
+ * UserID for the service.
6067
6077
  */
6068
6078
  user?: string;
6069
6079
  }
@@ -6402,8 +6412,8 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6402
6412
  */
6403
6413
  usePreliminaryContext?: boolean;
6404
6414
  /**
6405
- * **Deprecated**, use `groupId` instead. Sets the batch group id to be used for requests originating from
6406
- * the binding.
6415
+ * **Deprecated as of version 1.31.0**, use `groupId` instead. Sets the batch group id to be used for requests
6416
+ * originating from the binding.
6407
6417
  */
6408
6418
  batchGroupId?: string;
6409
6419
  }
@@ -6489,14 +6499,14 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6489
6499
  */
6490
6500
  usePreliminaryContext?: boolean;
6491
6501
  /**
6492
- * **Deprecated**, use `groupId` instead. Sets the batch group id to be used for requests originating from
6493
- * the binding.
6502
+ * **Deprecated as of version 1.31.0**, use `groupId` instead. Sets the batch group id to be used for requests
6503
+ * originating from the binding.
6494
6504
  */
6495
6505
  batchGroupId?: string;
6496
6506
  /**
6497
- * Deprecated since 1.102.0, as {@link sap.ui.model.odata.OperationMode.Auto} is deprecated; the threshold
6498
- * that defines how many entries should be fetched at least by the binding if `operationMode` is set to
6499
- * `Auto`.
6507
+ * **Deprecated as of version 1.102.0**, as {@link sap.ui.model.odata.OperationMode.Auto} is deprecated;
6508
+ * the threshold that defines how many entries should be fetched at least by the binding if `operationMode`
6509
+ * is set to `Auto`.
6500
6510
  */
6501
6511
  threshold?: int;
6502
6512
  }
@@ -6555,27 +6565,22 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6555
6565
  * of levels, with only a single initial OData request.
6556
6566
  *
6557
6567
  * For services without the `hierarchy-node-descendant-count-for` annotation, the `numberOfExpandedLevels`
6558
- * property is not supported and deprecated.
6568
+ * property is not supported and deprecated since 1.44.5.
6559
6569
  *
6560
- * Operation Modes: For a full definition and explanation of all OData binding operation modes, see {@link sap.ui.model.odata.OperationMode}.
6570
+ * The OData service must always return node collections which are sufficient to create a valid hierarchy
6571
+ * on the client. This means that for each node in the response all parent nodes up to the hierarchy root
6572
+ * must also be contained in the response. Note that this rule applies independent of any filters set for
6573
+ * the binding.
6561
6574
  *
6562
- * OperationMode.Server: Filtering on the `ODataTreeBinding` is only supported with filters of type {@link sap.ui.model.FilterType.Application}.
6563
- * Be aware that this applies only to filters which do not prevent the creation of a hierarchy. So filtering
6564
- * on a property (e.g. a "Customer") is fine, as long as the application ensures that the responses from
6565
- * the back end are sufficient to create a valid hierarchy on the client. Subsequent paging requests for
6566
- * sibling and child nodes must also return responses, since the filters are sent with every request. Using
6567
- * control-defined filters (see {@link sap.ui.model.FilterType.Control}) via the {@link #filter} function
6568
- * is not supported for the operation mode `Server`.
6575
+ * You must not define filters on tree annotation properties for this binding as this interferes with hierarchy
6576
+ * filters defined by the binding itself.
6569
6577
  *
6570
- * OperationMode.Client and OperationMode.Auto: The ODataTreeBinding supports control-defined filters only
6571
- * in operation modes `Client` and `Auto`. With these operation modes, the filters and sorters are applied
6572
- * on the client, like for the {@link sap.ui.model.odata.v2.ODataListBinding}.
6578
+ * Notes On Operation Modes: For a full definition and explanation of all OData binding operation modes,
6579
+ * see {@link sap.ui.model.odata.OperationMode}.
6573
6580
  *
6574
6581
  * The operation modes `Client` and `Auto` are only supported for services which expose the hierarchy annotations
6575
- * mentioned above, but do **not** expose the `hierarchy-node-descendant-count-for` annotation. Services
6576
- * with hierarchy annotations including the `hierarchy-node-descendant-count-for` annotation, do **not**
6577
- * support the operation modes `Client` and `Auto`. **Note:** {@link sap.ui.model.odata.OperationMode.Auto }
6578
- * is deprecated since 1.102.0.
6582
+ * mentioned above, but do **not** expose the `hierarchy-node-descendant-count-for` annotation. **Note:**
6583
+ * {@link sap.ui.model.odata.OperationMode.Auto} is deprecated since 1.102.0.
6579
6584
  *
6580
6585
  * **Note:** OData tree bindings do neither support {@link sap.ui.model.Binding#suspend suspend} nor {@link sap.ui.model.Binding#resume resume}.
6581
6586
  * See:
@@ -6641,7 +6646,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6641
6646
  };
6642
6647
  /**
6643
6648
  * The number of levels that are auto-expanded initially. Setting this property might lead to multiple back-end
6644
- * requests. The auto-expand feature is **deprecated for services without the `hierarchy-node-descendant-count-for`
6649
+ * requests. The auto-expand feature is **deprecated as of Version 1.44.5 for services without the `hierarchy-node-descendant-count-for`
6645
6650
  * annotation**
6646
6651
  */
6647
6652
  numberOfExpandedLevels?: number;
@@ -6657,7 +6662,6 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6657
6662
  * The operation mode for this binding; defaults to the model's default operation mode if not specified.
6658
6663
  * {@link sap.ui.model.odata.OperationMode.Auto OperationMode.Auto} is only supported for services which
6659
6664
  * expose the hierarchy annotations, yet do **NOT** expose the `hierarchy-node-descendant-count-for` annotation.
6660
- * **Note:** {@link sap.ui.model.odata.OperationMode.Auto} is deprecated since 1.102.0.
6661
6665
  */
6662
6666
  operationMode?: OperationMode | keyof typeof OperationMode;
6663
6667
  /**
@@ -6667,13 +6671,9 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6667
6671
  */
6668
6672
  threshold?: number;
6669
6673
  /**
6670
- * Deprecated since 1.102.0, as {@link sap.ui.model.odata.OperationMode.Auto} is deprecated; whether `$filter`
6671
- * statements should be used for the `$count` / `$inlinecount` requests and for the data request if the
6672
- * operation mode is {@link sap.ui.model.odata.OperationMode.Auto OperationMode.Auto}. Use this feature
6673
- * only if your back end supports pre-filtering the tree and is capable of responding with a complete tree
6674
- * hierarchy, including all inner nodes. To construct the hierarchy on the client, it is mandatory that
6675
- * all filter matches include their complete parent chain up to the root level. If {@link sap.ui.model.odata.OperationMode.Client OperationMode.Client }
6676
- * is used, the complete collection without filters is requested; filters are applied on the client side.
6674
+ * Whether `$filter` statements should be used for the `$count` / `$inlinecount` requests and for the data
6675
+ * request if the operation mode is {@link sap.ui.model.odata.OperationMode.Auto OperationMode.Auto} or
6676
+ * {@link sap.ui.model.odata.OperationMode.Client OperationMode.Client}
6677
6677
  */
6678
6678
  useServersideApplicationFilters?: boolean;
6679
6679
  /**
@@ -6698,16 +6698,16 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6698
6698
  */
6699
6699
  usePreliminaryContext?: boolean;
6700
6700
  /**
6701
- * **Deprecated**, use `groupId` instead. Sets the batch group id to be used for requests originating from
6702
- * this binding
6701
+ * **Deprecated as of version 1.31.0**, use `groupId` instead. Sets the batch group id to be used for requests
6702
+ * originating from this binding
6703
6703
  */
6704
6704
  batchGroupId?: string;
6705
6705
  /**
6706
6706
  * A map describing the navigation properties between entity sets, which is used for constructing and paging
6707
6707
  * the tree. Keys in this object are entity names, whereas the values name the navigation properties.
6708
6708
  *
6709
- * **Deprecated: since 1.44** The use of navigation properties to build up the hierarchy structure is deprecated.
6710
- * It is recommended to use the hierarchy annotations mentioned above instead.
6709
+ * **Deprecated as of version 1.44** The use of navigation properties to build up the hierarchy structure
6710
+ * is deprecated. It is recommended to use the hierarchy annotations mentioned above instead.
6711
6711
  */
6712
6712
  navigation?: object;
6713
6713
  },
@@ -6827,7 +6827,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6827
6827
  */
6828
6828
  urlParameters?: Record<string, any>;
6829
6829
  /**
6830
- * **Deprecated - use `groupId` instead**
6830
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
6831
6831
  */
6832
6832
  batchGroupId?: string;
6833
6833
  }
@@ -6890,7 +6890,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
6890
6890
  */
6891
6891
  headers?: Record<string, string>;
6892
6892
  /**
6893
- * Deprecated - use `groupId` instead
6893
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
6894
6894
  */
6895
6895
  batchGroupId?: string;
6896
6896
  /**
@@ -7030,7 +7030,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
7030
7030
  */
7031
7031
  mParameters: {
7032
7032
  /**
7033
- * Deprecated - use `groupId` instead
7033
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
7034
7034
  */
7035
7035
  batchGroupId?: string;
7036
7036
  /**
@@ -7657,9 +7657,9 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
7657
7657
  */
7658
7658
  oContext?: object,
7659
7659
  /**
7660
- * Deprecated, use {@link #getObject} function with 'select' and 'expand' parameters instead. Whether entities
7661
- * for navigation properties of this property which have been read via `$expand` are part of the return
7662
- * value.
7660
+ * **Deprecated as of version 1.41.0**, use {@link #getObject} function with 'select' and 'expand' parameters
7661
+ * instead. Whether entities for navigation properties of this property which have been read via `$expand`
7662
+ * are part of the return value.
7663
7663
  */
7664
7664
  bIncludeExpandEntries?: boolean
7665
7665
  ): any;
@@ -7895,7 +7895,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
7895
7895
  */
7896
7896
  error?: Function;
7897
7897
  /**
7898
- * Deprecated - use `groupId` instead
7898
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
7899
7899
  */
7900
7900
  batchGroupId?: string;
7901
7901
  /**
@@ -8008,7 +8008,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
8008
8008
  */
8009
8009
  headers?: Record<string, string>;
8010
8010
  /**
8011
- * Deprecated - use `groupId` instead
8011
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
8012
8012
  */
8013
8013
  batchGroupId?: string;
8014
8014
  /**
@@ -8297,13 +8297,14 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
8297
8297
  */
8298
8298
  error?: Function;
8299
8299
  /**
8300
- * **Deprecated**, use `groupId` instead
8300
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
8301
8301
  */
8302
8302
  batchGroupId?: string;
8303
8303
  /**
8304
- * **Deprecated** since 1.38.0; use the `defaultUpdateMethod` constructor parameter instead. If unset, the
8305
- * update method is determined from the `defaultUpdateMethod` constructor parameter. If `true`, `sap.ui.model.odata.UpdateMethod.MERGE`
8306
- * is used for update operations; if set to `false`, `sap.ui.model.odata.UpdateMethod.PUT` is used.
8304
+ * **Deprecated as of version 1.38.0**, use the `defaultUpdateMethod` constructor parameter instead. If
8305
+ * unset, the update method is determined from the `defaultUpdateMethod` constructor parameter. If `true`,
8306
+ * `sap.ui.model.odata.UpdateMethod.MERGE` is used for update operations; if set to `false`, `sap.ui.model.odata.UpdateMethod.PUT`
8307
+ * is used.
8307
8308
  */
8308
8309
  merge?: boolean;
8309
8310
  }
@@ -8362,7 +8363,7 @@ declare module "sap/ui/model/odata/v2/ODataModel" {
8362
8363
  */
8363
8364
  headers?: Record<string, string>;
8364
8365
  /**
8365
- * Deprecated - use `groupId` instead
8366
+ * **Deprecated as of version 1.31.0**, use `groupId` instead
8366
8367
  */
8367
8368
  batchGroupId?: string;
8368
8369
  /**
@@ -10213,8 +10214,6 @@ declare module "sap/ui/util/Mobile" {
10213
10214
  * work in case there is already a meta tag with name 'viewport'.
10214
10215
  * - statusBar: the iOS status bar color, "default", "black" or "black-translucent" (default: "default")
10215
10216
  *
10216
- * - hideBrowser: whether the browser UI should be hidden as far as possible to make the app feel more
10217
- * native (default: true)
10218
10217
  * - preventScroll: whether native scrolling should be disabled in order to prevent the "rubber-band"
10219
10218
  * effect where the whole window is moved (default: true)
10220
10219
  * - preventPhoneNumberDetection: whether Safari Mobile should be prevented from transforming any numbers
@@ -10222,8 +10221,6 @@ declare module "sap/ui/util/Mobile" {
10222
10221
  * break controls because Safari actually changes the DOM. This only affects all page content which is created
10223
10222
  * after init() is called and only in case there is not already a meta tag with name 'format-detection'.
10224
10223
  *
10225
- * - rootId: the ID of the root element that should be made fullscreen; only used when hideBrowser is
10226
- * set (default: the document.body)
10227
10224
  * - useFullScreenHeight: a boolean that defines whether the height of the html root element should be
10228
10225
  * set to 100%, which is required for other elements to cover the full height (default: true) homeIcon:
10229
10226
  * deprecated since 1.12, use sap/ui/util/Mobile.setIcons instead.
@@ -10241,10 +10238,6 @@ declare module "sap/ui/util/Mobile" {
10241
10238
  * the iOS status bar color, "default", "black" or "black-translucent"
10242
10239
  */
10243
10240
  statusBar?: string;
10244
- /**
10245
- * whether the browser UI should be hidden as far as possible to make the app feel more native
10246
- */
10247
- hideBrowser?: boolean;
10248
10241
  /**
10249
10242
  * whether native scrolling should be disabled in order to prevent the "rubber-band" effect where the whole
10250
10243
  * window is moved
@@ -10255,11 +10248,6 @@ declare module "sap/ui/util/Mobile" {
10255
10248
  * into clickable links
10256
10249
  */
10257
10250
  preventPhoneNumberDetection?: boolean;
10258
- /**
10259
- * the ID of the root element that should be made fullscreen; only used when hideBrowser is set. If not
10260
- * set, the body is used
10261
- */
10262
- rootId?: string;
10263
10251
  /**
10264
10252
  * whether the height of the html root element should be set to 100%, which is required for other elements
10265
10253
  * to cover the full height
@@ -11051,7 +11039,11 @@ declare module "sap/ui/base/DataType" {
11051
11039
  /**
11052
11040
  * Qualified name of the type to retrieve
11053
11041
  */
11054
- sTypeName: string
11042
+ sTypeName: string,
11043
+ /**
11044
+ * Metadata of the property
11045
+ */
11046
+ oProperty?: /* was: sap.ui.base.ManagedObject.MetaOptions.Property */ any
11055
11047
  ): DataType | undefined;
11056
11048
  /**
11057
11049
  * Registers an enum under the given name. With version 2.0, registering an enum becomes mandatory when
@@ -29717,7 +29709,8 @@ declare module "sap/ui/core/format/NumberFormat" {
29717
29709
  */
29718
29710
  groupingBaseSize?: int;
29719
29711
  /**
29720
- * defines whether grouping is enabled (grouping separators are shown)
29712
+ * defines whether grouping is enabled (grouping separators are shown). **Note:** Grouping is disabled if
29713
+ * the `groupingSize` format option is set to a non-positive value.
29721
29714
  */
29722
29715
  groupingEnabled?: boolean;
29723
29716
  /**
@@ -29726,7 +29719,8 @@ declare module "sap/ui/core/format/NumberFormat" {
29726
29719
  */
29727
29720
  groupingSeparator?: string;
29728
29721
  /**
29729
- * defines the grouping size in digits; the default is `3`. It must be a positive number.
29722
+ * defines the grouping size in digits; the default is `3`. **Note:** If this format option is set to a
29723
+ * non-positive value, grouping will be disabled entirely.
29730
29724
  */
29731
29725
  groupingSize?: int;
29732
29726
  /**
@@ -29896,7 +29890,8 @@ declare module "sap/ui/core/format/NumberFormat" {
29896
29890
  */
29897
29891
  groupingBaseSize?: int;
29898
29892
  /**
29899
- * defines whether grouping is enabled (grouping separators are shown)
29893
+ * defines whether grouping is enabled (grouping separators are shown). **Note:** Grouping is disabled if
29894
+ * the `groupingSize` format option is set to a non-positive value.
29900
29895
  */
29901
29896
  groupingEnabled?: boolean;
29902
29897
  /**
@@ -29905,7 +29900,8 @@ declare module "sap/ui/core/format/NumberFormat" {
29905
29900
  */
29906
29901
  groupingSeparator?: string;
29907
29902
  /**
29908
- * defines the grouping size in digits; the default is `3`. It must be a positive number.
29903
+ * defines the grouping size in digits; the default is `3`. **Note:** If this format option is set to a
29904
+ * non-positive value, grouping will be disabled entirely.
29909
29905
  */
29910
29906
  groupingSize?: int;
29911
29907
  /**
@@ -30059,7 +30055,8 @@ declare module "sap/ui/core/format/NumberFormat" {
30059
30055
  */
30060
30056
  groupingBaseSize?: int;
30061
30057
  /**
30062
- * defines whether grouping is enabled (grouping separators are shown)
30058
+ * defines whether grouping is enabled (grouping separators are shown). **Note:** Grouping is disabled if
30059
+ * the `groupingSize` format option is set to a non-positive value.
30063
30060
  */
30064
30061
  groupingEnabled?: boolean;
30065
30062
  /**
@@ -30068,7 +30065,8 @@ declare module "sap/ui/core/format/NumberFormat" {
30068
30065
  */
30069
30066
  groupingSeparator?: string;
30070
30067
  /**
30071
- * defines the grouping size in digits; the default is `3`. It must be a positive number.
30068
+ * defines the grouping size in digits; the default is `3`. **Note:** If this format option is set to a
30069
+ * non-positive value, grouping will be disabled entirely.
30072
30070
  */
30073
30071
  groupingSize?: int;
30074
30072
  /**
@@ -30217,7 +30215,8 @@ declare module "sap/ui/core/format/NumberFormat" {
30217
30215
  */
30218
30216
  groupingBaseSize?: int;
30219
30217
  /**
30220
- * defines whether grouping is enabled (grouping separators are shown)
30218
+ * defines whether grouping is enabled (grouping separators are shown). **Note:** Grouping is disabled if
30219
+ * the `groupingSize` format option is set to a non-positive value.
30221
30220
  */
30222
30221
  groupingEnabled?: boolean;
30223
30222
  /**
@@ -30226,7 +30225,8 @@ declare module "sap/ui/core/format/NumberFormat" {
30226
30225
  */
30227
30226
  groupingSeparator?: string;
30228
30227
  /**
30229
- * defines the grouping size in digits; the default is `3`. It must be a positive number.
30228
+ * defines the grouping size in digits; the default is `3`. **Note:** If this format option is set to a
30229
+ * non-positive value, grouping will be disabled entirely.
30230
30230
  */
30231
30231
  groupingSize?: int;
30232
30232
  /**
@@ -30387,7 +30387,8 @@ declare module "sap/ui/core/format/NumberFormat" {
30387
30387
  */
30388
30388
  groupingBaseSize?: int;
30389
30389
  /**
30390
- * defines whether grouping is enabled (grouping separators are shown)
30390
+ * defines whether grouping is enabled (grouping separators are shown). **Note:** Grouping is disabled if
30391
+ * the `groupingSize` format option is set to a non-positive value.
30391
30392
  */
30392
30393
  groupingEnabled?: boolean;
30393
30394
  /**
@@ -30396,7 +30397,8 @@ declare module "sap/ui/core/format/NumberFormat" {
30396
30397
  */
30397
30398
  groupingSeparator?: string;
30398
30399
  /**
30399
- * defines the grouping size in digits; the default is `3`. It must be a positive number.
30400
+ * defines the grouping size in digits; the default is `3`. **Note:** If this format option is set to a
30401
+ * non-positive value, grouping will be disabled entirely.
30400
30402
  */
30401
30403
  groupingSize?: int;
30402
30404
  /**
@@ -43244,7 +43246,23 @@ declare module "sap/ui/core/routing/Router" {
43244
43246
 
43245
43247
  export default class Router extends EventProvider {
43246
43248
  /**
43247
- * Instantiates a router
43249
+ * A Router is responsible for managing navigation within an application by interpreting and responding
43250
+ * to changes in the URL hash. It enables applications to define routes, map them to Views/Components, and
43251
+ * control their placement and transitions — all in a structured and declarative way.
43252
+ *
43253
+ * A router:
43254
+ * - Listens to hash changes and matches them to configured route patterns
43255
+ * - Instantiates Views/Components dynamically when a route is matched and caches them for better performance
43256
+ *
43257
+ * - Places Views/Components into UI containers based on the defined targets and aggregations
43258
+ * - Maintains the browser history and consistent back/forward navigation behavior
43259
+ * - Fires events such as `routeMatched` and `routePatternMatched`, allowing developers to run logic when
43260
+ * routes change
43261
+ * - Handles unmatched routes through a special bypassed configuration for displaying "Not Found" View(s)
43262
+ * or fallbacks
43263
+ *
43264
+ * It can be used directly or via a {@link sap.ui.core.UIComponent UIComponent}'s metadata (manifest.json)
43265
+ * to create scalable, maintainable, and testable navigation structures across complex applications.
43248
43266
  */
43249
43267
  constructor(
43250
43268
  /**
@@ -51852,6 +51870,18 @@ declare module "sap/ui/core/webc/WebComponent" {
51852
51870
  * @returns Metadata object describing this class
51853
51871
  */
51854
51872
  static getMetadata(): WebComponentMetadata;
51873
+ /**
51874
+ * Sets the Web Components busy state
51875
+ *
51876
+ *
51877
+ * @returns `this` to allow method chaining
51878
+ */
51879
+ setBusy(
51880
+ /**
51881
+ * The new busy state to be set
51882
+ */
51883
+ bBusy: boolean
51884
+ ): this;
51855
51885
  }
51856
51886
  /**
51857
51887
  * The structure of the "metadata" object which is passed when inheriting from sap.ui.core.Element using
@@ -51877,6 +51907,11 @@ declare module "sap/ui/core/webc/WebComponent" {
51877
51907
  * for more details.
51878
51908
  */
51879
51909
  associations?: Record<string, string | MetadataOptions.Association>;
51910
+ /**
51911
+ * An object literal whose properties each define a new event of the ManagedObject subclass. See {@link sap.ui.base.ManagedObject.MetadataOptions.Event Event }
51912
+ * for more details.
51913
+ */
51914
+ events?: Record<string, string | MetadataOptions.Event>;
51880
51915
  /**
51881
51916
  * Proxied public getters of the Web Component which are directly accessible on the wrapper Control.
51882
51917
  */
@@ -51887,15 +51922,11 @@ declare module "sap/ui/core/webc/WebComponent" {
51887
51922
  methods?: string[];
51888
51923
  };
51889
51924
 
51890
- /**
51891
- * HACK! This mapping omits the `no-unnecessary-qualifier` error or we need to extend the `tslint.json`!
51892
- */
51893
51925
  export type MetadataOptionsAssociationMapping =
51894
51926
  MetadataOptions.Association.Mapping;
51895
51927
 
51896
- /**
51897
- * HACK! This mapping omits the `no-unnecessary-qualifier` error or we need to extend the `tslint.json`!
51898
- */
51928
+ export type MetadataOptionsEventMapping = MetadataOptions.Event.Mapping;
51929
+
51899
51930
  export type MetadataOptionsPropertyMapping = MetadataOptions.Property.Mapping;
51900
51931
 
51901
51932
  /**
@@ -51926,6 +51957,18 @@ declare module "sap/ui/core/webc/WebComponent" {
51926
51957
  };
51927
51958
  }
51928
51959
 
51960
+ namespace Event {
51961
+ /**
51962
+ * An object literal describing the mapping of an event of a class derived from `sap.ui.core.webc.WebComponent`.
51963
+ */
51964
+ type Mapping = {
51965
+ /**
51966
+ * Defines the target of the mapping of the event to which name it will be mapped to.
51967
+ */
51968
+ to?: string;
51969
+ };
51970
+ }
51971
+
51929
51972
  namespace Property {
51930
51973
  /**
51931
51974
  * An object literal describing the mapping of a property of a class derived from `sap.ui.core.webc.WebComponent`.
@@ -51974,6 +52017,17 @@ declare module "sap/ui/core/webc/WebComponent" {
51974
52017
  mapping?: "property" | MetadataOptionsAssociationMapping;
51975
52018
  };
51976
52019
 
52020
+ /**
52021
+ * An object literal describing an event of a class derived from `sap.ui.core.webc.WebComponent`. See {@link sap.ui.core.webc.WebComponent.MetadataOptions MetadataOptions }
52022
+ * for details on its usage.
52023
+ */
52024
+ type Event = MetadataOptions2.Event & {
52025
+ /**
52026
+ * Defines the mapping of the event.
52027
+ */
52028
+ mapping?: MetadataOptionsEventMapping;
52029
+ };
52030
+
51977
52031
  /**
51978
52032
  * An object literal describing a property of a class derived from `sap.ui.core.webc.WebComponent`. See
51979
52033
  * {@link sap.ui.core.webc.WebComponent.MetadataOptions MetadataOptions} for details on its usage.
@@ -59003,9 +59057,11 @@ declare module "sap/ui/model/Filter" {
59003
59057
  * sensitive or not. Client models filter case insensitive compared to the OData models which filter case
59004
59058
  * sensitive by default. See particular model documentation for details.
59005
59059
  *
59006
- * The filter operators {@link sap.ui.model.FilterOperator.Any "Any"} and {@link sap.ui.model.FilterOperator.All "All" }
59060
+ * The filter operators {@link sap.ui.model.FilterOperator.Any "Any"}, {@link sap.ui.model.FilterOperator.All "All"},
59061
+ * {@link sap.ui.model.FilterOperator.NotAny "NotAny"}, and {@link sap.ui.model.FilterOperator.NotAll "NotAll" }
59007
59062
  * are only supported in V4 OData models. When creating a filter instance with these filter operators, the
59008
- * argument `variable` only accepts a string identifier and `condition` needs to be another filter instance.
59063
+ * `variable` argument only accepts a string identifier, and the `condition` argument must be another filter
59064
+ * instance.
59009
59065
  */
59010
59066
  constructor(
59011
59067
  /**
@@ -59046,12 +59102,14 @@ declare module "sap/ui/model/Filter" {
59046
59102
  */
59047
59103
  value2?: any;
59048
59104
  /**
59049
- * The variable name used in lambda operators ({@link sap.ui.model.FilterOperator.Any "Any"} and {@link sap.ui.model.FilterOperator.All "All"})
59105
+ * The variable name used in the lambda operators ({@link sap.ui.model.FilterOperator.Any "Any"}, {@link sap.ui.model.FilterOperator.All "All"},
59106
+ * {@link sap.ui.model.FilterOperator.NotAny "NotAny"}, and {@link sap.ui.model.FilterOperator.NotAll "NotAll"})
59050
59107
  */
59051
59108
  variable?: string;
59052
59109
  /**
59053
- * A filter instance which will be used as the condition for lambda operators ({@link sap.ui.model.FilterOperator.Any "Any" }
59054
- * and {@link sap.ui.model.FilterOperator.All "All"})
59110
+ * A filter instance which will be used as the condition for lambda operators ({@link sap.ui.model.FilterOperator.Any "Any"},
59111
+ * {@link sap.ui.model.FilterOperator.All "All"}, {@link sap.ui.model.FilterOperator.NotAny "NotAny"}, and
59112
+ * {@link sap.ui.model.FilterOperator.NotAll "NotAll"})
59055
59113
  */
59056
59114
  condition?: Filter;
59057
59115
  /**
@@ -59261,10 +59319,8 @@ declare module "sap/ui/model/FilterOperator" {
59261
59319
  enum FilterOperator {
59262
59320
  /**
59263
59321
  * Used to filter a list based on filter criteria that are defined in a nested filter for dependent subitems.
59264
- * `All` returns a list of those items for which **all** dependent subitems match the filter criteria of
59265
- * the nested filter. For example, a list of customers can be filtered by filter criteria that are applied
59266
- * to the list of orders the customer placed in the past. The filter returns a list of those customers that
59267
- * **always** ordered a specific product.
59322
+ * `All` returns a list of all items for which it is **true** that all dependent subitems match the filter
59323
+ * criteria of the nested filter. This means that **every** dependent subitem matches the filter criteria.
59268
59324
  *
59269
59325
  * This filter operator is only supported in OData V4 models.
59270
59326
  *
@@ -59273,10 +59329,8 @@ declare module "sap/ui/model/FilterOperator" {
59273
59329
  All = "All",
59274
59330
  /**
59275
59331
  * Used to filter a list based on filter criteria that are defined in a nested filter for dependent subitems.
59276
- * `Any` returns a list of those items for which **at least one** dependent subitem matches the filter criteria
59277
- * of the nested filter. For example, a list of customers can be filtered by filter criteria that are applied
59278
- * to the list of orders the customer placed in the past. The filter returns a list of those customers that
59279
- * **at least once** ordered a specific product.
59332
+ * `Any` returns a list of all items for which **at least one** dependent subitem matches the filter criteria
59333
+ * of the nested filter.
59280
59334
  *
59281
59335
  * This filter operator is only supported in OData V4 models.
59282
59336
  *
@@ -59344,6 +59398,28 @@ declare module "sap/ui/model/FilterOperator" {
59344
59398
  * FilterOperator not equals
59345
59399
  */
59346
59400
  NE = "NE",
59401
+ /**
59402
+ * Used to filter a list based on filter criteria that are defined in a nested filter for dependent subitems.
59403
+ * `NotAll` returns a list of all items for which it is **false** that all dependent subitems match the
59404
+ * filter criteria of the nested filter. This means that **at least one** dependent subitem does not match
59405
+ * the filter criteria.
59406
+ *
59407
+ * This filter operator is only supported in OData V4 models.
59408
+ *
59409
+ * @since 1.139.0
59410
+ */
59411
+ NotAll = "NotAll",
59412
+ /**
59413
+ * Used to filter a list based on filter criteria that are defined in a nested filter for dependent subitems.
59414
+ * `NotAny` returns a list of all items for which **none** of the dependent subitems match the filter criteria
59415
+ * of the nested filter. If no filter condition is given, `NotAny` returns all items that do not have any
59416
+ * dependent subitems (i.e., for which the collection is empty).
59417
+ *
59418
+ * This filter operator is only supported in OData V4 models.
59419
+ *
59420
+ * @since 1.139.0
59421
+ */
59422
+ NotAny = "NotAny",
59347
59423
  /**
59348
59424
  * FilterOperator not contains
59349
59425
  *
@@ -59682,6 +59758,260 @@ declare module "sap/ui/model/json/JSONModel" {
59682
59758
  }
59683
59759
  }
59684
59760
 
59761
+ declare module "sap/ui/model/json/TypedJSONModel" {
59762
+ import JSONModel from "sap/ui/model/json/JSONModel";
59763
+ import TypedJSONContext from "sap/ui/model/json/TypedJSONContext";
59764
+ import Context from "sap/ui/model/Context";
59765
+
59766
+ /**
59767
+ * TypedJSONModel is a subclass of JSONModel that provides type-safe access to the model data. It is only available when using UI5 with TypeScript.
59768
+ *
59769
+ * @since 1.140.0
59770
+ */
59771
+ export default class TypedJSONModel<Data extends object> extends JSONModel {
59772
+ constructor(oData?: Data, bObserve?: boolean);
59773
+ createBindingContext<Path extends AbsoluteBindingPath<Data>>(
59774
+ sPath: Path,
59775
+ oContext?: Context,
59776
+ mParameters?: object,
59777
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
59778
+ fnCallBack?: Function,
59779
+ bReload?: boolean
59780
+ ): TypedJSONContext<Data, Path>;
59781
+ getData(): Data;
59782
+ getProperty<Path extends AbsoluteBindingPath<Data>>(
59783
+ sPath: Path
59784
+ ): PropertyByAbsoluteBindingPath<Data, Path>;
59785
+ getProperty<
59786
+ Path extends RelativeBindingPath<Data, Root>,
59787
+ Root extends AbsoluteBindingPath<Data>,
59788
+ >(
59789
+ sPath: Path,
59790
+ oContext: TypedJSONContext<Data, Root>
59791
+ ): PropertyByRelativeBindingPath<Data, Root, Path>;
59792
+
59793
+ setData(oData: Data, bMerge?: boolean): void;
59794
+
59795
+ // setProperty with AbsoluteBindingPath (context === undefined),
59796
+ // PLEASE NOTE: the parameter is still necessary so
59797
+ // the bAsyncUpdate parameter can also be used with absolute paths.
59798
+ setProperty<Path extends AbsoluteBindingPath<Data>>(
59799
+ sPath: Path,
59800
+ oValue: PropertyByAbsoluteBindingPath<Data, Path>,
59801
+ oContext?: undefined,
59802
+ bAsyncUpdate?: boolean
59803
+ ): boolean;
59804
+ setProperty<
59805
+ Path extends RelativeBindingPath<Data, Root>,
59806
+ Root extends AbsoluteBindingPath<Data>,
59807
+ >(
59808
+ sPath: Path,
59809
+ oValue: PropertyByRelativeBindingPath<Data, Root, Path>,
59810
+ oContext: TypedJSONContext<Data, Root>,
59811
+ bAsyncUpdate?: boolean
59812
+ ): boolean;
59813
+ }
59814
+
59815
+ /**
59816
+ * Valid absolute binding in a JSONModel with the underlying type `Type`.
59817
+ * Counterpart to {@link PropertyByAbsoluteBindingPath}
59818
+ * @example
59819
+ * type Person = { name: string, id: number };
59820
+ * type PathInPerson = PathInJSONModel<Person>; // "/name" | "/id"
59821
+ * let path: PathInPerson = "/name"; // ok
59822
+ * path = "/firstName"; // error
59823
+ */
59824
+ export type AbsoluteBindingPath<Type> =
59825
+ Type extends Array<unknown>
59826
+ ? // if Type is an array:
59827
+ | `/${number}` // /0 -> first element of array
59828
+ | `/${number}${AbsoluteBindingPath<Type[number]>}` // /0/{NestedPath}
59829
+ : // if Type is not an array:
59830
+ Type extends object
59831
+ ?
59832
+ | {
59833
+ [Key in keyof Type]: Type[Key] extends Array<unknown>
59834
+ ? // Type[Key] is an array:
59835
+ | `/${string & Key}/${number}` // items/0 -> elem of array
59836
+ // path can end there or:
59837
+ | `/${string & Key}/${number}${AbsoluteBindingPath<Type[Key][number]>}` // items/0/{NestedPath}
59838
+ : // Type[Key] is NOT an array:
59839
+ `/${string & Key}${AbsoluteBindingPath<Type[Key]>}`;
59840
+ }[keyof Type]
59841
+ | `/${string & PropertiesOf<Type>}` // /items/0/id -> last part of path
59842
+ : // if T is not of type object:
59843
+ never;
59844
+
59845
+ /**
59846
+ * Valid relative binding path in a JSONModel.
59847
+ * The root of the path is defined by the given root string.
59848
+ *
59849
+ * @example
59850
+ * type PersonWrapper = { person: { name: string, id: number } };
59851
+ * type PathRelativeToPerson = RelativeBindingPath<PersonWrapper, "/person">; // "name" | "id"
59852
+ */
59853
+ export type RelativeBindingPath<
59854
+ Type,
59855
+ Root extends AbsoluteBindingPath<Type>,
59856
+ > =
59857
+ AbsoluteBindingPath<TypeAtPath<Type, Root>> extends `/${infer Rest}`
59858
+ ? Rest
59859
+ : never;
59860
+
59861
+ /**
59862
+ * The type of a property in a JSONModel identified by the given path.
59863
+ * Counterpart to {@link AbsoluteBindingPath}.
59864
+ * @example
59865
+ * type Person = { name: string, id: number };
59866
+ * type PersonName = PropertyInJSONModel<Person, "/name">; // string
59867
+ * const name: PersonName = "John"; // ok
59868
+ */
59869
+ export type PropertyByAbsoluteBindingPath<
59870
+ Type,
59871
+ Path extends string,
59872
+ > = Path extends `/${number}`
59873
+ ? Type extends Array<infer U>
59874
+ ? U
59875
+ : never
59876
+ : Path extends `/${number}${infer Rest}`
59877
+ ? Type extends Array<infer U>
59878
+ ? PropertyByAbsoluteBindingPath<U, Rest>
59879
+ : never
59880
+ : Path extends `/${infer Key}/${number}/${infer Rest}`
59881
+ ? Key extends keyof Type
59882
+ ? FromArrayWithSubPath<Type, Key, Rest>
59883
+ : never
59884
+ : Path extends `/${infer Key}/${number}`
59885
+ ? Key extends keyof Type
59886
+ ? FromArrayElement<Type, Key>
59887
+ : never
59888
+ : Path extends `/${infer Key}/${infer Rest}`
59889
+ ? Key extends keyof Type
59890
+ ? FromNestedProperty<Type, Key, Rest>
59891
+ : never
59892
+ : Path extends `/${infer Key}`
59893
+ ? Key extends keyof Type
59894
+ ? FromTopLevelProperty<Type, Key>
59895
+ : never
59896
+ : never;
59897
+
59898
+ /**
59899
+ * The type of a property in a JSONModel identified by the given relative path and root.
59900
+ * Counterpart to {@link RelativeBindingPath}.
59901
+ * @example
59902
+ * type PersonWrapper = { person: { name: string, id: number } };
59903
+ * type PersonName = PropertyByRelativeBindingPath<PersonWrapper, "/person", "name">;
59904
+ * const name: PersonName = "John"; // ok
59905
+ */
59906
+ export type PropertyByRelativeBindingPath<
59907
+ Type,
59908
+ Root extends string,
59909
+ RelativePath extends string,
59910
+ > = PropertyByAbsoluteBindingPath<Type, `${Root}/${RelativePath}`>;
59911
+
59912
+ /***********************************************************************************************************************
59913
+ * Helper types to split the types above into separate parts
59914
+ * to make it easier to read and understand.
59915
+ /**********************************************************************************************************************/
59916
+
59917
+ /**
59918
+ * Helper type to handle paths that point to an array with a subpath.
59919
+ * @example const path = "/orders/0/items"
59920
+ */
59921
+ type FromArrayWithSubPath<Type, Key extends keyof Type, Rest extends string> =
59922
+ Type[Key] extends Array<infer U>
59923
+ ? PropertyByAbsoluteBindingPath<U, `/${Rest}`>
59924
+ : never;
59925
+
59926
+ /**
59927
+ * Helper type to handle paths that point to an array element.
59928
+ * @example const path = "/orders/0"
59929
+ */
59930
+ type FromArrayElement<Type, Key extends keyof Type> =
59931
+ Type[Key] extends Array<infer U> ? U : never;
59932
+
59933
+ /**
59934
+ * Helper type to handle paths that point to a nested property.
59935
+ * @example const path = "/customer/address/street"
59936
+ */
59937
+ type FromNestedProperty<
59938
+ Type,
59939
+ Key extends keyof Type,
59940
+ Rest extends string,
59941
+ > = PropertyByAbsoluteBindingPath<Type[Key], `/${Rest}`>;
59942
+
59943
+ /**
59944
+ * Helper type to handle paths that point to a top-level property.
59945
+ * @example const path = "/customer"
59946
+ */
59947
+ type FromTopLevelProperty<Type, Key extends keyof Type> = Type[Key];
59948
+
59949
+ /**
59950
+ * Helper type to navigate along a nested path.
59951
+ * Navigates from the root type along the path to determine the sub-type.
59952
+ */
59953
+ type TypeAtPath<
59954
+ Type,
59955
+ Path extends string,
59956
+ > = Path extends `/${infer Key}/${infer Rest}`
59957
+ ? Key extends keyof Type
59958
+ ? TypeAtPath<Type[Key], `/${Rest}`>
59959
+ : never
59960
+ : Path extends `/${infer Key}`
59961
+ ? Key extends keyof Type
59962
+ ? Type[Key]
59963
+ : never
59964
+ : never;
59965
+
59966
+ /**
59967
+ * Helper type to extract the names of the properties of a given type.
59968
+ * Excludes properties that are of the type `Function` or `symbol`.
59969
+ * @example
59970
+ * type Person = { name: string, id: number };
59971
+ * type PersonProperties = PropertiesOf<Person>; // "name" | "id"
59972
+ * let property: PersonProperties = "name"; // ok
59973
+ * property = "firstName"; // error
59974
+ */
59975
+ type PropertiesOf<Type> = {
59976
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
59977
+ [Key in keyof Type]: Type[Key] extends Function
59978
+ ? never
59979
+ : Type[Key] extends symbol
59980
+ ? never
59981
+ : Key;
59982
+ }[keyof Type];
59983
+
59984
+ export {}; // this prevents the non-exported types like PropertiesOf from being visible for applications
59985
+ }
59986
+
59987
+ declare module "sap/ui/model/json/TypedJSONContext" {
59988
+ import Context from "sap/ui/model/Context";
59989
+ import TypedJSONModel from "sap/ui/model/json/TypedJSONModel";
59990
+ import {
59991
+ AbsoluteBindingPath,
59992
+ RelativeBindingPath,
59993
+ PropertyByRelativeBindingPath,
59994
+ } from "sap/ui/model/json/TypedJSONModel";
59995
+
59996
+ /**
59997
+ * TypedJSONContext is a subclass of Context that provides type-safe access to the model data. It is only available when using UI5 with TypeScript.
59998
+ *
59999
+ * @since 1.140.0
60000
+ */
60001
+ export default class TypedJSONContext<
60002
+ Data extends object,
60003
+ Root extends AbsoluteBindingPath<Data>,
60004
+ > extends Context {
60005
+ constructor(oModel: TypedJSONModel<Data>, sPath: Root);
60006
+
60007
+ getModel(): TypedJSONModel<Data>;
60008
+
60009
+ getProperty<P extends RelativeBindingPath<Data, Root>>(
60010
+ sPath: P extends RelativeBindingPath<Data, Root> ? P : never
60011
+ ): PropertyByRelativeBindingPath<Data, Root, P>;
60012
+ }
60013
+ }
60014
+
59685
60015
  declare module "sap/ui/model/json/JSONPropertyBinding" {
59686
60016
  import ClientPropertyBinding from "sap/ui/model/ClientPropertyBinding";
59687
60017
 
@@ -59689,6 +60019,8 @@ declare module "sap/ui/model/json/JSONPropertyBinding" {
59689
60019
 
59690
60020
  import Context from "sap/ui/model/Context";
59691
60021
 
60022
+ import Metadata from "sap/ui/base/Metadata";
60023
+
59692
60024
  /**
59693
60025
  * Property binding implementation for JSON format.
59694
60026
  *
@@ -59722,6 +60054,40 @@ declare module "sap/ui/model/json/JSONPropertyBinding" {
59722
60054
  */
59723
60055
  mParameters?: object
59724
60056
  );
60057
+
60058
+ /**
60059
+ * Creates a new subclass of class sap.ui.model.json.JSONPropertyBinding with name `sClassName` and enriches
60060
+ * it with the information contained in `oClassInfo`.
60061
+ *
60062
+ * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.model.ClientPropertyBinding.extend}.
60063
+ *
60064
+ * @ui5-protected Do not call from applications (only from related classes in the framework)
60065
+ *
60066
+ * @returns Created class / constructor function
60067
+ */
60068
+ static extend<T extends Record<string, unknown>>(
60069
+ /**
60070
+ * Name of the class being created
60071
+ */
60072
+ sClassName: string,
60073
+ /**
60074
+ * Object literal with information about the class
60075
+ */
60076
+ oClassInfo?: sap.ClassInfo<T, JSONPropertyBinding>,
60077
+ /**
60078
+ * Constructor function for the metadata object; if not given, it defaults to the metadata implementation
60079
+ * used by this class
60080
+ */
60081
+ FNMetaImpl?: Function
60082
+ ): Function;
60083
+ /**
60084
+ * Returns a metadata object for class sap.ui.model.json.JSONPropertyBinding.
60085
+ *
60086
+ * @ui5-protected Do not call from applications (only from related classes in the framework)
60087
+ *
60088
+ * @returns Metadata object describing this class
60089
+ */
60090
+ static getMetadata(): Metadata;
59725
60091
  }
59726
60092
  }
59727
60093
 
@@ -61299,7 +61665,7 @@ declare module "sap/ui/model/Model" {
61299
61665
  async?: boolean;
61300
61666
 
61301
61667
  /**
61302
- * Additional information for the request (if available) **deprecated**
61668
+ * **Deprecated as of version 1.38.0.**, additional information for the request (if available)
61303
61669
  */
61304
61670
  info?: string;
61305
61671
 
@@ -61370,7 +61736,7 @@ declare module "sap/ui/model/Model" {
61370
61736
  async?: boolean;
61371
61737
 
61372
61738
  /**
61373
- * Additional information for the request (if available) **deprecated**
61739
+ * **Deprecated as of version 1.38.0.**, additional information for the request (if available)
61374
61740
  */
61375
61741
  info?: string;
61376
61742
 
@@ -62662,12 +63028,13 @@ declare module "sap/ui/model/odata/ODataMetadata" {
62662
63028
  */
62663
63029
  async?: boolean;
62664
63030
  /**
62665
- * **Deprecated** for security reasons. Use strong server side authentication instead. UserID for the service.
63031
+ * **Deprecated as of version 1.75.0** for security reasons. Use strong server side authentication instead.
63032
+ * UserID for the service.
62666
63033
  */
62667
63034
  user?: string;
62668
63035
  /**
62669
- * **Deprecated** for security reasons. Use strong server side authentication instead. Password for the
62670
- * service.
63036
+ * **Deprecated as of version 1.75.0** for security reasons. Use strong server side authentication instead.
63037
+ * Password for the service.
62671
63038
  */
62672
63039
  password?: string;
62673
63040
  /**
@@ -69345,6 +69712,10 @@ declare module "sap/ui/model/odata/v2/ODataAnnotations" {
69345
69712
  * A valid cache key
69346
69713
  */
69347
69714
  cacheKey?: string;
69715
+ /**
69716
+ * If set to `true`, the user credentials are included in a cross-origin request
69717
+ */
69718
+ withCredentials?: boolean;
69348
69719
  }
69349
69720
  );
69350
69721
  /**
@@ -69991,8 +70362,8 @@ declare module "sap/ui/model/odata/v2/ODataContextBinding" {
69991
70362
  */
69992
70363
  usePreliminaryContext?: boolean;
69993
70364
  /**
69994
- * **Deprecated**, use `groupId` instead. Sets the batch group id to be used for requests originating from
69995
- * the binding.
70365
+ * **Deprecated as of version 1.31.0**, use `groupId` instead. Sets the batch group id to be used for requests
70366
+ * originating from the binding.
69996
70367
  */
69997
70368
  batchGroupId?: string;
69998
70369
  }
@@ -70169,8 +70540,8 @@ declare module "sap/ui/model/odata/v2/ODataListBinding" {
70169
70540
  */
70170
70541
  usePreliminaryContext?: boolean;
70171
70542
  /**
70172
- * **Deprecated**, use `groupId` instead. Sets the batch group id to be used for requests originating from
70173
- * the binding.
70543
+ * **Deprecated as of version 1.31.0**, use `groupId` instead. Sets the batch group id to be used for requests
70544
+ * originating from the binding.
70174
70545
  */
70175
70546
  batchGroupId?: string;
70176
70547
  /**
@@ -71630,8 +72001,8 @@ declare module "sap/ui/model/odata/v4/Context" {
71630
72001
  /**
71631
72002
  * Returns the value for the given path relative to this context. The function allows access to the complete
71632
72003
  * data the context points to (if `sPath` is "") or any part thereof. The data is a JSON structure as described
71633
- * in "OData
71634
- * JSON Format Version 4.0". Note that the function clones the result. Modify values via {@link sap.ui.model.odata.v4.ODataPropertyBinding#setValue}.
72004
+ * in "OData JSON Format Version 4.0".
72005
+ * Note that the function clones the result. Modify values via {@link sap.ui.model.odata.v4.ODataPropertyBinding#setValue}.
71635
72006
  *
71636
72007
  * Returns `undefined` if the data is not (yet) available; no request is initiated. Use {@link #requestObject }
71637
72008
  * for asynchronous access.
@@ -71919,7 +72290,8 @@ declare module "sap/ui/model/odata/v4/Context" {
71919
72290
  /**
71920
72291
  * Returns a promise on the value for the given path relative to this context. The function allows access
71921
72292
  * to the complete data the context points to (if `sPath` is "") or any part thereof. The data is a JSON
71922
- * structure as described in "OData JSON Format Version 4.0". Note that the function clones the result. Modify values via {@link #setProperty}.
72293
+ * structure as described in "OData
72294
+ * JSON Format Version 4.0". Note that the function clones the result. Modify values via {@link #setProperty}.
71923
72295
  *
71924
72296
  * The header context of a list binding only delivers `$count` and `@$ui5.context.isSelected` (wrapped in
71925
72297
  * an object if `sPath` is "").
@@ -72694,7 +73066,8 @@ declare module "sap/ui/model/odata/v4/ODataContextBinding" {
72694
73066
  /**
72695
73067
  * Returns a promise on the value for the given path relative to this binding. The function allows access
72696
73068
  * to the complete data the binding points to (if `sPath` is "") or any part thereof. The data is a JSON
72697
- * structure as described in "OData JSON Format Version 4.0". Note that the function clones the result. Modify values via {@link sap.ui.model.odata.v4.Context#setProperty}.
73069
+ * structure as described in "OData
73070
+ * JSON Format Version 4.0". Note that the function clones the result. Modify values via {@link sap.ui.model.odata.v4.Context#setProperty}.
72698
73071
  *
72699
73072
  * If you want {@link #requestObject} to read fresh data, call `oBinding.refresh()` first.
72700
73073
  * See:
@@ -73864,7 +74237,8 @@ declare module "sap/ui/model/odata/v4/ODataListBinding" {
73864
74237
  */
73865
74238
  resume(): void;
73866
74239
  /**
73867
- * Sets a new data aggregation object and derives the system query option `$apply` implicitly from it.
74240
+ * Sets a new data aggregation object and derives the system query option `$apply` implicitly from it. If
74241
+ * the aggregation is unchanged, nothing happens.
73868
74242
  * See:
73869
74243
  * #getAggregation
73870
74244
  *
@@ -73908,7 +74282,9 @@ declare module "sap/ui/model/odata/v4/ODataListBinding" {
73908
74282
  * The number (as a positive integer) of different levels initially available without calling {@link sap.ui.model.odata.v4.Context#expand }
73909
74283
  * (since 1.117.0), supported only if a `hierarchyQualifier` is given. Root nodes are on the first level.
73910
74284
  * By default, only root nodes are available; they are not yet expanded. Since 1.120.0, `expandTo >= Number.MAX_SAFE_INTEGER`
73911
- * can be used to expand all levels (`1E16` is recommended inside XML views for simplicity).
74285
+ * can be used to expand all levels (`1E16` is recommended inside XML views for simplicity). Since 1.139.0,
74286
+ * {@link #getAggregation} returns `expandTo : Number.MAX_SAFE_INTEGER` instead of values greater than this.
74287
+ * These differences do not count as changes.
73912
74288
  */
73913
74289
  expandTo?: number;
73914
74290
  /**
@@ -74867,6 +75243,10 @@ declare module "sap/ui/model/odata/v4/ODataMetaModel" {
74867
75243
  * way, "/acme.DefaultContainer/EMPLOYEES" addresses the "EMPLOYEES" child of the schema child named "acme.DefaultContainer".
74868
75244
  * This also works indirectly ("/$EntityContainer/EMPLOYEES") and implicitly ("/EMPLOYEES", see below).
74869
75245
  *
75246
+ * Since 1.140.0, the special name "$count" can be used as the last segment instead of an OData simple identifier.
75247
+ * For an entity set or a collection-valued (structural or navigation) property, it is treated as a property
75248
+ * of type "Edm.Int64". Otherwise, it is invalid.
75249
+ *
74870
75250
  * A segment which represents an OData simple identifier (or the special names "$ReturnType", since 1.71.0,
74871
75251
  * or "$Parameter", since 1.73.0) needs special preparations. The same applies to the empty segment after
74872
75252
  * a trailing slash. If the current object has a "$Action", "$Function" or "$Type" property, it
@@ -79665,8 +80045,14 @@ declare module "sap/ui/model/type/Unit" {
79665
80045
  */
79666
80046
  oFormatOptions?: {
79667
80047
  /**
79668
- * The number of decimals to be used for formatting the number part of the unit; defaults to **3** if none
79669
- * of the format options `maxFractionDigits`, `minFractionDigits` or `decimals` is given
80048
+ * The number of decimals to be used for formatting the numerical value of the unit composite type; if none
80049
+ * of the format options `maxFractionDigits`, `minFractionDigits` or `decimals` are given, the following
80050
+ * defaults apply:
80051
+ * - **0** if the numerical value is of an OData integer type, i.e. {@link sap.ui.model.odata.type.Int }
80052
+ * or {@link sap.ui.model.odata.type.Int64}
80053
+ * - the **scale constraint of the numerical value's type** if this type is {@link sap.ui.model.odata.type.Decimal }
80054
+ * and the scale is not "variable"
80055
+ * - **3** otherwise
79670
80056
  */
79671
80057
  decimals?: object;
79672
80058
  /**