@openui5/ts-types 1.97.1 → 1.99.1

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.
@@ -264,7 +264,7 @@ interface JQuery<TElement = HTMLElement> extends Iterable<TElement> {
264
264
  ): jQuery;
265
265
  }
266
266
 
267
- // For Library Version: 1.97.1
267
+ // For Library Version: 1.99.1
268
268
 
269
269
  declare module "sap/base/assert" {
270
270
  /**
@@ -2001,6 +2001,76 @@ declare module "sap/base/util/Version" {
2001
2001
  }
2002
2002
  }
2003
2003
 
2004
+ declare module "sap/ui/util/XMLHelper" {
2005
+ /**
2006
+ * Error information as provided by the `DOMParser`.
2007
+ *
2008
+ * Note that the set of properties with meaningful content differs between browsers.
2009
+ */
2010
+ export type XMLParseErrorInfo = {
2011
+ errorCode?: int;
2012
+
2013
+ url?: sap.ui.core.URI;
2014
+
2015
+ reason?: string;
2016
+
2017
+ srcText?: string;
2018
+
2019
+ line?: int;
2020
+
2021
+ linepos?: int;
2022
+
2023
+ filepos?: int;
2024
+
2025
+ type?: "error" | "warning";
2026
+ };
2027
+
2028
+ /**
2029
+ * @SINCE 1.58
2030
+ *
2031
+ * Provides functionality for parsing XML formatted strings and serializing XML documents.
2032
+ */
2033
+ interface XMLHelper {
2034
+ /**
2035
+ * Extracts parse error information from the specified document (if any).
2036
+ *
2037
+ * If an error was found, the returned object contains a browser-specific subset of the properties described
2038
+ * in {@link module:sap/base/util/XMLHelper.XMLParseErrorInfo XMLParseErrorInfo}. Otherwise, it just contains
2039
+ * an `errorCode` property with value 0.
2040
+ */
2041
+ getParseError(
2042
+ /**
2043
+ * The parsed XML document
2044
+ */
2045
+ oDocument: XMLDocument
2046
+ ): XMLParseErrorInfo;
2047
+ /**
2048
+ * Parses the specified XML string into an XML document, using the native parsing functionality of the browser.
2049
+ * If an error occurs during parsing, a {@link module:sap/base/util/XMLHelper.XMLParseErrorInfo parse error
2050
+ * info object} is attached as the `parseError` property of the returned document.
2051
+ */
2052
+ parse(
2053
+ /**
2054
+ * An XML string
2055
+ */
2056
+ sXMLText: string
2057
+ ): XMLDocument;
2058
+ /**
2059
+ * Serializes the specified DOM tree into a string representation.
2060
+ * See:
2061
+ * {@link https://developer.mozilla.org/en-US/docs/Web/API/XMLSerializer/serializeToString}
2062
+ */
2063
+ serialize(
2064
+ /**
2065
+ * the XML document object to be serialized as string
2066
+ */
2067
+ oXMLDocument: Node | Attr
2068
+ ): string;
2069
+ }
2070
+ const XMLHelper: XMLHelper;
2071
+ export default XMLHelper;
2072
+ }
2073
+
2004
2074
  declare module "sap/ui/core/ComponentSupport" {
2005
2075
  /**
2006
2076
  * @SINCE 1.58.0
@@ -2325,9 +2395,14 @@ declare module "sap/ui/dom/includeStylesheet" {
2325
2395
  /**
2326
2396
  * @SINCE 1.58
2327
2397
  *
2328
- * Includes the specified stylesheet via a <link>-tag in the head of the current document. If there
2329
- * is call to `includeStylesheet` providing the sId of an already included stylesheet, the existing element
2330
- * will be replaced.
2398
+ * Includes the specified stylesheet via a <link>-tag in the head of the current document.
2399
+ *
2400
+ * If `includeStylesheet` is called with an `sId` of an already included stylesheet and:
2401
+ * - either `fnLoadCallback` or `fnErrorCallback` is given: the old stylesheet is deleted and a new one
2402
+ * is inserted
2403
+ * - `vUrl` is different from the existing one's: the old stylesheet is deleted and a new one is inserted
2404
+ *
2405
+ * - otherwise: no action
2331
2406
  */
2332
2407
  export default function includeStylesheet(
2333
2408
  /**
@@ -3267,6 +3342,49 @@ declare module "sap/ui/test/opaQunit" {
3267
3342
  */
3268
3343
  async?: boolean
3269
3344
  ): void;
3345
+ /**
3346
+ * QUnit test adapter for OPA: add a test to be executed by QUnit Has the same signature as QUnit.test (QUnit
3347
+ * version is also considered) Suggested usage:
3348
+ * ```javascript
3349
+ *
3350
+ * sap.ui.require(["sap/ui/test/Opa5", "sap/ui/test/opaQunit"], function (Opa5, opaTest) {
3351
+ *
3352
+ * Opa5.extendConfig({
3353
+ * assertions: new Opa5({
3354
+ * checkIfSomethingIsOk : function () {
3355
+ * this.waitFor({
3356
+ * success: function () {
3357
+ * Opa5.assert.ok(true, "Everything is fine");
3358
+ * }
3359
+ * });
3360
+ * }
3361
+ * })
3362
+ * });
3363
+ *
3364
+ * opaTest("Should test something", function (Given, When, Then) {
3365
+ * // Implementation of the test
3366
+ * Then.checkIfSomethingIsOk();
3367
+ * });
3368
+ *
3369
+ * });
3370
+ * ```
3371
+ */
3372
+ export default function opaQunit(
3373
+ /**
3374
+ * name of the QUnit test.
3375
+ */
3376
+ testName: string,
3377
+ /**
3378
+ * the test function. Expects 3 arguments, in order: {@link sap.ui.test.Opa.config}.arrangements, {@link
3379
+ * sap.ui.test.Opa.config}.actions, {@link sap.ui.test.Opa.config}.assertions. These arguments will be prefilled
3380
+ * by OPA
3381
+ */
3382
+ callback: Function,
3383
+ /**
3384
+ * available only in QUnit v1.x. Indicates whether the test is asynchronous. False by default.
3385
+ */
3386
+ async?: boolean
3387
+ ): void;
3270
3388
  }
3271
3389
 
3272
3390
  declare module "sap/ui/util/Mobile" {
@@ -3527,51 +3645,6 @@ declare module "sap/ui/util/Storage" {
3527
3645
  }
3528
3646
  }
3529
3647
 
3530
- declare module "sap/ui/util/XMLHelper" {
3531
- /**
3532
- * @SINCE 1.58
3533
- *
3534
- * Provides functionality for parsing XML formatted strings and serializing XML documents.
3535
- */
3536
- interface XMLHelper {
3537
- /**
3538
- * Extracts parse error information from the specified document (if any).
3539
- *
3540
- * If an error was found the returned object has the following error information parameters: errorCode,
3541
- * url, reason, srcText, line, linepos, filepos
3542
- */
3543
- getParseError(
3544
- /**
3545
- * the parsed XML document
3546
- */
3547
- oDocument: string
3548
- ): object;
3549
- /**
3550
- * Parses the specified XML formatted string text using native parsing function of the browser and returns
3551
- * a valid XML document. If an error occurred during parsing a parse error xobject is returned as property
3552
- * (parseError) of the returned XML document object. The parse error object has the following error information
3553
- * parameters: errorCode, url, reason, srcText, line, linepos, filepos
3554
- */
3555
- parse(
3556
- /**
3557
- * the XML data as string
3558
- */
3559
- sXMLText: string
3560
- ): object;
3561
- /**
3562
- * Serializes the specified XML document into a string representation.
3563
- */
3564
- serialize(
3565
- /**
3566
- * the XML document object to be serialized as string
3567
- */
3568
- oXMLDocument: string
3569
- ): object;
3570
- }
3571
- const XMLHelper: XMLHelper;
3572
- export default XMLHelper;
3573
- }
3574
-
3575
3648
  declare module "sap/ui/VersionInfo" {
3576
3649
  /**
3577
3650
  * @SINCE 1.56.0
@@ -3580,24 +3653,25 @@ declare module "sap/ui/VersionInfo" {
3580
3653
  /**
3581
3654
  * @SINCE 1.56.0
3582
3655
  *
3583
- * Loads the version info file (resources/sap-ui-version.json) asynchronously and returns a Promise. The
3584
- * returned Promise resolves with the version info files content.
3656
+ * Loads the version info asynchronously from resource "sap-ui-version.json".
3585
3657
  *
3586
- * If a library name is specified then the version info of the individual library will be retrieved.
3658
+ * By default, the returned promise will resolve with the whole version info file's content. If a library
3659
+ * name is specified in the options, then the promise will resolve with the version info for that library
3660
+ * only or with `undefined`, if the named library is not listed in the version info file.
3587
3661
  *
3588
- * In case of the version info file is not available an error will occur when calling this function.
3662
+ * If loading the version info file fails, the promise will be rejected with the corresponding error.
3589
3663
  */
3590
3664
  load(
3591
3665
  /**
3592
- * an object map (see below)
3666
+ * Map of options
3593
3667
  */
3594
- mOptions: {
3668
+ mOptions?: {
3595
3669
  /**
3596
- * name of the library (e.g. "sap.ui.core")
3670
+ * Name of a library (e.g. "sap.ui.core")
3597
3671
  */
3598
- library: string;
3672
+ library?: string;
3599
3673
  }
3600
- ): Promise<any>;
3674
+ ): Promise<object | undefined>;
3601
3675
  }
3602
3676
  const VersionInfo: VersionInfo;
3603
3677
  export default VersionInfo;
@@ -3974,8 +4048,8 @@ declare namespace sap {
3974
4048
  * using `sap.ui.require("something")` are automagically converted into `sap.ui.define` dependencies before
3975
4049
  * executing the factory function.
3976
4050
  *
3977
- * Limitations, Design Considerations:
3978
- * - **Limitation**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4051
+ * Restrictions, Design Considerations:
4052
+ * - **Restriction**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
3979
4053
  * proper execution order for such modules currently is to rely on the order in the dependency array. Obviously,
3980
4054
  * this only works as long as `sap.ui.define` uses synchronous loading. It will be enhanced when asynchronous
3981
4055
  * loading is implemented.
@@ -4223,8 +4297,8 @@ declare namespace sap {
4223
4297
  * using `sap.ui.require("something")` are automagically converted into `sap.ui.define` dependencies before
4224
4298
  * executing the factory function.
4225
4299
  *
4226
- * Limitations, Design Considerations:
4227
- * - **Limitation**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4300
+ * Restrictions, Design Considerations:
4301
+ * - **Restriction**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4228
4302
  * proper execution order for such modules currently is to rely on the order in the dependency array. Obviously,
4229
4303
  * this only works as long as `sap.ui.define` uses synchronous loading. It will be enhanced when asynchronous
4230
4304
  * loading is implemented.
@@ -4466,8 +4540,8 @@ declare namespace sap {
4466
4540
  * using `sap.ui.require("something")` are automagically converted into `sap.ui.define` dependencies before
4467
4541
  * executing the factory function.
4468
4542
  *
4469
- * Limitations, Design Considerations:
4470
- * - **Limitation**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4543
+ * Restrictions, Design Considerations:
4544
+ * - **Restriction**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4471
4545
  * proper execution order for such modules currently is to rely on the order in the dependency array. Obviously,
4472
4546
  * this only works as long as `sap.ui.define` uses synchronous loading. It will be enhanced when asynchronous
4473
4547
  * loading is implemented.
@@ -4710,8 +4784,8 @@ declare namespace sap {
4710
4784
  * using `sap.ui.require("something")` are automagically converted into `sap.ui.define` dependencies before
4711
4785
  * executing the factory function.
4712
4786
  *
4713
- * Limitations, Design Considerations:
4714
- * - **Limitation**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4787
+ * Restrictions, Design Considerations:
4788
+ * - **Restriction**: as dependency management is not supported for Non-UI5 modules, the only way to ensure
4715
4789
  * proper execution order for such modules currently is to rely on the order in the dependency array. Obviously,
4716
4790
  * this only works as long as `sap.ui.define` uses synchronous loading. It will be enhanced when asynchronous
4717
4791
  * loading is implemented.
@@ -5442,7 +5516,7 @@ declare namespace sap {
5442
5516
  fnCallback?: Function,
5443
5517
  /**
5444
5518
  * Callback function to execute if an error was detected while loading the dependencies or executing the
5445
- * factory function. Note that due to browser limitations not all errors will be reported via this callback.
5519
+ * factory function. Note that due to browser restrictions not all errors will be reported via this callback.
5446
5520
  * In general, module loading is designed for the non-error case. Error handling is not complete.
5447
5521
  */
5448
5522
  fnErrback?: Function
@@ -6284,6 +6358,38 @@ declare namespace sap {
6284
6358
  events?: Record<string, Function>;
6285
6359
  };
6286
6360
 
6361
+ /**
6362
+ * Configuration for the binding of a managed object
6363
+ *
6364
+ * `path` is the only mandatory property, all others are optional.
6365
+ */
6366
+ type ObjectBindingInfo = {
6367
+ /**
6368
+ * Path in the model to bind to, either an absolute path or relative to the binding context for the corresponding
6369
+ * model. If the path contains a '>' sign, the string preceding it will override the `model` property,
6370
+ * and the remainder after the '>' sign will be used as binding path
6371
+ */
6372
+ path: string;
6373
+ /**
6374
+ * Name of the model to bind against; when `undefined` or omitted, the default model is used
6375
+ */
6376
+ model?: string;
6377
+ /**
6378
+ * Whether the binding is initially suspended
6379
+ */
6380
+ suspended?: boolean;
6381
+ /**
6382
+ * Map of additional parameters for this binding; the names and value ranges of the supported parameters
6383
+ * depend on the model implementation and should be documented with the `bindContext` method of the corresponding
6384
+ * model class or with the model-specific subclass of `sap.ui.model.ContextBinding`
6385
+ */
6386
+ parameters?: object;
6387
+ /**
6388
+ * Map of event handler functions keyed by the name of the binding events that they are attached to
6389
+ */
6390
+ events?: Record<string, Function>;
6391
+ };
6392
+
6287
6393
  /**
6288
6394
  * Configuration for the binding of a managed property.
6289
6395
  *
@@ -7439,15 +7545,14 @@ declare namespace sap {
7439
7545
  * - `byValue: boolean` (either can be omitted or set to the boolean value `true`) If set to `true`,
7440
7546
  * the property value will be {@link module:sap/base/util/deepClone deep cloned} on write and read operations
7441
7547
  * to ensure that the internal value can't be modified by the outside. The property `byValue` is currently
7442
- * limited to a `boolean` value. Other types are reserved for future use. Class definitions must only use
7443
- * boolean values for the flag (or omit it), but readers of ManagedObject metadata should handle any truthy
7444
- * value as `true` to be future safe. Note that using `byValue:true` has a performance impact on property
7445
- * access and therefore should be used carefully. It also doesn't make sense to set this option for properties
7446
- * with a primitive type (they have value semantic anyhow) or for properties with arrays of primitive types
7447
- * (they have been cloned already in the past with a cheaper implementation). Future versions of UI5 might
7448
- * encourage this as a limitation during class definition. `group:string` a semantic grouping
7449
- * of the properties, intended to be used in design time tools. Allowed values are (case sensitive): Accessibility,
7450
- * Appearance, Behavior, Data, Designtime, Dimension, Identification, Misc
7548
+ * restricted to a `boolean` value. Other types are reserved for future use. Class definitions must only
7549
+ * use boolean values for the flag (or omit it), but readers of ManagedObject metadata should handle any
7550
+ * truthy value as `true` to be future safe. Note that using `byValue:true` has a performance impact on
7551
+ * property access and therefore should be used carefully. It also doesn't make sense to set this option
7552
+ * for properties with a primitive type (they have value semantic anyhow) or for properties with arrays
7553
+ * of primitive types (they are already cloned with a less expensive implementation). `group:string`
7554
+ * a semantic grouping of the properties, intended to be used in design time tools. Allowed values are (case
7555
+ * sensitive): Accessibility, Appearance, Behavior, Data, Designtime, Dimension, Identification, Misc
7451
7556
  * - `defaultValue: any` the default value for the property or null if there is no defaultValue.
7452
7557
  *
7453
7558
  * - `bindable: boolean|string` (either can be omitted or set to the boolean value `true` or the
@@ -8068,34 +8173,9 @@ declare namespace sap {
8068
8173
  */
8069
8174
  bindObject(
8070
8175
  /**
8071
- * An object describing the binding
8176
+ * Binding info
8072
8177
  */
8073
- oBindingInfo: {
8074
- /**
8075
- * Path in the model to bind to, either an absolute path or relative to the binding context for the corresponding
8076
- * model; when the path contains a '>' sign, the string preceding it will override the `model` property
8077
- * and the remainder after the '>' will be used as binding path
8078
- */
8079
- path: string;
8080
- /**
8081
- * Name of the model to bind against; when `undefined` or omitted, the default model is used
8082
- */
8083
- model?: string;
8084
- /**
8085
- * Map of additional parameters for this binding; the names and value ranges of the supported parameters
8086
- * depend on the model implementation, they should be documented with the `bindContext` method of the corresponding
8087
- * model class or with the model specific subclass of `sap.ui.model.ContextBinding`
8088
- */
8089
- parameters?: object;
8090
- /**
8091
- * Whether the binding should be suspended initially
8092
- */
8093
- suspended?: boolean;
8094
- /**
8095
- * Map of event handler functions keyed by the name of the binding events that they should be attached to
8096
- */
8097
- events?: object;
8098
- }
8178
+ oBindingInfo: sap.ui.base.ManagedObject.ObjectBindingInfo
8099
8179
  ): this;
8100
8180
  /**
8101
8181
  * Binds a property to the model.
@@ -8918,11 +8998,7 @@ declare namespace sap {
8918
8998
  /**
8919
8999
  * name of the aggregation to refresh
8920
9000
  */
8921
- sName: string,
8922
- /**
8923
- * the change reason
8924
- */
8925
- sChangeReason: sap.ui.model.ChangeReason
9001
+ sName: string
8926
9002
  ): void;
8927
9003
  /**
8928
9004
  * Removes an object from the aggregation named `sAggregationName` with cardinality 0..n.
@@ -10604,18 +10680,18 @@ declare namespace sap {
10604
10680
  /**
10605
10681
  * Horizontal position of the scrollbar
10606
10682
  */
10607
- iHorizontalPosition: int,
10683
+ x: int,
10608
10684
  /**
10609
10685
  * Vertical position of the scrollbar
10610
10686
  */
10611
- iVerticalPosition: int,
10687
+ y: int,
10612
10688
  /**
10613
10689
  * The duration of animated scrolling in milliseconds. To scroll immediately without animation, give 0 as
10614
10690
  * value.
10615
10691
  */
10616
- iTime: int,
10692
+ time: int,
10617
10693
 
10618
- fnCallback: Function
10694
+ fnScrollEndCallback: Function
10619
10695
  ): this;
10620
10696
  /**
10621
10697
  * Scrolls to a specific position in scroll container.
@@ -10624,13 +10700,13 @@ declare namespace sap {
10624
10700
  /**
10625
10701
  * Horizontal position of the scrollbar
10626
10702
  */
10627
- iHorizontalPosition: int,
10703
+ x: int,
10628
10704
  /**
10629
10705
  * Vertical position of the scrollbar
10630
10706
  */
10631
- iVerticalPosition: int,
10707
+ y: int,
10632
10708
 
10633
- fnCallback: Function
10709
+ fnScrollEndCallback: Function
10634
10710
  ): this;
10635
10711
  /**
10636
10712
  * Scrolls to an element within a container.
@@ -12023,6 +12099,63 @@ declare namespace sap {
12023
12099
  * Format classes
12024
12100
  */
12025
12101
  namespace format {
12102
+ namespace DateFormat {
12103
+ /**
12104
+ * @SINCE 1.99
12105
+ *
12106
+ * Interface for a timezone-specific DateFormat, which is able to format and parse a date based on a given
12107
+ * timezone. The timezone is used to convert the given date, and also for timezone-related pattern symbols.
12108
+ * The timezone is an IANA timezone ID, e.g. "America/New_York".
12109
+ * See:
12110
+ * sap.ui.core.format.DateFormat
12111
+ */
12112
+ interface DateTimeWithTimezone {
12113
+ __implements__sap_ui_core_format_DateFormat_DateTimeWithTimezone: boolean;
12114
+
12115
+ /**
12116
+ * @SINCE 1.99
12117
+ * @EXPERIMENTAL (since 1.99.0)
12118
+ *
12119
+ * Format a date object to a string according to the given timezone and format options.
12120
+ */
12121
+ format(
12122
+ /**
12123
+ * The date to format
12124
+ */
12125
+ oJSDate: Date,
12126
+ /**
12127
+ * The IANA timezone ID in which the date will be calculated and formatted e.g. "America/New_York". If omitted,
12128
+ * the timezone will be taken from {@link sap.ui.core.Configuration#getTimezone}.
12129
+ */
12130
+ sTimezone?: string
12131
+ ): string;
12132
+ /**
12133
+ * @SINCE 1.99
12134
+ * @EXPERIMENTAL (since 1.99.0)
12135
+ *
12136
+ * Parse a string which is formatted according to the given format options to an array containing a date
12137
+ * object and the timezone.
12138
+ */
12139
+ parse(
12140
+ /**
12141
+ * the string containing a formatted date/time value
12142
+ */
12143
+ sValue: string,
12144
+ /**
12145
+ * The IANA timezone ID which should be used to convert the date e.g. "America/New_York". If omitted, the
12146
+ * timezone will be taken from {@link sap.ui.core.Configuration#getTimezone}.
12147
+ */
12148
+ sTimezone?: string,
12149
+ /**
12150
+ * Whether to be strict with regards to the value ranges of date fields, e.g. for a month pattern of `MM`
12151
+ * and a value range of [1-12] `strict` ensures that the value is within the range; if it is larger than
12152
+ * `12` it cannot be parsed and `null` is returned
12153
+ */
12154
+ bStrict?: boolean
12155
+ ): any[];
12156
+ }
12157
+ }
12158
+
12026
12159
  namespace NumberFormat {
12027
12160
  /**
12028
12161
  * Specifies a rounding behavior for numerical operations capable of discarding precision. Each rounding
@@ -12072,6 +12205,9 @@ declare namespace sap {
12072
12205
  * The DateFormat is a static class for formatting and parsing single date and time values or date and time
12073
12206
  * intervals according to a set of format options.
12074
12207
  *
12208
+ * Important: Every Date is converted with the timezone taken from {@link sap.ui.core.Configuration#getTimezone}.
12209
+ * The timezone falls back to the browser's local timezone.
12210
+ *
12075
12211
  * Supported format options are pattern based on Unicode LDML Date Format notation. Please note that only
12076
12212
  * a subset of the LDML date symbols is supported. If no pattern is specified a default pattern according
12077
12213
  * to the locale settings is used.
@@ -12186,9 +12322,8 @@ declare namespace sap {
12186
12322
  */
12187
12323
  strictParsing?: boolean;
12188
12324
  /**
12189
- * if true, the date is formatted relatively to todays date if it is within the given day range, e.g. "today",
12190
- * "yesterday", "in 5 days"@param {boolean} [oFormatOptions.UTC] if true, the date is formatted and parsed
12191
- * as UTC instead of the local timezone
12325
+ * if true, the date is formatted relatively to today's date if it is within the given day range, e.g. "today",
12326
+ * "yesterday", "in 5 days"
12192
12327
  */
12193
12328
  relative?: boolean;
12194
12329
  /**
@@ -12234,6 +12369,77 @@ declare namespace sap {
12234
12369
  */
12235
12370
  oLocale?: sap.ui.core.Locale
12236
12371
  ): sap.ui.core.format.DateFormat;
12372
+ /**
12373
+ * @SINCE 1.99.0
12374
+ *
12375
+ * Get a datetimeWithTimezone instance of the DateFormat, which can be used for formatting.
12376
+ */
12377
+ static getDateTimeWithTimezoneInstance(
12378
+ /**
12379
+ * An object which defines the format options
12380
+ */
12381
+ oFormatOptions?: {
12382
+ /**
12383
+ * A string containing pattern symbols (e.g. "yMMMd" or "Hms") which will be converted into a pattern for
12384
+ * the used locale that matches the wanted symbols best. The symbols must be in canonical order, that is:
12385
+ * Era (G), Year (y/Y), Quarter (q/Q), Month (M/L), Week (w), Day-Of-Week (E/e/c), Day (d), Hour (h/H/k/K/j/J),
12386
+ * Minute (m), Second (s), Timezone (z/Z/v/V/O/X/x) See http://unicode.org/reports/tr35/tr35-dates.html#availableFormats_appendItems
12387
+ */
12388
+ format?: string;
12389
+ /**
12390
+ * a datetime pattern in LDML format. It is not verified whether the pattern represents a full datetime.
12391
+ */
12392
+ pattern?: string;
12393
+ /**
12394
+ * Specifies the display of the timezone:
12395
+ * - "Show": display both datetime and timezone
12396
+ * - "Hide": display only datetime
12397
+ * - "Only": display only timezone It is ignored for formatting when an options pattern or a format
12398
+ * are supplied.
12399
+ */
12400
+ showTimezone?: /* was: sap.ui.core.format.DateFormatTimezoneDisplay */ any;
12401
+ /**
12402
+ * Can be either 'short, 'medium', 'long' or 'full'. For datetime you can also define mixed styles, separated
12403
+ * with a slash, where the first part is the date style and the second part is the time style (e.g. "medium/short").
12404
+ * If no pattern is given, a locale-dependent default datetime pattern of that style from the LocaleData
12405
+ * class is used.
12406
+ */
12407
+ style?: string;
12408
+ /**
12409
+ * Whether to check by parsing if the value is a valid datetime
12410
+ */
12411
+ strictParsing?: boolean;
12412
+ /**
12413
+ * Whether the date is formatted relatively to today's date if it is within the given day range, e.g. "today",
12414
+ * "yesterday", "in 5 days"
12415
+ */
12416
+ relative?: boolean;
12417
+ /**
12418
+ * The day range used for relative formatting. If `oFormatOptions.relativeScale` is set to the default value
12419
+ * 'day', the `relativeRange is by default [-6, 6], which means that only the previous 6 and the following
12420
+ * 6 days are formatted relatively. If oFormatOptions.relativeScale` is set to 'auto', all dates are
12421
+ * formatted relatively.
12422
+ */
12423
+ relativeRange?: int[];
12424
+ /**
12425
+ * If 'auto' is set, a new relative time format is switched on for all Date/Time instances.
12426
+ */
12427
+ relativeScale?: string;
12428
+ /**
12429
+ * The style of the relative format. The valid values are "wide", "short", "narrow"
12430
+ */
12431
+ relativeStyle?: string;
12432
+ /**
12433
+ * The calendar type which is used to format and parse the date. This value is by default either set in
12434
+ * the configuration or calculated based on the current locale.
12435
+ */
12436
+ calendarType?: sap.ui.core.CalendarType;
12437
+ },
12438
+ /**
12439
+ * Locale to ask for locale-specific texts/settings
12440
+ */
12441
+ oLocale?: sap.ui.core.Locale
12442
+ ): sap.ui.core.format.DateFormat.DateTimeWithTimezone;
12237
12443
  /**
12238
12444
  * Get a time instance of the DateFormat, which can be used for formatting.
12239
12445
  */
@@ -12312,6 +12518,9 @@ declare namespace sap {
12312
12518
  ): sap.ui.core.format.DateFormat;
12313
12519
  /**
12314
12520
  * Format a date according to the given format options.
12521
+ *
12522
+ * Uses the timezone from {@link sap.ui.core.Configuration#getTimezone}, which falls back to the browser's
12523
+ * local timezone to convert the given date.
12315
12524
  */
12316
12525
  format(
12317
12526
  /**
@@ -12325,6 +12534,9 @@ declare namespace sap {
12325
12534
  ): string;
12326
12535
  /**
12327
12536
  * Parse a string which is formatted according to the given format options.
12537
+ *
12538
+ * Uses the timezone from {@link sap.ui.core.Configuration#getTimezone}, which falls back to the browser's
12539
+ * local timezone to convert the given date.
12328
12540
  */
12329
12541
  parse(
12330
12542
  /**
@@ -12336,7 +12548,7 @@ declare namespace sap {
12336
12548
  */
12337
12549
  bUTC: boolean,
12338
12550
  /**
12339
- * to use strict value check
12551
+ * whether to use strict value check
12340
12552
  */
12341
12553
  bStrict: boolean
12342
12554
  ): Date | Date[];
@@ -12597,8 +12809,8 @@ declare namespace sap {
12597
12809
  */
12598
12810
  groupingEnabled?: boolean;
12599
12811
  /**
12600
- * defines the used grouping separator, note that the groupingSeparator must always be different than the
12601
- * used decimalSeparator.
12812
+ * defines the character used as grouping separator. Note: `groupingSeparator` must always be different
12813
+ * from `decimalSeparator`.
12602
12814
  */
12603
12815
  groupingSeparator?: string;
12604
12816
  /**
@@ -12611,8 +12823,8 @@ declare namespace sap {
12611
12823
  */
12612
12824
  groupingBaseSize?: int;
12613
12825
  /**
12614
- * defines the used decimal separator, note that the decimalSeparator must always be different than the
12615
- * used groupingSeparator.
12826
+ * defines the character used as decimal separator. Note: `decimalSeparator` must always be different from
12827
+ * `groupingSeparator`.
12616
12828
  */
12617
12829
  decimalSeparator?: string;
12618
12830
  /**
@@ -12767,8 +12979,8 @@ declare namespace sap {
12767
12979
  */
12768
12980
  groupingEnabled?: boolean;
12769
12981
  /**
12770
- * defines the used grouping separator, note that the groupingSeparator must always be different than the
12771
- * used decimalSeparator.
12982
+ * defines the character used as grouping separator. Note: `groupingSeparator` must always be different
12983
+ * from `decimalSeparator`.
12772
12984
  */
12773
12985
  groupingSeparator?: string;
12774
12986
  /**
@@ -12781,8 +12993,8 @@ declare namespace sap {
12781
12993
  */
12782
12994
  groupingBaseSize?: int;
12783
12995
  /**
12784
- * defines the used decimal separator, note that the decimalSeparator must always be different than the
12785
- * used groupingSeparator.
12996
+ * defines the character used as decimal separator. Note: `decimalSeparator` must always be different from
12997
+ * `groupingSeparator`.
12786
12998
  */
12787
12999
  decimalSeparator?: string;
12788
13000
  /**
@@ -12903,8 +13115,8 @@ declare namespace sap {
12903
13115
  */
12904
13116
  groupingEnabled?: boolean;
12905
13117
  /**
12906
- * defines the used grouping separator, note that the groupingSeparator must always be different than the
12907
- * used decimalSeparator.
13118
+ * defines the character used as grouping separator. Note: `groupingSeparator` must always be different
13119
+ * from `decimalSeparator`.
12908
13120
  */
12909
13121
  groupingSeparator?: string;
12910
13122
  /**
@@ -12917,8 +13129,8 @@ declare namespace sap {
12917
13129
  */
12918
13130
  groupingBaseSize?: int;
12919
13131
  /**
12920
- * defines the used decimal separator, note that the decimalSeparator must always be different than the
12921
- * used groupingSeparator.
13132
+ * defines the character used as decimal separator. Note: `decimalSeparator` must always be different from
13133
+ * `groupingSeparator`.
12922
13134
  */
12923
13135
  decimalSeparator?: string;
12924
13136
  /**
@@ -13042,8 +13254,8 @@ declare namespace sap {
13042
13254
  */
13043
13255
  groupingEnabled?: boolean;
13044
13256
  /**
13045
- * defines the used grouping separator, note that the groupingSeparator must always be different than the
13046
- * used decimalSeparator.
13257
+ * defines the character used as grouping separator. Note: `groupingSeparator` must always be different
13258
+ * from `decimalSeparator`.
13047
13259
  */
13048
13260
  groupingSeparator?: string;
13049
13261
  /**
@@ -13056,8 +13268,8 @@ declare namespace sap {
13056
13268
  */
13057
13269
  groupingBaseSize?: int;
13058
13270
  /**
13059
- * defines the used decimal separator, note that the decimalSeparator must always be different than the
13060
- * used groupingSeparator.
13271
+ * defines the character used as decimal separator. Note: `decimalSeparator` must always be different from
13272
+ * `groupingSeparator`.
13061
13273
  */
13062
13274
  decimalSeparator?: string;
13063
13275
  /**
@@ -13182,8 +13394,8 @@ declare namespace sap {
13182
13394
  */
13183
13395
  groupingEnabled?: boolean;
13184
13396
  /**
13185
- * defines the used grouping separator, note that the groupingSeparator must always be different than the
13186
- * used decimalSeparator.
13397
+ * defines the character used as grouping separator. Note: `groupingSeparator` must always be different
13398
+ * from `decimalSeparator`.
13187
13399
  */
13188
13400
  groupingSeparator?: string;
13189
13401
  /**
@@ -13196,8 +13408,8 @@ declare namespace sap {
13196
13408
  */
13197
13409
  groupingBaseSize?: int;
13198
13410
  /**
13199
- * defines the used decimal separator, note that the decimalSeparator must always be different than the
13200
- * used groupingSeparator.
13411
+ * defines the character used as decimal separator. Note: `decimalSeparator` must always be different from
13412
+ * `groupingSeparator`.
13201
13413
  */
13202
13414
  decimalSeparator?: string;
13203
13415
  /**
@@ -14040,6 +14252,8 @@ declare namespace sap {
14040
14252
 
14041
14253
  namespace XMLView {
14042
14254
  /**
14255
+ * @SINCE 1.34
14256
+ *
14043
14257
  * Specifies the available preprocessor types for XMLViews
14044
14258
  * See:
14045
14259
  * sap.ui.core.mvc.XMLView
@@ -14677,6 +14891,8 @@ declare namespace sap {
14677
14891
  static asyncSupport: boolean;
14678
14892
 
14679
14893
  /**
14894
+ * @SINCE 1.56.0
14895
+ *
14680
14896
  * Creates a JSON view of the given configuration.
14681
14897
  */
14682
14898
  static create(
@@ -15146,6 +15362,8 @@ declare namespace sap {
15146
15362
  */
15147
15363
  static getMetadata(): sap.ui.core.ElementMetadata;
15148
15364
  /**
15365
+ * @SINCE 1.30
15366
+ *
15149
15367
  * Register a preprocessor for all views of a specific type.
15150
15368
  *
15151
15369
  * The preprocessor can be registered for several stages of view initialization, which are dependent on
@@ -15816,6 +16034,8 @@ declare namespace sap {
15816
16034
  static asyncSupport: boolean;
15817
16035
 
15818
16036
  /**
16037
+ * @SINCE 1.56.0
16038
+ *
15819
16039
  * Instantiates an XMLView from the given configuration options.
15820
16040
  *
15821
16041
  * If a `viewName` is given, it must be a dot-separated name of an XML view resource (without the mandatory
@@ -15901,6 +16121,8 @@ declare namespace sap {
15901
16121
  */
15902
16122
  static getMetadata(): sap.ui.core.ElementMetadata;
15903
16123
  /**
16124
+ * @SINCE 1.30
16125
+ *
15904
16126
  * Register a preprocessor for all views of a specific type.
15905
16127
  *
15906
16128
  * The preprocessor can be registered for several stages of view initialization, for xml views these are
@@ -15947,6 +16169,8 @@ declare namespace sap {
15947
16169
  mSettings?: object
15948
16170
  ): void;
15949
16171
  /**
16172
+ * @SINCE 1.30
16173
+ *
15950
16174
  * Register a preprocessor for all views of a specific type.
15951
16175
  *
15952
16176
  * The preprocessor can be registered for several stages of view initialization, for xml views these are
@@ -16055,14 +16279,6 @@ declare namespace sap {
16055
16279
  * The theming parameters are immutable and cannot be changed at runtime. Multiple `Parameters.get()`
16056
16280
  * API calls for the same parameter name will always result in the same parameter value.
16057
16281
  *
16058
- * **Important, since 1.93:** When using the `Parameters.get()` API to retrieve theming parameters defined
16059
- * as CSS variables, please be aware that the API can also unknowingly retrieve arbitrary CSS variables
16060
- * defined in the DOM. All CSS variables defined via the `:root` pseudo-class can be retrieved this way.
16061
- * Please make sure to only access theming parameters defined in a UI5 theme/library.
16062
- *
16063
- *
16064
- *
16065
- *
16066
16282
  * The following API variants are available (see also the below examples):
16067
16283
  * - **(deprecated since 1.92)** If no parameter is given a key-value map containing all parameters is
16068
16284
  * returned
@@ -16512,7 +16728,7 @@ declare namespace sap {
16512
16728
  /**
16513
16729
  * must be one of decimal, group, plusSign, minusSign.
16514
16730
  */
16515
- sStyle: string,
16731
+ sType: string,
16516
16732
  /**
16517
16733
  * will be used to represent the given symbol type
16518
16734
  */
@@ -17185,7 +17401,7 @@ declare namespace sap {
17185
17401
 
17186
17402
  class Route extends sap.ui.base.EventProvider {
17187
17403
  /**
17188
- * Instantiates an SAPUI5 Route
17404
+ * Instantiates a route
17189
17405
  */
17190
17406
  constructor(
17191
17407
  /**
@@ -17264,21 +17480,21 @@ declare namespace sap {
17264
17480
  targetParent?: string;
17265
17481
  /**
17266
17482
  * **Deprecated since 1.28, use `target.controlId` instead.**
17267
- * Views will be put into a container Control, this might be a {@link sap.ui.ux3.Shell} control or a {@link
17268
- * sap.m.NavContainer} if working with mobile, or any other container. The id of this control has to be
17269
- * put in here
17483
+ * Views will be put into a container Control, this might be an {@link sap.ui.ux3.Shell} control or an
17484
+ * {@link sap.m.NavContainer} if working with mobile, or any other container. The id of this control has
17485
+ * to be put in here
17270
17486
  */
17271
17487
  targetControl?: string;
17272
17488
  /**
17273
17489
  * **Deprecated since 1.28, use `target.controlAggregation` instead.**
17274
- * The name of an aggregation of the targetControl, that contains views. Eg: a {@link sap.m.NavContainer}
17490
+ * The name of an aggregation of the targetControl, that contains views. Eg: an {@link sap.m.NavContainer}
17275
17491
  * has an aggregation "pages", another Example is the {@link sap.ui.ux3.Shell} it has "content".
17276
17492
  */
17277
17493
  targetAggregation?: string;
17278
17494
  /**
17279
17495
  * **Deprecated since 1.28, use `target.clearControlAggregation` instead.**
17280
17496
  * Defines a boolean that can be passed to specify if the aggregation should be cleared before adding the
17281
- * View to it. When using a {@link sap.ui.ux3.Shell} this should be true. For a {@link sap.m.NavContainer}
17497
+ * View to it. When using an {@link sap.ui.ux3.Shell} this should be true. For an {@link sap.m.NavContainer}
17282
17498
  * it should be false
17283
17499
  */
17284
17500
  clearTarget?: boolean;
@@ -17543,7 +17759,7 @@ declare namespace sap {
17543
17759
 
17544
17760
  class Router extends sap.ui.base.EventProvider {
17545
17761
  /**
17546
- * Instantiates a SAPUI5 Router
17762
+ * Instantiates a router
17547
17763
  */
17548
17764
  constructor(
17549
17765
  /**
@@ -17681,7 +17897,8 @@ declare namespace sap {
17681
17897
  * {
17682
17898
  * //same name as in the config.bypassed.target
17683
17899
  * notFound: {
17684
- * viewName: "notFound",
17900
+ * type: "View"
17901
+ * name: "notFound",
17685
17902
  * ...
17686
17903
  * // more properties to place the view in the correct container
17687
17904
  * }
@@ -18753,8 +18970,8 @@ declare namespace sap {
18753
18970
  */
18754
18971
  constructor(oOptions: {
18755
18972
  /**
18756
- * the views instance will create the views of all the targets defined, so if 2 targets have the same viewName,
18757
- * the same instance of the view will be displayed.
18973
+ * the views instance will create the instances of all the targets defined, so if 2 targets have the same
18974
+ * `type` and `name` set, the same instance of the target will be displayed.
18758
18975
  */
18759
18976
  views: sap.ui.core.routing.Views;
18760
18977
  /**
@@ -18892,8 +19109,8 @@ declare namespace sap {
18892
19109
  /**
18893
19110
  * Defines the name of the View or Component that will be created. For type 'Component', use option 'usage'
18894
19111
  * instead if an owner component exists. To place the view or component into a Control, use the options
18895
- * 'controlAggregation' and 'controlId'. Instance of View or Component will only be created once per 'name'
18896
- * or 'usage' combined with 'id'.
19112
+ * `controlAggregation` and `controlId`. Instance of View or Component will only be created once per `name`
19113
+ * or `usage` combined with `id`.
18897
19114
  * ```javascript
18898
19115
  *
18899
19116
  *
@@ -18928,21 +19145,22 @@ declare namespace sap {
18928
19145
  *
18929
19146
  * {
18930
19147
  * targets: {
18931
- * // If display("masterWelcome") is called, the master viewName will be placed in the 'MasterPages' of a control with the id splitContainter
19148
+ * // If display("masterWelcome") is called, the view with name "Welcome" will be placed in the 'MasterPages' of a control with the id splitContainter
18932
19149
  * masterWelcome: {
18933
19150
  * type: "View",
18934
19151
  * name: "Welcome",
18935
- * controlId: "splitContainer",
18936
- * controlAggregation: "masterPages",
18937
19152
  * id: "masterWelcome",
19153
+ * controlId: "splitContainer",
19154
+ * controlAggregation: "masterPages"
18938
19155
  * },
18939
- * // If display("detailWelcome") is called after the masterWelcome, a second instance with an own controller instance will be added in the detail pages.
19156
+ * // If display("detailWelcome") is called after the "masterWelcome" target, a second instance of the same view with its own controller instance will be added in the detail pages.
18940
19157
  * detailWelcome: {
18941
19158
  * type: "View",
18942
- * name: "WelcomeWithAlias",
19159
+ * name: "Welcome",
19160
+ * // another instance will be created because a different id is used
19161
+ * id: "detailWelcome",
18943
19162
  * controlId: "splitContainer",
18944
- * controlAggregation: "detailPages",
18945
- * id: "detailWelcome"
19163
+ * controlAggregation: "detailPages"
18946
19164
  * }
18947
19165
  * }
18948
19166
  * }
@@ -18962,8 +19180,9 @@ declare namespace sap {
18962
19180
  */
18963
19181
  viewType?: string;
18964
19182
  /**
18965
- * A prefix that will be prepended in front of the name.
18966
- * **Example:** name is set to "myView" and path is set to "myApp" - the created view name will be "myApp.myView".
19183
+ * A prefix that will be prepended in front of the `name`.
19184
+ * **Example:** `name` is set to "myView" and `path` is set to "myApp" - the created view's name will be
19185
+ * "myApp.myView".
18967
19186
  */
18968
19187
  path?: string;
18969
19188
  /**
@@ -21059,6 +21278,153 @@ declare namespace sap {
21059
21278
 
21060
21279
  namespace util {
21061
21280
  namespace MockServer {
21281
+ /**
21282
+ * Methods that can be used to respond to a request.
21283
+ */
21284
+ interface Response {
21285
+ __implements__sap_ui_core_util_MockServer_Response: boolean;
21286
+
21287
+ /**
21288
+ * Responds to the incoming request with the given `iStatusCode`, `mHeaders` and `sBody`.
21289
+ */
21290
+ respond(
21291
+ /**
21292
+ * HTTP status code to send with the response
21293
+ */
21294
+ StatusCode?: int,
21295
+ /**
21296
+ * HTTP headers to send with the response
21297
+ */
21298
+ mHeaders?: Record<string, string>,
21299
+ /**
21300
+ * A string that will be sent as response body
21301
+ */
21302
+ sBody?: string
21303
+ ): void;
21304
+ /**
21305
+ * Convenience variant of {@link #respond} which allows to send the content of an external resource as response.
21306
+ *
21307
+ * This method first synchronously fetches the given `sFileUrl`. Depending on the extension and path of
21308
+ * the `sFileUrl`, it propagates the received response body to {@link #respondJSON}, {@link #respondXML}
21309
+ * or {@link #respond}, using the given `iStatus` and `mHeaders`.
21310
+ *
21311
+ * The status code and headers of the received response are ignored. In particular, the `Content-Type` header
21312
+ * is not used for the mock server's response.
21313
+ */
21314
+ respondFile(
21315
+ /**
21316
+ * HTTP status code to send with the response
21317
+ */
21318
+ iStatusCode: int,
21319
+ /**
21320
+ * HTTP Headers to send with the response
21321
+ */
21322
+ mHeaders: Record<string, string>,
21323
+ /**
21324
+ * URL to get the response body from
21325
+ */
21326
+ sFileUrl: string
21327
+ ): void;
21328
+ /**
21329
+ * Convenience variant of {@link #respond} which allows to send the content of an external resource as response.
21330
+ *
21331
+ * This method first synchronously fetches the given `sFileUrl`. Depending on the extension and path of
21332
+ * the `sFileUrl`, it propagates the received response body to {@link #respondJSON}, {@link #respondXML}
21333
+ * or {@link #respond}, using the given `iStatus` and `mHeaders`.
21334
+ *
21335
+ * The status code and headers of the received response are ignored. In particular, the `Content-Type` header
21336
+ * is not used for the mock server's response.
21337
+ */
21338
+ respondFile(
21339
+ /**
21340
+ * HTTP status code to send with the response
21341
+ */
21342
+ iStatusCode: int,
21343
+ /**
21344
+ * URL to get the response body from
21345
+ */
21346
+ sFileUrl: string
21347
+ ): void;
21348
+ /**
21349
+ * Convenience variant of {@link #respond} which allows to send the content of an external resource as response.
21350
+ *
21351
+ * This method first synchronously fetches the given `sFileUrl`. Depending on the extension and path of
21352
+ * the `sFileUrl`, it propagates the received response body to {@link #respondJSON}, {@link #respondXML}
21353
+ * or {@link #respond}, using the given `iStatus` and `mHeaders`.
21354
+ *
21355
+ * The status code and headers of the received response are ignored. In particular, the `Content-Type` header
21356
+ * is not used for the mock server's response.
21357
+ */
21358
+ respondFile(
21359
+ /**
21360
+ * HTTP Headers to send with the response
21361
+ */
21362
+ mHeaders: Record<string, string>,
21363
+ /**
21364
+ * URL to get the response body from
21365
+ */
21366
+ sFileUrl: string
21367
+ ): void;
21368
+ /**
21369
+ * Convenience variant of {@link #respond} which allows to send the content of an external resource as response.
21370
+ *
21371
+ * This method first synchronously fetches the given `sFileUrl`. Depending on the extension and path of
21372
+ * the `sFileUrl`, it propagates the received response body to {@link #respondJSON}, {@link #respondXML}
21373
+ * or {@link #respond}, using the given `iStatus` and `mHeaders`.
21374
+ *
21375
+ * The status code and headers of the received response are ignored. In particular, the `Content-Type` header
21376
+ * is not used for the mock server's response.
21377
+ */
21378
+ respondFile(
21379
+ /**
21380
+ * URL to get the response body from
21381
+ */
21382
+ sFileUrl: string
21383
+ ): void;
21384
+ /**
21385
+ * Convenience variant of {@link #respond} which simplifies sending a JSON response.
21386
+ *
21387
+ * The response content `vBody` can either be given as a string, which is then assumed to be in JSON format.
21388
+ * Or it can be any JSON-stringifiable value which then will be converted to a string using `JSON.stringify`.
21389
+ * If no `vBody` is given, an empty response will be sent.
21390
+ *
21391
+ * If no `Content-Type` header is given, it will be set to `application/json`.
21392
+ */
21393
+ respondJSON(
21394
+ /**
21395
+ * HTTP status code to send with the response
21396
+ */
21397
+ iStatusCode?: int,
21398
+ /**
21399
+ * HTTP Headers to send with the response
21400
+ */
21401
+ mHeaders?: Record<string, string>,
21402
+ /**
21403
+ * A valid JSON-string or a JSON-stringifiable object that should be sent as response body
21404
+ */
21405
+ vBody?: object | string
21406
+ ): void;
21407
+ /**
21408
+ * Convenience variant of {@link #respond} which simplifies sending an XML response.
21409
+ *
21410
+ * If no `Content-Type` header is given, it will be set to `application/xml`.
21411
+ */
21412
+ respondXML(
21413
+ /**
21414
+ * HTTP status code to send with the response
21415
+ */
21416
+ iStatusCode?: int,
21417
+ /**
21418
+ * HTTP Headers to send with the response
21419
+ */
21420
+ mHeaders?: Record<string, string>,
21421
+ /**
21422
+ * XML string to send as response body
21423
+ */
21424
+ sXmlString?: string
21425
+ ): void;
21426
+ }
21427
+
21062
21428
  /**
21063
21429
  * Enum for the method.
21064
21430
  */
@@ -21075,6 +21441,29 @@ declare namespace sap {
21075
21441
 
21076
21442
  PUT = "PUT",
21077
21443
  }
21444
+
21445
+ type RequestHandler = {
21446
+ /**
21447
+ * Any HTTP verb
21448
+ */
21449
+ method: sap.ui.core.util.MockServer.HTTPMETHOD;
21450
+ /**
21451
+ * A string path is converted to a regular expression, so it can contain normal regular expression syntax.
21452
+ *
21453
+ * All regular expression groups are forwarded as arguments to the `response` function. In addition to this,
21454
+ * parameters can be written in this notation: `:param`. These placeholders will be replaced by regular
21455
+ * expression groups.
21456
+ */
21457
+ path: string | RegExp;
21458
+ /**
21459
+ * A response handler function that will be called when an incoming request matches `method` and `path`.
21460
+ * The first parameter of the handler will be a `Response` object which can be used to respond on the request.
21461
+ */
21462
+ response: (
21463
+ p1: sap.ui.core.util.MockServer.Response,
21464
+ p2: any
21465
+ ) => void;
21466
+ };
21078
21467
  }
21079
21468
 
21080
21469
  namespace XMLPreprocessor {
@@ -21118,9 +21507,6 @@ declare namespace sap {
21118
21507
  * refers to ".../Value". This means, the root formatter can access the ith part of the composite binding
21119
21508
  * at will (since 1.31.0); see also {@link #.getInterface getInterface}. The function `foo` is called with
21120
21509
  * arguments such that ` oInterface.getModel(i).getObject(oInterface.getPath(i)) === arguments[i + 1]` holds.
21121
- * This use is not supported within an expression binding, that is, `<Text text="{= ${parts: [{path:
21122
- * 'Label'}, {path: 'Value'}], formatter: 'foo'} }"/>` does not work as expected because the property `requiresIContext
21123
- * = true` is ignored.
21124
21510
  *
21125
21511
  * To distinguish those two use cases, just check whether `oInterface.getModel() === undefined`, in which
21126
21512
  * case the formatter is called on root level of a composite binding. To find out the number of parts, probe
@@ -22330,9 +22716,9 @@ declare namespace sap {
22330
22716
  */
22331
22717
  attachAfter(
22332
22718
  /**
22333
- * type according to HTTP Method
22719
+ * event type according to HTTP Method
22334
22720
  */
22335
- event: string,
22721
+ sHttpMethod: string,
22336
22722
  /**
22337
22723
  * the name of the function that will be called at this exit The callback function exposes an event with
22338
22724
  * parameters, depending on the type of the request. oEvent.getParameters() lists the parameters as per
@@ -22351,9 +22737,9 @@ declare namespace sap {
22351
22737
  */
22352
22738
  attachBefore(
22353
22739
  /**
22354
- * type according to HTTP Method
22740
+ * event type according to HTTP Method
22355
22741
  */
22356
- event: string,
22742
+ sHttpMethod: string,
22357
22743
  /**
22358
22744
  * the name of the function that will be called at this exit. The callback function exposes an event with
22359
22745
  * parameters, depending on the type of the request. oEvent.getParameters() lists the parameters as per
@@ -22386,9 +22772,9 @@ declare namespace sap {
22386
22772
  */
22387
22773
  detachAfter(
22388
22774
  /**
22389
- * type according to HTTP Method
22775
+ * event type according to HTTP Method
22390
22776
  */
22391
- event: string,
22777
+ sHttpMethod: string,
22392
22778
  /**
22393
22779
  * the name of the function that will be called at this exit
22394
22780
  */
@@ -22403,9 +22789,9 @@ declare namespace sap {
22403
22789
  */
22404
22790
  detachBefore(
22405
22791
  /**
22406
- * type according to HTTP Method
22792
+ * event type according to HTTP Method
22407
22793
  */
22408
- event: string,
22794
+ sHttpMethod: string,
22409
22795
  /**
22410
22796
  * the name of the function that will be called at this exit
22411
22797
  */
@@ -22436,7 +22822,7 @@ declare namespace sap {
22436
22822
  *
22437
22823
  * Default value is `[]`
22438
22824
  */
22439
- getRequests(): object[];
22825
+ getRequests(): sap.ui.core.util.MockServer.RequestHandler[];
22440
22826
  /**
22441
22827
  * Getter for property `rootUri`. Has to be relative and requires a trailing '/'. It also needs to match
22442
22828
  * the URI set in OData/JSON models or simple XHR calls in order for the mock server to intercept them.
@@ -22474,34 +22860,14 @@ declare namespace sap {
22474
22860
  /**
22475
22861
  * Setter for property `requests`.
22476
22862
  *
22477
- * Default value is is `[]`
22478
- *
22479
- * Each array entry should consist of an object with the following properties / values:
22480
- *
22481
- *
22482
- * - **method : "GET"|"POST"|"DELETE|"PUT"**
22483
- * (any HTTP verb)
22484
- * - **path : "/path/to/resource"**
22485
- * The path is converted to a regular expression, so it can contain normal regular expression syntax. All
22486
- * regular expression groups are forwarded as arguments to the `response` function. In addition to this,
22487
- * parameters can be written in this notation: `:param`. These placeholder will be replaced by regular expression
22488
- * groups.
22489
- * - **response : function(xhr, param1, param2, ...) { }**
22490
- * The xhr object can be used to respond on the request. Supported methods are:
22491
- * `xhr.respond(iStatusCode, mHeaders, sBody)`
22492
- * `xhr.respondJSON(iStatusCode, mHeaders, oJsonObjectOrString)`. By default a JSON header is set for response
22493
- * header
22494
- * `xhr.respondXML(iStatusCode, mHeaders, sXmlString)`. By default an XML header is set for response header
22495
- *
22496
- * `xhr.respondFile(iStatusCode, mHeaders, sFileUrl)`. By default the mime type of the file is set for
22497
- * response header
22863
+ * Default value is `[]`
22498
22864
  */
22499
22865
  setRequests(
22500
22866
  /**
22501
- * new value for property `requests`
22867
+ * new value for the `requests` property
22502
22868
  */
22503
- requests: object[]
22504
- ): void;
22869
+ requests: sap.ui.core.util.MockServer.RequestHandler[]
22870
+ ): this;
22505
22871
  /**
22506
22872
  * Setter for property `rootUri`. All request path URI are prefixed with this root URI if set.
22507
22873
  *
@@ -23027,7 +23393,7 @@ declare namespace sap {
23027
23393
  * Marker interface for subclasses of `sap.ui.core.UIComponent`.
23028
23394
  *
23029
23395
  * Implementing this interface allows a {@link sap.ui.core.UIComponent} to be created fully asynchronously.
23030
- * This interface will implicitily set the component's rootView and router configuration to async. Nested
23396
+ * This interface will implicitly set the component's rootView and router configuration to async. Nested
23031
23397
  * views will also be handled asynchronously. Additionally the error handling during the processing of views
23032
23398
  * is stricter and will fail if a view definition contains errors, e.g. broken binding strings.
23033
23399
  *
@@ -23047,6 +23413,38 @@ declare namespace sap {
23047
23413
  __implements__sap_ui_core_IAsyncContentCreation: boolean;
23048
23414
  }
23049
23415
 
23416
+ /**
23417
+ * @SINCE 1.98.0
23418
+ * @EXPERIMENTAL (since 1.98)
23419
+ *
23420
+ * Marker interface for controls that can serve as a menu for a table column header.
23421
+ *
23422
+ * Implementation of this interface implements the `openBy` and `getAriaHasPopupType` methods.
23423
+ */
23424
+ interface IColumnHeaderMenu {
23425
+ __implements__sap_ui_core_IColumnHeaderMenu: boolean;
23426
+
23427
+ /**
23428
+ * @SINCE 1.98.0
23429
+ * @EXPERIMENTAL (since 1.98)
23430
+ *
23431
+ * Returns the sap.ui.core.aria.HasPopup<\code> type of the menu.
23432
+ */
23433
+ getAriaHasPopupType(): sap.ui.core.aria.HasPopup;
23434
+ /**
23435
+ * @SINCE 1.98.0
23436
+ * @EXPERIMENTAL (since 1.98)
23437
+ *
23438
+ * Opens the menu using the column header.
23439
+ */
23440
+ openBy(
23441
+ /**
23442
+ * Specifies the control where the menu is placed.
23443
+ */
23444
+ oControl: sap.ui.core.Control
23445
+ ): void;
23446
+ }
23447
+
23050
23448
  /**
23051
23449
  * Marker interface for controls that can serve as a context menu.
23052
23450
  *
@@ -27829,8 +28227,7 @@ declare namespace sap {
27829
28227
  /**
27830
28228
  * @SINCE 1.27.0
27831
28229
  *
27832
- * Returns whether the framework automatically adds automatically the ARIA role 'application' to the HTML
27833
- * body or not.
28230
+ * Returns whether the framework automatically adds the ARIA role 'application' to the HTML body or not.
27834
28231
  */
27835
28232
  getAutoAriaBodyRole(): boolean;
27836
28233
  /**
@@ -27878,7 +28275,7 @@ declare namespace sap {
27878
28275
  /**
27879
28276
  * Returns a string that identifies the current language.
27880
28277
  *
27881
- * The value returned by this methods in most cases corresponds to the exact value that has been configured
28278
+ * The value returned by this method in most cases corresponds to the exact value that has been configured
27882
28279
  * by the user or application or that has been determined from the user agent settings. It has not been
27883
28280
  * normalized, but has been validated against a relaxed version of {@link http://www.ietf.org/rfc/bcp/bcp47.txt
27884
28281
  * BCP47}, allowing underscores ('_') instead of the suggested dashes ('-') and not taking the case of letters
@@ -27966,6 +28363,13 @@ declare namespace sap {
27966
28363
  * Returns the theme name
27967
28364
  */
27968
28365
  getTheme(): string;
28366
+ /**
28367
+ * @SINCE 1.99.0
28368
+ * @EXPERIMENTAL (since 1.99.0)
28369
+ *
28370
+ * Retrieves the configured IANA timezone ID
28371
+ */
28372
+ getTimezone(): string;
27969
28373
  /**
27970
28374
  * Prefix to be used for automatically generated control IDs. Default is a double underscore "__".
27971
28375
  */
@@ -28115,8 +28519,8 @@ declare namespace sap {
28115
28519
  /**
28116
28520
  * @SINCE 1.95.0
28117
28521
  *
28118
- * Sets the security token handlers for an OData V4 model. See chapter "Security Token Handling" in {@link
28119
- * topic:9613f1f2d88747cab21896f7216afdac Model Instantiation and Data Access}.
28522
+ * Sets the security token handlers for an OData V4 model. See chapter {@link topic:9613f1f2d88747cab21896f7216afdac/section_STH
28523
+ * Security Token Handling}.
28120
28524
  * See:
28121
28525
  * #getSecurityTokenHandlers
28122
28526
  */
@@ -28126,6 +28530,22 @@ declare namespace sap {
28126
28530
  */
28127
28531
  aSecurityTokenHandlers: Function[]
28128
28532
  ): void;
28533
+ /**
28534
+ * @SINCE 1.99.0
28535
+ * @EXPERIMENTAL (since 1.99.0)
28536
+ *
28537
+ * Sets the timezone such that all date and time based calculations use this timezone.
28538
+ *
28539
+ * When the timezone has changed, the Core will fire its {@link sap.ui.core.Core#event:localizationChanged
28540
+ * localizationChanged} event.
28541
+ */
28542
+ setTimezone(
28543
+ /**
28544
+ * IANA timezone ID, e.g. "America/New_York". Use `null` to reset the timezone to the browser's local timezone.
28545
+ * An invalid IANA timezone ID will fall back to the browser's timezone.
28546
+ */
28547
+ sTimezone?: string | null
28548
+ ): this;
28129
28549
  }
28130
28550
  /**
28131
28551
  * Base Class for Controls.
@@ -28431,24 +28851,6 @@ declare namespace sap {
28431
28851
  */
28432
28852
  vFieldGroupIds?: string | string[]
28433
28853
  ): boolean;
28434
- /**
28435
- * Overrides {@link sap.ui.core.Element#clone Element.clone} to clone additional internal state.
28436
- *
28437
- * The additionally cloned information contains:
28438
- * - browser event handlers attached with {@link #attachBrowserEvent}
28439
- * - text selection behavior
28440
- * - style classes added with {@link #addStyleClass}
28441
- */
28442
- clone(
28443
- /**
28444
- * a suffix to be appended to the cloned element id
28445
- */
28446
- sIdSuffix?: string,
28447
- /**
28448
- * an array of local IDs within the cloned hierarchy (internally used)
28449
- */
28450
- aLocalIds?: string[]
28451
- ): this;
28452
28854
  /**
28453
28855
  * Removes event handlers which have been previously attached using {@link #attachBrowserEvent}.
28454
28856
  *
@@ -29401,30 +29803,11 @@ declare namespace sap {
29401
29803
  /**
29402
29804
  * the binding path or an object with more detailed binding options
29403
29805
  */
29404
- vPath:
29405
- | string
29406
- | {
29407
- /**
29408
- * the binding path
29409
- */
29410
- path: string;
29411
- /**
29412
- * map of additional parameters for this binding
29413
- */
29414
- parameters?: object;
29415
- /**
29416
- * name of the model
29417
- */
29418
- model?: string;
29419
- /**
29420
- * map of event listeners for the binding events
29421
- */
29422
- events?: object;
29423
- },
29806
+ vPath: string | sap.ui.base.ManagedObject.ObjectBindingInfo,
29424
29807
  /**
29425
- * map of additional parameters for this binding (only taken into account when vPath is a string in that
29426
- * case it corresponds to vPath.parameters). The supported parameters are listed in the corresponding model-specific
29427
- * implementation of `sap.ui.model.ContextBinding`.
29808
+ * map of additional parameters for this binding. Only taken into account when `vPath` is a string. In that
29809
+ * case it corresponds to `mParameters` of {@link sap.ui.base.ManagedObject.ObjectBindingInfo}. The supported
29810
+ * parameters are listed in the corresponding model-specific implementation of `sap.ui.model.ContextBinding`.
29428
29811
  */
29429
29812
  mParameters?: object
29430
29813
  ): this;
@@ -29625,6 +30008,10 @@ declare namespace sap {
29625
30008
  * visible before the focus is set
29626
30009
  */
29627
30010
  preventScroll?: boolean;
30011
+ /**
30012
+ * Further control-specific setting of the focus target within the control @since 1.98
30013
+ */
30014
+ targetInfo?: any;
29628
30015
  }
29629
30016
  ): void;
29630
30017
  /**
@@ -32257,7 +32644,7 @@ declare namespace sap {
32257
32644
  iWeekNumber: int
32258
32645
  ): string;
32259
32646
  /**
32260
- * Get combined datetime pattern with given date and and time style.
32647
+ * Get combined datetime pattern with given date and time style.
32261
32648
  */
32262
32649
  getCombinedDateTimePattern(
32263
32650
  /**
@@ -37635,7 +38022,7 @@ declare namespace sap {
37635
38022
  *
37636
38023
  * Noteworthy details:
37637
38024
  * - whitespace is mandatory around a '-' or '+' operator and optional otherwise
37638
- * - parentheses are accepted but not checked for being balanced (a limitation of regexp based checks)
38025
+ * - parentheses are accepted but not checked for being balanced (a restriction of regexp based checks)
37639
38026
  *
37640
38027
  * - semantic constraints like type restrictions are not checked
37641
38028
  *
@@ -37693,7 +38080,7 @@ declare namespace sap {
37693
38080
  *
37694
38081
  * Noteworthy details:
37695
38082
  * - whitespace is mandatory around a '-' or '+' operator and optional otherwise
37696
- * - parentheses are accepted but not checked for being balanced (a limitation of regexp based checks)
38083
+ * - parentheses are accepted but not checked for being balanced (a restriction of regexp based checks)
37697
38084
  *
37698
38085
  * - semantic constraints like type restrictions are not checked
37699
38086
  *
@@ -39564,10 +39951,9 @@ declare namespace sap {
39564
39951
  /**
39565
39952
  * A comma-separated list of property names that need to be selected.
39566
39953
  * If the `select` parameter is given, it has to contain all properties that are contained in the analytical
39567
- * information (see {@link sap.ui.model.analytics.AnalyticalBinding#updateAnalyticalInfo}) and their associated
39568
- * dimensions and measures. It must not contain additional dimensions or measures or associated properties
39569
- * for additional dimensions or measures. But it may contain additional properties like a text property
39570
- * of a dimension that is also selected.
39954
+ * information (see {@link sap.ui.model.analytics.AnalyticalBinding#updateAnalyticalInfo}). It must not
39955
+ * contain additional dimensions or measures or associated properties for additional dimensions or measures.
39956
+ * But it may contain additional properties like a text property of a dimension that is also selected.
39571
39957
  * All properties of the `select` parameter are also considered in {@link sap.ui.model.analytics.AnalyticalBinding#getDownloadUrl}.
39572
39958
  * The `select` parameter must not contain any duplicate entry.
39573
39959
  * If the `select` parameter does not fit to the analytical information or if the `select` parameter contains
@@ -39926,34 +40312,41 @@ declare namespace sap {
39926
40312
  * Updates the binding's structure with new analytical information.
39927
40313
  *
39928
40314
  * Analytical information is the mapping of UI columns to properties in the bound OData entity set. Every
39929
- * column object contains the name of the bound property and in addition:
40315
+ * column object contains the `name` of the bound property and in addition:
39930
40316
  * - A column bound to a dimension property has further boolean properties:
39931
- * grouped: dimension will be used for building groups
39932
- * - visible: if the column is visible, values for the related property will be fetched from the OData
39933
- * service
40317
+ * grouped: dimension is used for building groups
39934
40318
  * - inResult: if the column is not visible, but declared to be part of the result, values for the related
39935
- * property will also be fetched from the OData service
40319
+ * property are also fetched from the OData service
40320
+ * - visible: if the column is visible, values for the related property are fetched from the OData service
40321
+ *
39936
40322
  * - A column bound to a measure property has further boolean properties:
39937
- * total: totals and sub-totals will be provided for the measure at all aggregation levels
40323
+ * inResult: if the column is not visible, but declared to be part of the result, values for the related
40324
+ * property are also fetched from the OData service
40325
+ * - total: totals and sub-totals are provided for the measure at all aggregation levels
40326
+ * - visible: if the column is visible, values for the related property are fetched from the OData service
39938
40327
  *
39939
40328
  * - A column bound to a hierarchy property has further properties:
39940
- * grouped: boolean value; indicates whether the hierarchy will be used for building groups
40329
+ * grouped: boolean value; indicates whether the hierarchy is used for building groups
39941
40330
  * - level: integer value; the hierarchy level is mandatory for at least one of those columns that represent
39942
- * the same hierarchy.
40331
+ * the same hierarchy
39943
40332
  *
39944
40333
  * Invoking this function resets the state of the binding and subsequent data requests such as calls to
39945
- * getNodeContexts() will need to trigger OData requests in order to fetch the data that are in line with
39946
- * this analytical information.
40334
+ * getNodeContexts() trigger OData requests in order to fetch the data that are in line with this analytical
40335
+ * information.
39947
40336
  *
39948
- * Please be aware that a call of this function might lead to additional back-end requests, as well as a
39949
- * control re-rendering later on. Whenever possible use the API of the analytical control, instead of relying
39950
- * on the binding.
40337
+ * Be aware that a call of this function might lead to additional back-end requests, as well as a control
40338
+ * re-rendering later on. Whenever possible use the API of the analytical control, instead of relying on
40339
+ * the binding.
39951
40340
  */
39952
40341
  updateAnalyticalInfo(
39953
40342
  /**
39954
- * an array with objects holding the analytical information for every column, from left to right.
40343
+ * An array with objects holding the analytical information for every column
40344
+ */
40345
+ aColumns: object[],
40346
+ /**
40347
+ * Whether to fire a change event asynchronously even if columns didn't change
39955
40348
  */
39956
- aColumns: any[]
40349
+ bForceChange: boolean
39957
40350
  ): void;
39958
40351
  }
39959
40352
 
@@ -41264,6 +41657,124 @@ declare namespace sap {
41264
41657
  vValue: any
41265
41658
  ): void;
41266
41659
  }
41660
+ /**
41661
+ * @SINCE 1.99.0
41662
+ * @EXPERIMENTAL
41663
+ *
41664
+ * This class represents the `DateTimeWithTimezone` composite type which has the parts timestamp and time
41665
+ * zone. The type formats the timestamp part using the time zone part. For this, the timestamp part has
41666
+ * to be provided in the UTC time zone.
41667
+ */
41668
+ class DateTimeWithTimezone extends sap.ui.model.CompositeType {
41669
+ /**
41670
+ * Constructor for a `DateTimeWithTimezone` composite type.
41671
+ */
41672
+ constructor(
41673
+ /**
41674
+ * Format options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateTimeWithTimezoneInstance
41675
+ * DateFormat}. Format options are immutable, that is, they can only be set once on construction.
41676
+ */
41677
+ oFormatOptions?: object,
41678
+ /**
41679
+ * Constraints are not supported
41680
+ */
41681
+ oConstraints?: object
41682
+ );
41683
+
41684
+ /**
41685
+ * Creates a new subclass of class sap.ui.model.odata.type.DateTimeWithTimezone with name `sClassName` and
41686
+ * enriches it with the information contained in `oClassInfo`.
41687
+ *
41688
+ * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.model.CompositeType.extend}.
41689
+ */
41690
+ static extend<T extends Record<string, unknown>>(
41691
+ /**
41692
+ * Name of the class being created
41693
+ */
41694
+ sClassName: string,
41695
+ /**
41696
+ * Object literal with information about the class
41697
+ */
41698
+ oClassInfo?: sap.ClassInfo<
41699
+ T,
41700
+ sap.ui.model.odata.type.DateTimeWithTimezone
41701
+ >,
41702
+ /**
41703
+ * Constructor function for the metadata object; if not given, it defaults to the metadata implementation
41704
+ * used by this class
41705
+ */
41706
+ FNMetaImpl?: Function
41707
+ ): Function;
41708
+ /**
41709
+ * Returns a metadata object for class sap.ui.model.odata.type.DateTimeWithTimezone.
41710
+ */
41711
+ static getMetadata(): sap.ui.base.Metadata;
41712
+ /**
41713
+ * Formats the given values of the parts of the `DateTimeWithTimezone` composite type to the given target
41714
+ * type.
41715
+ */
41716
+ formatValue(
41717
+ /**
41718
+ * The array of the part values to be formatted; the first entry has to be a `Date` object for the timestamp,
41719
+ * and the second entry has to be a string representing a time zone ID
41720
+ */
41721
+ aValues: any[],
41722
+ /**
41723
+ * The target type, must be "object", "string", or a type with one of these types as its {@link sap.ui.base.DataType#getPrimitiveType
41724
+ * primitive type}; see {@link sap.ui.model.odata.type} for more information
41725
+ */
41726
+ sTargetType: string
41727
+ ): any;
41728
+ /**
41729
+ * Returns the type's name.
41730
+ */
41731
+ getName(): string;
41732
+ /**
41733
+ * Gets an array of indices that determine which parts of this type shall not propagate their model messages
41734
+ * to the attached control. Prerequisite is that the corresponding binding supports this feature, see {@link
41735
+ * sap.ui.model.Binding#supportsIgnoreMessages}. If the `showTimezone` format option is set to `sap.ui.core.format.DateFormatTimezoneDisplay.Hide`
41736
+ * and the time zone is not shown in the control, the part for the time zone shall not propagate model messages
41737
+ * to the control. Analogously, if the format option `showTimezone` is set to `sap.ui.core.format.DateFormatTimezoneDisplay.Only`,
41738
+ * the date and time are not shown in the control and the parts for the date and time shall not propagate
41739
+ * model messages to the control.
41740
+ * See:
41741
+ * sap.ui.model.Binding#supportsIgnoreMessages
41742
+ */
41743
+ getPartsIgnoringMessages(): number[];
41744
+ /**
41745
+ * Parses the given value.
41746
+ */
41747
+ parseValue(
41748
+ /**
41749
+ * The value to be parsed
41750
+ */
41751
+ vValue: string | Date,
41752
+ /**
41753
+ * The source type (the expected type of `vValue`); must be "object", "string", or a type with one of these
41754
+ * types as its {@link sap.ui.base.DataType#getPrimitiveType primitive type}; see {@link sap.ui.model.odata.type}
41755
+ * for more information
41756
+ */
41757
+ sSourceType: string,
41758
+ /**
41759
+ * The array of current part values; the first entry has to be a `Date` object for the timestamp, and the
41760
+ * second entry has to be a string representing a time zone ID; **Note:** This parameter is required, see
41761
+ * definition of this parameter in {@link sap.ui.model.CompositeType#parseValue}
41762
+ */
41763
+ aCurrentValues?: any[]
41764
+ ): any[];
41765
+ /**
41766
+ * Validates whether the given raw values meet the defined constraints. This method does nothing as no constraints
41767
+ * are supported.
41768
+ * See:
41769
+ * sap.ui.model.SimpleType#validateValue
41770
+ */
41771
+ validateValue(
41772
+ /**
41773
+ * The set of values to be validated
41774
+ */
41775
+ aValues: any[]
41776
+ ): void;
41777
+ }
41267
41778
  /**
41268
41779
  * @SINCE 1.27.0
41269
41780
  *
@@ -43022,6 +43533,16 @@ declare namespace sap {
43022
43533
  * and the entity for this context has been stored in the back end, {@link #created} returns `undefined`.
43023
43534
  */
43024
43535
  created(): Promise<any>;
43536
+ /**
43537
+ * @SINCE 1.98.0
43538
+ *
43539
+ * Returns whether this context is inactive. An inactive context will only be sent to the server after the
43540
+ * first property update. From then on it behaves like any other created context.
43541
+ * See:
43542
+ * sap.ui.model.odata.v2.ODataListBinding#create
43543
+ * sap.ui.model.odata.v2.ODataModel#createEntry
43544
+ */
43545
+ isInactive(): boolean;
43025
43546
  /**
43026
43547
  * @SINCE 1.94.0
43027
43548
  *
@@ -43643,8 +44164,8 @@ declare namespace sap {
43643
44164
  */
43644
44165
  countMode?: sap.ui.model.odata.CountMode;
43645
44166
  /**
43646
- * A key used in combination with the resolved path of this binding to identify the entities created this
43647
- * binding's {@link #create} method.
44167
+ * A key used in combination with the resolved path of this binding to identify the entities created by
44168
+ * this binding's {@link #create} method.
43648
44169
  *
43649
44170
  * **Note:** Different controls or control aggregation bindings to the same collection must have different
43650
44171
  * `createdEntitiesKey` values.
@@ -43719,6 +44240,234 @@ declare namespace sap {
43719
44240
  * Returns a metadata object for class sap.ui.model.odata.v2.ODataListBinding.
43720
44241
  */
43721
44242
  static getMetadata(): sap.ui.base.Metadata;
44243
+ /**
44244
+ * @SINCE 1.98.0
44245
+ *
44246
+ * Attach event handler `fnFunction` to the 'createActivate' event of this binding.
44247
+ */
44248
+ attachCreateActivate(
44249
+ /**
44250
+ * The function to call when the event occurs
44251
+ */
44252
+ fnFunction: Function,
44253
+ /**
44254
+ * Object on which to call the given function
44255
+ */
44256
+ oListener?: object
44257
+ ): void;
44258
+ /**
44259
+ * @SINCE 1.98.0
44260
+ *
44261
+ * Creates a new entity for this binding's collection via {@link sap.ui.model.odata.v2.ODataModel#createEntry}
44262
+ * using the parameters given in `mParameters` and inserts it at the list position specified by the `bAtEnd`
44263
+ * parameter. See {@link topic:6c47b2b39db9404582994070ec3d57a2#loio4c4cd99af9b14e08bb72470cc7cabff4 Creating
44264
+ * Entities documentation} for comprehensive information on the topic.
44265
+ *
44266
+ * Note: This method requires that the model metadata has been loaded; see {@link sap.ui.model.odata.v2.ODataModel#metadataLoaded}.
44267
+ */
44268
+ create(
44269
+ /**
44270
+ * The initial data for the created entity; see the `mParameters.properties` parameter of {@link sap.ui.model.odata.v2.ODataModel#createEntry}
44271
+ */
44272
+ oInitialData: object,
44273
+ /**
44274
+ * Whether the entity is inserted at the end of the list. The first insertion determines the overall position
44275
+ * of created contexts within the list. Every succeeding insertion is relative to the created contexts within
44276
+ * this list. Note: the order of created contexts in the binding does not necessarily correspond to the
44277
+ * order of the resulting back end creation requests.
44278
+ */
44279
+ bAtEnd: boolean,
44280
+ /**
44281
+ * A map of parameters as specified for {@link sap.ui.model.odata.v2.ODataModel#createEntry} where only
44282
+ * the following subset of these is supported.
44283
+ */
44284
+ mParameters: {
44285
+ /**
44286
+ * The ID of the `ChangeSet` that this request should belong to
44287
+ */
44288
+ changeSetId?: string;
44289
+ /**
44290
+ * The error callback function
44291
+ */
44292
+ error?: Function;
44293
+ /**
44294
+ * A comma-separated list of navigation properties to be expanded for the newly created entity; see {@link
44295
+ * sap.ui.model.odata.v2.ODataModel#createEntry}
44296
+ */
44297
+ expand?: string;
44298
+ /**
44299
+ * The ID of a request group; requests belonging to the same group will be bundled in one batch request
44300
+ */
44301
+ groupId?: string;
44302
+ /**
44303
+ * Whether the created context is inactive. An inactive context will only be sent to the server after the
44304
+ * first property update. From then on it behaves like any other created context.
44305
+ */
44306
+ inactive?: boolean;
44307
+ /**
44308
+ * The success callback function
44309
+ */
44310
+ success?: Function;
44311
+ }
44312
+ ): sap.ui.model.odata.v2.Context;
44313
+ /**
44314
+ * @SINCE 1.98.0
44315
+ *
44316
+ * Creates a new entity for this binding's collection via {@link sap.ui.model.odata.v2.ODataModel#createEntry}
44317
+ * using the parameters given in `mParameters` and inserts it at the list position specified by the `bAtEnd`
44318
+ * parameter. See {@link topic:6c47b2b39db9404582994070ec3d57a2#loio4c4cd99af9b14e08bb72470cc7cabff4 Creating
44319
+ * Entities documentation} for comprehensive information on the topic.
44320
+ *
44321
+ * Note: This method requires that the model metadata has been loaded; see {@link sap.ui.model.odata.v2.ODataModel#metadataLoaded}.
44322
+ */
44323
+ create(
44324
+ /**
44325
+ * The initial data for the created entity; see the `mParameters.properties` parameter of {@link sap.ui.model.odata.v2.ODataModel#createEntry}
44326
+ */
44327
+ oInitialData: object,
44328
+ /**
44329
+ * A map of parameters as specified for {@link sap.ui.model.odata.v2.ODataModel#createEntry} where only
44330
+ * the following subset of these is supported.
44331
+ */
44332
+ mParameters: {
44333
+ /**
44334
+ * The ID of the `ChangeSet` that this request should belong to
44335
+ */
44336
+ changeSetId?: string;
44337
+ /**
44338
+ * The error callback function
44339
+ */
44340
+ error?: Function;
44341
+ /**
44342
+ * A comma-separated list of navigation properties to be expanded for the newly created entity; see {@link
44343
+ * sap.ui.model.odata.v2.ODataModel#createEntry}
44344
+ */
44345
+ expand?: string;
44346
+ /**
44347
+ * The ID of a request group; requests belonging to the same group will be bundled in one batch request
44348
+ */
44349
+ groupId?: string;
44350
+ /**
44351
+ * Whether the created context is inactive. An inactive context will only be sent to the server after the
44352
+ * first property update. From then on it behaves like any other created context.
44353
+ */
44354
+ inactive?: boolean;
44355
+ /**
44356
+ * The success callback function
44357
+ */
44358
+ success?: Function;
44359
+ }
44360
+ ): sap.ui.model.odata.v2.Context;
44361
+ /**
44362
+ * @SINCE 1.98.0
44363
+ *
44364
+ * Creates a new entity for this binding's collection via {@link sap.ui.model.odata.v2.ODataModel#createEntry}
44365
+ * using the parameters given in `mParameters` and inserts it at the list position specified by the `bAtEnd`
44366
+ * parameter. See {@link topic:6c47b2b39db9404582994070ec3d57a2#loio4c4cd99af9b14e08bb72470cc7cabff4 Creating
44367
+ * Entities documentation} for comprehensive information on the topic.
44368
+ *
44369
+ * Note: This method requires that the model metadata has been loaded; see {@link sap.ui.model.odata.v2.ODataModel#metadataLoaded}.
44370
+ */
44371
+ create(
44372
+ /**
44373
+ * Whether the entity is inserted at the end of the list. The first insertion determines the overall position
44374
+ * of created contexts within the list. Every succeeding insertion is relative to the created contexts within
44375
+ * this list. Note: the order of created contexts in the binding does not necessarily correspond to the
44376
+ * order of the resulting back end creation requests.
44377
+ */
44378
+ bAtEnd: boolean,
44379
+ /**
44380
+ * A map of parameters as specified for {@link sap.ui.model.odata.v2.ODataModel#createEntry} where only
44381
+ * the following subset of these is supported.
44382
+ */
44383
+ mParameters: {
44384
+ /**
44385
+ * The ID of the `ChangeSet` that this request should belong to
44386
+ */
44387
+ changeSetId?: string;
44388
+ /**
44389
+ * The error callback function
44390
+ */
44391
+ error?: Function;
44392
+ /**
44393
+ * A comma-separated list of navigation properties to be expanded for the newly created entity; see {@link
44394
+ * sap.ui.model.odata.v2.ODataModel#createEntry}
44395
+ */
44396
+ expand?: string;
44397
+ /**
44398
+ * The ID of a request group; requests belonging to the same group will be bundled in one batch request
44399
+ */
44400
+ groupId?: string;
44401
+ /**
44402
+ * Whether the created context is inactive. An inactive context will only be sent to the server after the
44403
+ * first property update. From then on it behaves like any other created context.
44404
+ */
44405
+ inactive?: boolean;
44406
+ /**
44407
+ * The success callback function
44408
+ */
44409
+ success?: Function;
44410
+ }
44411
+ ): sap.ui.model.odata.v2.Context;
44412
+ /**
44413
+ * @SINCE 1.98.0
44414
+ *
44415
+ * Creates a new entity for this binding's collection via {@link sap.ui.model.odata.v2.ODataModel#createEntry}
44416
+ * using the parameters given in `mParameters` and inserts it at the list position specified by the `bAtEnd`
44417
+ * parameter. See {@link topic:6c47b2b39db9404582994070ec3d57a2#loio4c4cd99af9b14e08bb72470cc7cabff4 Creating
44418
+ * Entities documentation} for comprehensive information on the topic.
44419
+ *
44420
+ * Note: This method requires that the model metadata has been loaded; see {@link sap.ui.model.odata.v2.ODataModel#metadataLoaded}.
44421
+ */
44422
+ create(
44423
+ /**
44424
+ * A map of parameters as specified for {@link sap.ui.model.odata.v2.ODataModel#createEntry} where only
44425
+ * the following subset of these is supported.
44426
+ */
44427
+ mParameters: {
44428
+ /**
44429
+ * The ID of the `ChangeSet` that this request should belong to
44430
+ */
44431
+ changeSetId?: string;
44432
+ /**
44433
+ * The error callback function
44434
+ */
44435
+ error?: Function;
44436
+ /**
44437
+ * A comma-separated list of navigation properties to be expanded for the newly created entity; see {@link
44438
+ * sap.ui.model.odata.v2.ODataModel#createEntry}
44439
+ */
44440
+ expand?: string;
44441
+ /**
44442
+ * The ID of a request group; requests belonging to the same group will be bundled in one batch request
44443
+ */
44444
+ groupId?: string;
44445
+ /**
44446
+ * Whether the created context is inactive. An inactive context will only be sent to the server after the
44447
+ * first property update. From then on it behaves like any other created context.
44448
+ */
44449
+ inactive?: boolean;
44450
+ /**
44451
+ * The success callback function
44452
+ */
44453
+ success?: Function;
44454
+ }
44455
+ ): sap.ui.model.odata.v2.Context;
44456
+ /**
44457
+ * @SINCE 1.98.0
44458
+ *
44459
+ * Detach event handler `fnFunction` from the 'createActivate' event of this binding.
44460
+ */
44461
+ detachCreateActivate(
44462
+ /**
44463
+ * The function to call when the event occurs
44464
+ */
44465
+ fnFunction: Function,
44466
+ /**
44467
+ * Object on which to call the given function
44468
+ */
44469
+ oListener?: object
44470
+ ): void;
43722
44471
  /**
43723
44472
  * Filters the list.
43724
44473
  *
@@ -43745,6 +44494,15 @@ declare namespace sap {
43745
44494
  */
43746
44495
  bReturnSuccess?: boolean
43747
44496
  ): this;
44497
+ /**
44498
+ * @SINCE 1.98.0
44499
+ *
44500
+ * Returns all current contexts of this list binding in no special order. Just like {@link #getCurrentContexts},
44501
+ * this method does not request any data from a back end and does not change the binding's state. In contrast
44502
+ * to {@link #getCurrentContexts}, it does not only return those contexts that were last requested by a
44503
+ * control, but all contexts that are currently available in the binding.
44504
+ */
44505
+ getAllCurrentContexts(): sap.ui.model.odata.v2.Context[];
43748
44506
  /**
43749
44507
  * Return contexts for the list.
43750
44508
  */
@@ -43762,6 +44520,18 @@ declare namespace sap {
43762
44520
  */
43763
44521
  iThreshold?: int
43764
44522
  ): sap.ui.model.odata.v2.Context[];
44523
+ /**
44524
+ * @SINCE 1.98.0
44525
+ *
44526
+ * Returns the count of active entries in the list if the list length is final, otherwise `undefined`. Contrary
44527
+ * to {#getLength}, this method does not consider inactive entries which are created via {#create}.
44528
+ * See:
44529
+ * #create
44530
+ * #getLength
44531
+ * #isLengthFinal
44532
+ * sap.ui.model.odata.v2.Context#isInactive
44533
+ */
44534
+ getCount(): number | undefined;
43765
44535
  /**
43766
44536
  * @SINCE 1.24
43767
44537
  *
@@ -43787,6 +44557,13 @@ declare namespace sap {
43787
44557
  * do nothing, method will be called again when metadata is loaded.
43788
44558
  */
43789
44559
  initialize(): sap.ui.model.odata.v2.ODataListBinding;
44560
+ /**
44561
+ * @SINCE 1.98.0
44562
+ *
44563
+ * Returns whether the overall position of created entries is at the end of the list; this is determined
44564
+ * by the first call to {@link sap.ui.model.odata.v2.ODataListBinding#create}.
44565
+ */
44566
+ isFirstCreateAtEnd(): boolean | undefined;
43790
44567
  /**
43791
44568
  * Refreshes the binding, check whether the model data has been changed and fire change event if this is
43792
44569
  * the case. For server side models this should refetch the data from the server. To update a control, even
@@ -44686,7 +45463,7 @@ declare namespace sap {
44686
45463
  * Maps the function import parameter name as specified in the function import's metadata to its value;
44687
45464
  * the value is formatted based on the parameter's type as specified in the metadata
44688
45465
  */
44689
- urlParameters?: Record<string, string>;
45466
+ urlParameters?: Record<string, any>;
44690
45467
  /**
44691
45468
  * **Deprecated - use `groupId` instead**
44692
45469
  */
@@ -44699,7 +45476,9 @@ declare namespace sap {
44699
45476
  */
44700
45477
  canonicalRequestsEnabled(): boolean;
44701
45478
  /**
44702
- * Trigger a `POST` request to the OData service that was specified in the model constructor.
45479
+ * Trigger a `POST` request to the OData service that was specified in the model constructor; see {@link
45480
+ * topic:6c47b2b39db9404582994070ec3d57a2#loio4c4cd99af9b14e08bb72470cc7cabff4 Creating Entities documentation}
45481
+ * for comprehensive information on the topic.
44703
45482
  *
44704
45483
  * Please note that deep creates are not supported and may not work.
44705
45484
  */
@@ -44817,7 +45596,9 @@ declare namespace sap {
44817
45596
  ): sap.ui.model.odata.v2.Context | undefined;
44818
45597
  /**
44819
45598
  * Creates a new entry object which is described by the metadata of the entity type of the specified `sPath`
44820
- * Name. A context object is returned which can be used to bind against the newly created object.
45599
+ * Name. A context object is returned which can be used to bind against the newly created object. See {@link
45600
+ * topic:6c47b2b39db9404582994070ec3d57a2#loio4c4cd99af9b14e08bb72470cc7cabff4 Creating Entities documentation}
45601
+ * for comprehensive information on the topic.
44821
45602
  *
44822
45603
  * For each created entry a request is created and stored in a request queue. The request queue can be submitted
44823
45604
  * by calling {@link #submitChanges}. As long as the context is transient (see {@link sap.ui.model.odata.v2.Context#isTransient}),
@@ -44912,6 +45693,11 @@ declare namespace sap {
44912
45693
  * A map of headers
44913
45694
  */
44914
45695
  headers?: Record<string, string>;
45696
+ /**
45697
+ * Whether the created context is inactive. An inactive context will only be sent to the server after the
45698
+ * first property update. From then on it behaves like any other created context. Supported since 1.98.0
45699
+ */
45700
+ inactive?: boolean;
44915
45701
  /**
44916
45702
  * An array that specifies a set of properties or the entry
44917
45703
  */
@@ -44947,7 +45733,7 @@ declare namespace sap {
44947
45733
  oKeyProperties: object
44948
45734
  ): string;
44949
45735
  /**
44950
- * @deprecated - since 1.95.0; use {@link #resetChanges} instead
45736
+ * @deprecated (since 1.95.0) - use {@link #resetChanges} instead
44951
45737
  *
44952
45738
  * Deletes a created entry from the request queue and from the model.
44953
45739
  *
@@ -45812,7 +46598,7 @@ declare namespace sap {
45812
46598
  */
45813
46599
  resetChanges(
45814
46600
  /**
45815
- * Paths to be be reset; if no array is passed, all changes are reset
46601
+ * Paths to be reset; if no array is passed, all changes are reset
45816
46602
  */
45817
46603
  aPath?: any[],
45818
46604
  /**
@@ -46459,16 +47245,16 @@ declare namespace sap {
46459
47245
  * ```javascript
46460
47246
  *
46461
47247
  * <Annotations Target="com.sap.gateway.default.iwbep.tea_busi.v0001.EQUIPMENT">
46462
- * <Annotation Term="com.sap.vocabularies.UI.v1.Facets">
46463
- * <Collection>
46464
- * <Record Type="com.sap.vocabularies.UI.v1.ReferenceFacet">
46465
- * <PropertyValue Property="Target" AnnotationPath="EQUIPMENT_2_PRODUCT/@com.sap.vocabularies.Common.v1.QuickInfo" />
46466
- * </Record>
46467
- * </Collection>
46468
- * </Annotation>
47248
+ * <Annotation Term="com.sap.vocabularies.UI.v1.Facets">
47249
+ * <Collection>
47250
+ * <Record Type="com.sap.vocabularies.UI.v1.ReferenceFacet">
47251
+ * <PropertyValue Property="Target" AnnotationPath="EQUIPMENT_2_PRODUCT/@com.sap.vocabularies.Common.v1.QuickInfo" />
47252
+ * </Record>
47253
+ * </Collection>
47254
+ * </Annotation>
46469
47255
  * </Annotations>
46470
47256
  * <Annotations Target="com.sap.gateway.default.iwbep.tea_busi_product.v0001.Product">
46471
- * <Annotation Term="com.sap.vocabularies.Common.v1.QuickInfo" Path="Name" />
47257
+ * <Annotation Term="com.sap.vocabularies.Common.v1.QuickInfo" Path="Name" />
46472
47258
  * </Annotations>
46473
47259
  * ```
46474
47260
  *
@@ -46482,16 +47268,16 @@ declare namespace sap {
46482
47268
  * ```javascript
46483
47269
  *
46484
47270
  * <Annotations Target="com.sap.gateway.default.iwbep.tea_busi.v0001.EQUIPMENT">
46485
- * <Annotation Term="com.sap.vocabularies.UI.v1.LineItem">
46486
- * <Collection>
46487
- * <Record Type="com.sap.vocabularies.UI.v1.DataField">
46488
- * <PropertyValue Property="Value" Path="EQUIPMENT_2_PRODUCT/Name" />
46489
- * </Record>
46490
- * </Collection>
46491
- * </Annotation>
47271
+ * <Annotation Term="com.sap.vocabularies.UI.v1.LineItem">
47272
+ * <Collection>
47273
+ * <Record Type="com.sap.vocabularies.UI.v1.DataField">
47274
+ * <PropertyValue Property="Value" Path="EQUIPMENT_2_PRODUCT/Name" />
47275
+ * </Record>
47276
+ * </Collection>
47277
+ * </Annotation>
46492
47278
  * </Annotations>
46493
47279
  * <Annotations Target="com.sap.gateway.default.iwbep.tea_busi_product.v0001.Product/Name">
46494
- * <Annotation Term="com.sap.vocabularies.Common.v1.QuickInfo" Path="PRODUCT_2_SUPPLIER/Supplier_Name" />
47280
+ * <Annotation Term="com.sap.vocabularies.Common.v1.QuickInfo" Path="PRODUCT_2_SUPPLIER/Supplier_Name" />
46495
47281
  * </Annotations>
46496
47282
  * ```
46497
47283
  *
@@ -46749,7 +47535,7 @@ declare namespace sap {
46749
47535
  */
46750
47536
  context: sap.ui.model.Context;
46751
47537
  }
46752
- ): string | Promise<any>;
47538
+ ): string | Promise<any> | undefined;
46753
47539
  /**
46754
47540
  * @SINCE 1.63.0
46755
47541
  *
@@ -47080,11 +47866,15 @@ declare namespace sap {
47080
47866
  * The group ID to be used for the DELETE request; if not specified, the update group ID for the context's
47081
47867
  * binding is used, see {@link #getUpdateGroupId}; the resulting group ID must not have {@link sap.ui.model.odata.v4.SubmitMode.API}.
47082
47868
  * Since 1.81, if this context is transient (see {@link #isTransient}), no group ID needs to be specified.
47869
+ * Since 1.98.0, you can use `null` to prevent the DELETE request in case of a kept-alive context that is
47870
+ * not in the collection and of which you know that it does not exist on the server anymore (for example,
47871
+ * a draft after activation).
47083
47872
  */
47084
47873
  sGroupId?: string,
47085
47874
  /**
47086
47875
  * Whether not to request the new count from the server; useful in case of {@link #replaceWith} where it
47087
- * is known that the count remains unchanged (since 1.97.0)
47876
+ * is known that the count remains unchanged (since 1.97.0). Since 1.98.0, this is implied if a `null` group
47877
+ * ID is used.
47088
47878
  */
47089
47879
  bDoNotRequestCount?: boolean
47090
47880
  ): Promise<any>;
@@ -47151,6 +47941,8 @@ declare namespace sap {
47151
47941
  *
47152
47942
  * Returns `undefined` if the data is not (yet) available; no request is triggered. Use {@link #requestObject}
47153
47943
  * for asynchronous access.
47944
+ *
47945
+ * The header context of a list binding only delivers `$count` (wrapped in an object if `sPath` is "").
47154
47946
  * See:
47155
47947
  * sap.ui.model.Context#getObject
47156
47948
  */
@@ -47194,7 +47986,8 @@ declare namespace sap {
47194
47986
  *
47195
47987
  * Returns whether there are pending changes for bindings dependent on this context, or for unresolved bindings
47196
47988
  * (see {@link sap.ui.model.Binding#isResolved}) which were dependent on this context at the time the pending
47197
- * change was created. This includes the context itself being transient (see {@link #isTransient}).
47989
+ * change was created. This includes the context itself being {@link #isTransient transient}. Since 1.98.0,
47990
+ * {@link #isInactive inactive} contexts are ignored.
47198
47991
  */
47199
47992
  hasPendingChanges(): boolean;
47200
47993
  /**
@@ -47206,6 +47999,17 @@ declare namespace sap {
47206
47999
  * #expand
47207
48000
  */
47208
48001
  isExpanded(): boolean | undefined;
48002
+ /**
48003
+ * @SINCE 1.98.0
48004
+ *
48005
+ * Returns whether this context is inactive. The result of this function can also be accessed via instance
48006
+ * annotation "@$ui5.context.isInactive" at the entity.
48007
+ * See:
48008
+ * #isTransient
48009
+ * sap.ui.model.odata.v4.ODataListBinding#create
48010
+ * sap.ui.model.odata.v4.ODataListBinding#event:createActivate
48011
+ */
48012
+ isInactive(): boolean;
47209
48013
  /**
47210
48014
  * @SINCE 1.81.0
47211
48015
  *
@@ -47221,6 +48025,8 @@ declare namespace sap {
47221
48025
  * `true` if the context is transient, meaning that the promise returned by {@link #created} is not yet
47222
48026
  * resolved or rejected, and returns `false` if the context is not transient. The result of this function
47223
48027
  * can also be accessed via instance annotation "@$ui5.context.isTransient" at the entity.
48028
+ * See:
48029
+ * #isInactive
47224
48030
  */
47225
48031
  isTransient(): boolean;
47226
48032
  /**
@@ -47250,8 +48056,9 @@ declare namespace sap {
47250
48056
  /**
47251
48057
  * @SINCE 1.97.0
47252
48058
  *
47253
- * Replaces this context with the given other context. You probably want to delete this context afterwards
47254
- * without requesting the new count from the server, see the `bDoNotRequestCount` parameter of {@link #delete}.
48059
+ * Replaces this context with the given other context "in situ", that is, at the index it currently has
48060
+ * in its list binding's collection. You probably want to delete this context afterwards without requesting
48061
+ * the new count from the server, see the `bDoNotRequestCount` parameter of {@link #delete}.
47255
48062
  */
47256
48063
  replaceWith(
47257
48064
  /**
@@ -47279,6 +48086,8 @@ declare namespace sap {
47279
48086
  * "OData JSON Format Version 4.0". Note that the function clones the result. Modify values via {@link
47280
48087
  * sap.ui.model.odata.v4.Context#setProperty}.
47281
48088
  *
48089
+ * The header context of a list binding only delivers `$count` (wrapped in an object if `sPath` is "").
48090
+ *
47282
48091
  * If you want {@link #requestObject} to read fresh data, call {@link #refresh} first.
47283
48092
  * See:
47284
48093
  * #getBinding
@@ -47398,6 +48207,12 @@ declare namespace sap {
47398
48207
  * Sets this context's `keepAlive` attribute. If `true` the context is kept alive even when it is removed
47399
48208
  * from its binding's collection, for example if a filter is applied and the entity represented by this
47400
48209
  * context does not match the filter criteria.
48210
+ *
48211
+ * Normally, a context's lifecycle is managed implicitly. It is created once it is needed and destroyed
48212
+ * if it is not needed anymore, for example, because it is no longer part of its list binding's collection.
48213
+ * It is thus unsafe to keep a reference to a context instance which is not explicitly kept alive. Once
48214
+ * a context is not kept alive anymore, the implicit lifecycle management again takes control and destroys
48215
+ * the context if it is no longer needed.
47401
48216
  * See:
47402
48217
  * #isKeepAlive
47403
48218
  */
@@ -47646,6 +48461,12 @@ declare namespace sap {
47646
48461
  * The value of this binding is the result of the operation. To access a result of primitive type, bind
47647
48462
  * a control to the path "value", for example `<Text text="{value}"/>`. If the result has a complex or
47648
48463
  * entity type, you can bind properties as usual, for example `<Text text="{street}"/>`.
48464
+ *
48465
+ * Since 1.98.0, a single-valued navigation property can be treated like a function if
48466
+ * it has the same type as the operation binding's parent context, that parent context is in the
48467
+ * collection (has an index, see {@link sap.ui.model.odata.v4.Context#getIndex}) of a list binding for a
48468
+ * top-level entity set, there is a navigation property binding which points to that same entity set,
48469
+ * no operation parameters have been set, the `bReplaceWithRVC` parameter is used.
47649
48470
  */
47650
48471
  execute(
47651
48472
  /**
@@ -47713,7 +48534,8 @@ declare namespace sap {
47713
48534
  getRootBinding():
47714
48535
  | sap.ui.model.odata.v4.ODataContextBinding
47715
48536
  | sap.ui.model.odata.v4.ODataListBinding
47716
- | sap.ui.model.odata.v4.ODataPropertyBinding;
48537
+ | sap.ui.model.odata.v4.ODataPropertyBinding
48538
+ | undefined;
47717
48539
  /**
47718
48540
  * @SINCE 1.81.0
47719
48541
  *
@@ -47730,7 +48552,8 @@ declare namespace sap {
47730
48552
  * Returns `true` if this binding or its dependent bindings have pending property changes or created entities
47731
48553
  * which have not been sent successfully to the server. This function does not take into account the deletion
47732
48554
  * of entities (see {@link sap.ui.model.odata.v4.Context#delete}) and the execution of OData operations
47733
- * (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}).
48555
+ * (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}). Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isInactive
48556
+ * inactive} contexts are ignored.
47734
48557
  *
47735
48558
  * Note: If this binding is relative, its data is cached separately for each parent context path. This method
47736
48559
  * returns `true` if there are pending changes for the current parent context path of this binding. If this
@@ -47741,7 +48564,10 @@ declare namespace sap {
47741
48564
  * Whether to ignore changes which will not be lost by APIs like {@link sap.ui.model.odata.v4.ODataListBinding#changeParameters
47742
48565
  * changeParameters}, {@link sap.ui.model.odata.v4.ODataListBinding#filter filter}, {@link sap.ui.model.odata.v4.ODataListBinding#sort
47743
48566
  * sort}, or {@link sap.ui.model.odata.v4.ODataListBinding#suspend suspend} because they relate to a {@link
47744
- * sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding.
48567
+ * sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding. Since 1.98.0, {@link
48568
+ * sap.ui.model.odata.v4.Context#isTransient transient} contexts of a {@link #getRootBinding root binding}
48569
+ * are treated as kept-alive by this flag. Since 1.99.0, the same happens for bindings using the `$$ownRequest`
48570
+ * parameter (see {@link sap.ui.model.odata.v4.ODataModel#bindList}).
47745
48571
  */
47746
48572
  bIgnoreKeptAlive?: boolean
47747
48573
  ): boolean;
@@ -47760,20 +48586,6 @@ declare namespace sap {
47760
48586
  * Method not supported
47761
48587
  */
47762
48588
  isInitial(): boolean;
47763
- /**
47764
- * @SINCE 1.95.0
47765
- * @EXPERIMENTAL
47766
- *
47767
- * Moves the bound entity into the given list binding. This binding loses its data. The method may only
47768
- * be called when this binding has finished loading. You can verify this by calling `oBinding.getBoundContext().requestObject()`.
47769
- * If that promise resolves, the binding has finished loading.
47770
- */
47771
- moveEntityTo(
47772
- /**
47773
- * The list binding to take the entity
47774
- */
47775
- oListBinding: sap.ui.model.odata.v4.ODataListBinding
47776
- ): void;
47777
48589
  /**
47778
48590
  * @SINCE 1.37.0
47779
48591
  *
@@ -47879,7 +48691,8 @@ declare namespace sap {
47879
48691
  * Suspends this binding. A suspended binding does not fire change events nor does it trigger data service
47880
48692
  * requests. Call {@link #resume} to resume the binding. Before 1.53.0, this method was not supported and
47881
48693
  * threw an error. Since 1.97.0, pending changes are ignored if they relate to a {@link sap.ui.model.odata.v4.Context#setKeepAlive
47882
- * kept-alive} context of this binding.
48694
+ * kept-alive} context of this binding. Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isTransient transient}
48695
+ * contexts of a {@link #getRootBinding root binding} do not count as pending changes.
47883
48696
  * See:
47884
48697
  * {@link topic:b0f5c531e5034a27952cc748954cbe39 Suspend and Resume}
47885
48698
  * sap.ui.model.Binding#suspend
@@ -47900,8 +48713,9 @@ declare namespace sap {
47900
48713
  * @SINCE 1.37.0
47901
48714
  *
47902
48715
  * List binding for an OData V4 model. An event handler can only be attached to this binding for the following
47903
- * events: 'AggregatedDataStateChange', 'change', 'createCompleted', 'createSent', 'dataReceived', 'dataRequested',
47904
- * 'DataStateChange', 'patchCompleted', 'patchSent', and 'refresh'. For other events, an error is thrown.
48716
+ * events: 'AggregatedDataStateChange', 'change', 'createActivate', 'createCompleted', 'createSent', 'dataReceived',
48717
+ * 'dataRequested', 'DataStateChange', 'patchCompleted', 'patchSent', and 'refresh'. For other events, an
48718
+ * error is thrown.
47905
48719
  */
47906
48720
  class ODataListBinding extends sap.ui.model.ListBinding {
47907
48721
  constructor();
@@ -47934,6 +48748,21 @@ declare namespace sap {
47934
48748
  * Returns a metadata object for class sap.ui.model.odata.v4.ODataListBinding.
47935
48749
  */
47936
48750
  static getMetadata(): sap.ui.base.Metadata;
48751
+ /**
48752
+ * @SINCE 1.98.0
48753
+ *
48754
+ * Attach event handler `fnFunction` to the 'createActivate' event of this binding.
48755
+ */
48756
+ attachCreateActivate(
48757
+ /**
48758
+ * The function to call when the event occurs
48759
+ */
48760
+ fnFunction: Function,
48761
+ /**
48762
+ * Object on which to call the given function
48763
+ */
48764
+ oListener?: object
48765
+ ): void;
47937
48766
  /**
47938
48767
  * @SINCE 1.66.0
47939
48768
  *
@@ -48040,9 +48869,9 @@ declare namespace sap {
48040
48869
  * For creating the new entity, the binding's update group ID is used, see {@link #getUpdateGroupId}.
48041
48870
  *
48042
48871
  * You can call {@link sap.ui.model.odata.v4.Context#delete} to delete the created context again. As long
48043
- * as the context is transient (see {@link sap.ui.model.odata.v4.Context#isTransient}), {@link #resetChanges}
48044
- * and a call to {@link sap.ui.model.odata.v4.ODataModel#resetChanges} with the update group ID as parameter
48045
- * also delete the created context together with other changes.
48872
+ * as the context is {@link sap.ui.model.odata.v4.Context#isTransient transient} and {@link sap.ui.model.odata.v4.Context#isInactive
48873
+ * active}, {@link #resetChanges} and a call to {@link sap.ui.model.odata.v4.ODataModel#resetChanges} with
48874
+ * the update group ID as parameter also delete the created context together with other changes.
48046
48875
  *
48047
48876
  * If the creation of the entity on the server failed, the creation is repeated automatically. If the binding's
48048
48877
  * update group ID has {@link sap.ui.model.odata.v4.SubmitMode.API}, it is repeated with the next call of
@@ -48088,14 +48917,19 @@ declare namespace sap {
48088
48917
  */
48089
48918
  bSkipRefresh?: boolean,
48090
48919
  /**
48091
- * Whether the entity is inserted at the end of the list. When creating multiple entities, this parameter
48092
- * must have the same value for each entity. Supported since 1.66.0
48920
+ * Whether the entity is inserted at the end of the list. Supported since 1.66.0. Since 1.99.0 the first
48921
+ * insertion determines the overall position of created contexts within the binding's context list. Every
48922
+ * succeeding insertion is relative to the created contexts within this list.
48093
48923
  */
48094
48924
  bAtEnd?: boolean,
48095
48925
  /**
48096
48926
  * Create an inactive context. Such a context will only be sent to the server after the first property update.
48097
48927
  * From then on it behaves like any other created context. This parameter is experimental and its implementation
48098
- * may still change. Do not use it in productive code yet. Supported since 1.97.0
48928
+ * may still change. Do not use it in productive code yet. Supported since 1.97.0 Since 1.98.0, when
48929
+ * the first property updates happens, the context is no longer {@link sap.ui.model.odata.v4.Context#isInactive
48930
+ * inactive} and the {@link sap.ui.model.odata.v4.ODataListBinding#event:createActivate createActivate}
48931
+ * event is fired. While inactive, it does not count as a {@link #hasPendingChanges pending change} and
48932
+ * does not contribute to the {@link #getCount count}.
48099
48933
  */
48100
48934
  bInactive?: boolean
48101
48935
  ): sap.ui.model.odata.v4.Context;
@@ -48107,6 +48941,21 @@ declare namespace sap {
48107
48941
  * sap.ui.model.Binding#destroy
48108
48942
  */
48109
48943
  destroy(): void;
48944
+ /**
48945
+ * @SINCE 1.98.0
48946
+ *
48947
+ * Detach event handler `fnFunction` from the 'createActivate' event of this binding.
48948
+ */
48949
+ detachCreateActivate(
48950
+ /**
48951
+ * The function to call when the event occurs
48952
+ */
48953
+ fnFunction: Function,
48954
+ /**
48955
+ * Object on which to call the given function
48956
+ */
48957
+ oListener?: object
48958
+ ): void;
48110
48959
  /**
48111
48960
  * @SINCE 1.66.0
48112
48961
  *
@@ -48211,6 +49060,17 @@ declare namespace sap {
48211
49060
  */
48212
49061
  sFilterType?: sap.ui.model.FilterType
48213
49062
  ): this;
49063
+ /**
49064
+ * @SINCE 1.98.0
49065
+ *
49066
+ * Returns all current contexts of this list binding in no special order. Just like {@link #getCurrentContexts},
49067
+ * this method does not request any data from a back end and does not change the binding's state. In contrast
49068
+ * to {@link #getCurrentContexts}, it does not only return those contexts that were last requested by a
49069
+ * control, but all contexts that are currently available in the binding, including kept-alive contexts.
49070
+ * To filter out kept-alive contexts that are not part of the list, you could check whether the index is
49071
+ * `undefined`, as described in {@link sap.ui.model.odata.v4.Context#getIndex}.
49072
+ */
49073
+ getAllCurrentContexts(): sap.ui.model.odata.v4.Context[];
48214
49074
  /**
48215
49075
  * @SINCE 1.37.0
48216
49076
  *
@@ -48248,7 +49108,8 @@ declare namespace sap {
48248
49108
  * Returns the count of elements.
48249
49109
  *
48250
49110
  * If known, the value represents the sum of the element count of the collection on the server and the number
48251
- * of transient entities created on the client. Otherwise, it is `undefined`. The value is a number of type
49111
+ * of {@link sap.ui.model.odata.v4.Context#isInactive active} {@link sap.ui.model.odata.v4.Context#isTransient
49112
+ * transient} entities created on the client. Otherwise, it is `undefined`. The value is a number of type
48252
49113
  * `Edm.Int64`. Since 1.91.0, in case of data aggregation with group levels, the count is the leaf count
48253
49114
  * on the server; it is only determined if the `$count` system query option is given.
48254
49115
  *
@@ -48317,6 +49178,24 @@ declare namespace sap {
48317
49178
  * #getCount
48318
49179
  */
48319
49180
  getHeaderContext(): sap.ui.model.odata.v4.Context;
49181
+ /**
49182
+ * @SINCE 1.99.0
49183
+ *
49184
+ * Calls {@link sap.ui.model.odata.v4.Context#setKeepAlive} at the context for the given path and returns
49185
+ * it.
49186
+ * See:
49187
+ * sap.ui.model.odata.v4.Model#getKeepAliveContext
49188
+ */
49189
+ getKeepAliveContext(
49190
+ /**
49191
+ * The path of the context to be kept alive
49192
+ */
49193
+ sPath: string,
49194
+ /**
49195
+ * Whether to request messages for the context's entity
49196
+ */
49197
+ bRequestMessages?: boolean
49198
+ ): sap.ui.model.odata.v4.Context | undefined;
48320
49199
  /**
48321
49200
  * @SINCE 1.37.0
48322
49201
  *
@@ -48346,7 +49225,8 @@ declare namespace sap {
48346
49225
  getRootBinding():
48347
49226
  | sap.ui.model.odata.v4.ODataContextBinding
48348
49227
  | sap.ui.model.odata.v4.ODataListBinding
48349
- | sap.ui.model.odata.v4.ODataPropertyBinding;
49228
+ | sap.ui.model.odata.v4.ODataPropertyBinding
49229
+ | undefined;
48350
49230
  /**
48351
49231
  * @SINCE 1.81.0
48352
49232
  *
@@ -48363,7 +49243,8 @@ declare namespace sap {
48363
49243
  * Returns `true` if this binding or its dependent bindings have pending property changes or created entities
48364
49244
  * which have not been sent successfully to the server. This function does not take into account the deletion
48365
49245
  * of entities (see {@link sap.ui.model.odata.v4.Context#delete}) and the execution of OData operations
48366
- * (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}).
49246
+ * (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}). Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isInactive
49247
+ * inactive} contexts are ignored.
48367
49248
  *
48368
49249
  * Note: If this binding is relative, its data is cached separately for each parent context path. This method
48369
49250
  * returns `true` if there are pending changes for the current parent context path of this binding. If this
@@ -48374,7 +49255,10 @@ declare namespace sap {
48374
49255
  * Whether to ignore changes which will not be lost by APIs like {@link sap.ui.model.odata.v4.ODataListBinding#changeParameters
48375
49256
  * changeParameters}, {@link sap.ui.model.odata.v4.ODataListBinding#filter filter}, {@link sap.ui.model.odata.v4.ODataListBinding#sort
48376
49257
  * sort}, or {@link sap.ui.model.odata.v4.ODataListBinding#suspend suspend} because they relate to a {@link
48377
- * sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding.
49258
+ * sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding. Since 1.98.0, {@link
49259
+ * sap.ui.model.odata.v4.Context#isTransient transient} contexts of a {@link #getRootBinding root binding}
49260
+ * are treated as kept-alive by this flag. Since 1.99.0, the same happens for bindings using the `$$ownRequest`
49261
+ * parameter (see {@link sap.ui.model.odata.v4.ODataModel#bindList}).
48378
49262
  */
48379
49263
  bIgnoreKeptAlive?: boolean
48380
49264
  ): boolean;
@@ -48388,6 +49272,13 @@ declare namespace sap {
48388
49272
  * #getRootBinding
48389
49273
  */
48390
49274
  initialize(): void;
49275
+ /**
49276
+ * @SINCE 1.99.0
49277
+ *
49278
+ * Returns whether the overall position of created entries is at the end of the list; this is determined
49279
+ * by the first call to {@link #create}.
49280
+ */
49281
+ isFirstCreateAtEnd(): boolean | undefined;
48391
49282
  /**
48392
49283
  * @SINCE 1.37.0
48393
49284
  *
@@ -48623,7 +49514,8 @@ declare namespace sap {
48623
49514
  * Suspends this binding. A suspended binding does not fire change events nor does it trigger data service
48624
49515
  * requests. Call {@link #resume} to resume the binding. Before 1.53.0, this method was not supported and
48625
49516
  * threw an error. Since 1.97.0, pending changes are ignored if they relate to a {@link sap.ui.model.odata.v4.Context#setKeepAlive
48626
- * kept-alive} context of this binding.
49517
+ * kept-alive} context of this binding. Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isTransient transient}
49518
+ * contexts of a {@link #getRootBinding root binding} do not count as pending changes.
48627
49519
  * See:
48628
49520
  * {@link topic:b0f5c531e5034a27952cc748954cbe39 Suspend and Resume}
48629
49521
  * sap.ui.model.Binding#suspend
@@ -48701,7 +49593,7 @@ declare namespace sap {
48701
49593
  */
48702
49594
  as?: string;
48703
49595
  }>
48704
- ): object;
49596
+ ): object | undefined;
48705
49597
  }
48706
49598
  /**
48707
49599
  * @SINCE 1.37.0
@@ -48869,7 +49761,7 @@ declare namespace sap {
48869
49761
  * See:
48870
49762
  * #requestData
48871
49763
  */
48872
- getData(): object;
49764
+ getData(): object | undefined;
48873
49765
  /**
48874
49766
  * @SINCE 1.51.0
48875
49767
  *
@@ -49447,7 +50339,7 @@ declare namespace sap {
49447
50339
  */
49448
50340
  synchronizationMode: string;
49449
50341
  /**
49450
- * The group ID that is used for update requests. If no update group ID is specified, ` mParameters.groupId`
50342
+ * The group ID that is used for update requests. If no update group ID is specified, `mParameters.groupId`
49451
50343
  * is used. Valid update group IDs are `undefined`, '$auto', '$direct' or an application group ID.
49452
50344
  */
49453
50345
  updateGroupId?: string;
@@ -49628,6 +50520,11 @@ declare namespace sap {
49628
50520
  * from its context's path for data service requests; only the value `true` is allowed.
49629
50521
  */
49630
50522
  $$canonicalPath?: boolean;
50523
+ /**
50524
+ * Whether this binding is considered for a match when {@link #getKeepAliveContext} is called; only the
50525
+ * value `true` is allowed. Supported since 1.99.0
50526
+ */
50527
+ $$getKeepAliveContext?: boolean;
49631
50528
  /**
49632
50529
  * The group ID to be used for **read** requests triggered by this binding; if not specified, either the
49633
50530
  * parent binding's group ID (if the binding is relative) or the model's group ID is used, see {@link sap.ui.model.odata.v4.ODataModel#constructor}.
@@ -49885,6 +50782,25 @@ declare namespace sap {
49885
50782
  */
49886
50783
  bIncludeContextId?: boolean
49887
50784
  ): object;
50785
+ /**
50786
+ * @SINCE 1.99.0
50787
+ *
50788
+ * Returns a context with the given path belonging to a matching list binding that has been marked with
50789
+ * `$$getKeepAliveContext` (see {@link #bindList}). If such a context exists, it is returned and kept alive
50790
+ * (see {@link sap.ui.model.odata.v4.Context#setKeepAlive}).
50791
+ * See:
50792
+ * sap.ui.model.odata.v4.ODataListBinding#getKeepAliveContext
50793
+ */
50794
+ getKeepAliveContext(
50795
+ /**
50796
+ * A list context path to an entity
50797
+ */
50798
+ sPath: string,
50799
+ /**
50800
+ * Whether to request messages for the context's entity
50801
+ */
50802
+ bRequestMessages?: boolean
50803
+ ): sap.ui.model.odata.v4.Context | undefined;
49888
50804
  /**
49889
50805
  * @SINCE 1.85.0
49890
50806
  *
@@ -49945,7 +50861,8 @@ declare namespace sap {
49945
50861
  * @SINCE 1.39.0
49946
50862
  *
49947
50863
  * Returns `true` if there are pending changes, meaning updates or created entities (see {@link sap.ui.model.odata.v4.ODataListBinding#create})
49948
- * that have not yet been successfully sent to the server.
50864
+ * that have not yet been successfully sent to the server. Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isInactive
50865
+ * inactive} contexts are ignored.
49949
50866
  */
49950
50867
  hasPendingChanges(
49951
50868
  /**
@@ -50126,7 +51043,8 @@ declare namespace sap {
50126
51043
  getRootBinding():
50127
51044
  | sap.ui.model.odata.v4.ODataContextBinding
50128
51045
  | sap.ui.model.odata.v4.ODataListBinding
50129
- | sap.ui.model.odata.v4.ODataPropertyBinding;
51046
+ | sap.ui.model.odata.v4.ODataPropertyBinding
51047
+ | undefined;
50130
51048
  /**
50131
51049
  * @SINCE 1.81.0
50132
51050
  *
@@ -50157,7 +51075,8 @@ declare namespace sap {
50157
51075
  * Returns `true` if this binding or its dependent bindings have pending property changes or created entities
50158
51076
  * which have not been sent successfully to the server. This function does not take into account the deletion
50159
51077
  * of entities (see {@link sap.ui.model.odata.v4.Context#delete}) and the execution of OData operations
50160
- * (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}).
51078
+ * (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}). Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isInactive
51079
+ * inactive} contexts are ignored.
50161
51080
  *
50162
51081
  * Note: If this binding is relative, its data is cached separately for each parent context path. This method
50163
51082
  * returns `true` if there are pending changes for the current parent context path of this binding. If this
@@ -50168,7 +51087,10 @@ declare namespace sap {
50168
51087
  * Whether to ignore changes which will not be lost by APIs like {@link sap.ui.model.odata.v4.ODataListBinding#changeParameters
50169
51088
  * changeParameters}, {@link sap.ui.model.odata.v4.ODataListBinding#filter filter}, {@link sap.ui.model.odata.v4.ODataListBinding#sort
50170
51089
  * sort}, or {@link sap.ui.model.odata.v4.ODataListBinding#suspend suspend} because they relate to a {@link
50171
- * sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding.
51090
+ * sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding. Since 1.98.0, {@link
51091
+ * sap.ui.model.odata.v4.Context#isTransient transient} contexts of a {@link #getRootBinding root binding}
51092
+ * are treated as kept-alive by this flag. Since 1.99.0, the same happens for bindings using the `$$ownRequest`
51093
+ * parameter (see {@link sap.ui.model.odata.v4.ODataModel#bindList}).
50172
51094
  */
50173
51095
  bIgnoreKeptAlive?: boolean
50174
51096
  ): boolean;
@@ -53874,6 +54796,17 @@ declare namespace sap {
53874
54796
  */
53875
54797
  fnFilter: Function
53876
54798
  ): void;
54799
+ /**
54800
+ * Private method iterating the registered bindings of this model instance and initiating their check for
54801
+ * update
54802
+ */
54803
+ checkUpdate(
54804
+ bAsync: boolean,
54805
+ /**
54806
+ * an optional test function to filter the binding
54807
+ */
54808
+ fnFilter: Function
54809
+ ): void;
53877
54810
  /**
53878
54811
  * Inserts the user-defined custom data into the model.
53879
54812
  */
@@ -55293,7 +56226,7 @@ declare namespace sap {
55293
56226
  /**
55294
56227
  * Update the bound control even if no data has been changed
55295
56228
  */
55296
- bForceUpdate: boolean
56229
+ bForceUpdate?: boolean
55297
56230
  ): void;
55298
56231
  /**
55299
56232
  * Resumes the binding update. Change events will be fired again.
@@ -56058,6 +56991,13 @@ declare namespace sap {
56058
56991
  */
56059
56992
  bNewState?: boolean
56060
56993
  ): boolean;
56994
+ /**
56995
+ * @SINCE 1.98.0
56996
+ *
56997
+ * Returns an array of all model and control messages of all parts of the composite binding, regardless
56998
+ * of whether they are old or new.
56999
+ */
57000
+ getAllMessages(): sap.ui.core.Message[];
56061
57001
  /**
56062
57002
  * Returns the changes of the data state in a map that the control can use in the `refreshDataState` method.
56063
57003
  * The changed property's name is the key in the map. Each element in the map contains an object of below
@@ -56080,7 +57020,7 @@ declare namespace sap {
56080
57020
  }
56081
57021
  >;
56082
57022
  /**
56083
- * Returns the array of state messages of the control.
57023
+ * Returns the array of current state messages of the control.
56084
57024
  */
56085
57025
  getControlMessages(): sap.ui.core.Message[];
56086
57026
  /**
@@ -56099,11 +57039,11 @@ declare namespace sap {
56099
57039
  */
56100
57040
  getInvalidValue(): any;
56101
57041
  /**
56102
- * Returns the array of all state messages combining the model and control messages.
57042
+ * Returns the array of all current state messages combining the model and control messages.
56103
57043
  */
56104
57044
  getMessages(): sap.ui.core.Message[];
56105
57045
  /**
56106
- * Returns the array of state messages of the model or undefined.
57046
+ * Returns the array of current state messages of the model.
56107
57047
  */
56108
57048
  getModelMessages(): sap.ui.core.Message[];
56109
57049
  /**
@@ -56472,6 +57412,12 @@ declare namespace sap {
56472
57412
  */
56473
57413
  bNewState?: boolean
56474
57414
  ): boolean;
57415
+ /**
57416
+ * @SINCE 1.98.0
57417
+ *
57418
+ * Returns an array of all model and control messages, regardless of whether they are old or new.
57419
+ */
57420
+ getAllMessages(): sap.ui.core.Message[];
56475
57421
  /**
56476
57422
  * Returns the changes of the data state in a map that the control can use in the `refreshDataState` method.
56477
57423
  * The changed property's name is the key in the map. Each element in the map contains an object with the
@@ -56480,7 +57426,7 @@ declare namespace sap {
56480
57426
  */
56481
57427
  getChanges(): object;
56482
57428
  /**
56483
- * Returns the array of state messages of the control.
57429
+ * Returns the array of this data state's current control messages.
56484
57430
  */
56485
57431
  getControlMessages(): sap.ui.core.Message[];
56486
57432
  /**
@@ -56490,12 +57436,12 @@ declare namespace sap {
56490
57436
  */
56491
57437
  getInvalidValue(): any;
56492
57438
  /**
56493
- * Returns the array of this data state's messages combining the model and control messages. The array is
56494
- * sorted descendingly by message severity.
57439
+ * Returns the array of this data state's current messages combining the model and control messages. The
57440
+ * array is sorted descendingly by message severity.
56495
57441
  */
56496
57442
  getMessages(): sap.ui.core.Message[];
56497
57443
  /**
56498
- * Returns the array of state messages of the model or undefined.
57444
+ * Returns the array of this data state's current model messages.
56499
57445
  */
56500
57446
  getModelMessages(): sap.ui.core.Message[];
56501
57447
  /**
@@ -57029,8 +57975,8 @@ declare namespace sap {
57029
57975
  *
57030
57976
  * Returns all current contexts of this list binding in no special order. Just like {@link #getCurrentContexts},
57031
57977
  * this method does not request any data from a back end and does not change the binding's state. In contrast
57032
- * to {@link #getCurrentContexts}, it does not only return the contexts as last requested by a control,
57033
- * but all that are currently available in the binding.
57978
+ * to {@link #getCurrentContexts}, it does not only return those contexts that were last requested by a
57979
+ * control, but all contexts that are currently available in the binding.
57034
57980
  */
57035
57981
  getAllCurrentContexts(): sap.ui.model.Context[];
57036
57982
  /**
@@ -57551,7 +58497,7 @@ declare namespace sap {
57551
58497
  * the server
57552
58498
  */
57553
58499
  bReload?: boolean
57554
- ): sap.ui.model.Context;
58500
+ ): sap.ui.model.Context | undefined;
57555
58501
  /**
57556
58502
  * Destroys the model and clears the model data.
57557
58503
  *
@@ -59351,9 +60297,8 @@ declare namespace sap {
59351
60297
  *
59352
60298
  * If this flag is set to `true`, the Safari browser runs in standalone fullscreen mode on iOS.
59353
60299
  *
59354
- * **Note:** This flag is only available if the Safari browser was detected. Furthermore, if this mode is
59355
- * detected, technically not a standard Safari is used. There might be slight differences in behavior and
59356
- * detection, e.g. the availability of {@link sap.ui.Device.browser.version}.
60300
+ * **Note:** This flag is only available if the Safari browser was detected. There might be slight differences
60301
+ * in behavior and detection, e.g. regarding the availability of {@link sap.ui.Device.browser.version}.
59357
60302
  */
59358
60303
  export const fullscreen: boolean;
59359
60304
 
@@ -59414,12 +60359,13 @@ declare namespace sap {
59414
60359
 
59415
60360
  /**
59416
60361
  * @SINCE 1.31.0
60362
+ * @deprecated (since 1.98)
59417
60363
  *
59418
60364
  * If this flag is set to `true`, the Safari browser runs in webview mode on iOS.
59419
60365
  *
59420
- * **Note:** This flag is only available if the Safari browser was detected. Furthermore, if this mode is
59421
- * detected, technically not a standard Safari is used. There might be slight differences in behavior and
59422
- * detection, e.g. the availability of {@link sap.ui.Device.browser.version}.
60366
+ * **Note:** Since iOS 11 it is no longer reliably possible to detect whether an application runs in `webview`.
60367
+ * The flag is `true` if the browser's user agent contains 'SAPFioriClient'. Applications using WKWebView
60368
+ * have the possibility to customize the user agent, and to explicitly add this information.
59423
60369
  */
59424
60370
  export const webview: boolean;
59425
60371
 
@@ -59800,11 +60746,6 @@ declare namespace sap {
59800
60746
  */
59801
60747
  export const android: boolean;
59802
60748
 
59803
- /**
59804
- * If this flag is set to `true`, a Blackberry operating system is used.
59805
- */
59806
- export const blackberry: boolean;
59807
-
59808
60749
  /**
59809
60750
  * If this flag is set to `true`, an iOS operating system is used.
59810
60751
  */
@@ -59832,14 +60773,14 @@ declare namespace sap {
59832
60773
  /**
59833
60774
  * The version of the operating system as `float`.
59834
60775
  *
59835
- * Might be `-1` if no version can be determined.
60776
+ * Might be `-1` if no version can reliably be determined.
59836
60777
  */
59837
60778
  export const version: float;
59838
60779
 
59839
60780
  /**
59840
60781
  * The version of the operating system as `string`.
59841
60782
  *
59842
- * Might be empty if no version can be determined.
60783
+ * Might be empty if no version can reliably be determined.
59843
60784
  */
59844
60785
  export const versionStr: string;
59845
60786
 
@@ -59848,11 +60789,6 @@ declare namespace sap {
59848
60789
  */
59849
60790
  export const windows: boolean;
59850
60791
 
59851
- /**
59852
- * If this flag is set to `true`, a Windows Phone operating system is used.
59853
- */
59854
- export const windows_phone: boolean;
59855
-
59856
60792
  /**
59857
60793
  * Enumeration containing the names of known operating systems.
59858
60794
  */
@@ -59864,13 +60800,6 @@ declare namespace sap {
59864
60800
  */
59865
60801
  export const ANDROID: undefined;
59866
60802
 
59867
- /**
59868
- * Blackberry operating system name.
59869
- * See:
59870
- * sap.ui.Device.os.name
59871
- */
59872
- export const BLACKBERRY: undefined;
59873
-
59874
60803
  /**
59875
60804
  * iOS operating system name.
59876
60805
  * See:
@@ -59898,13 +60827,6 @@ declare namespace sap {
59898
60827
  * sap.ui.Device.os.name
59899
60828
  */
59900
60829
  export const WINDOWS: undefined;
59901
-
59902
- /**
59903
- * Windows Phone operating system name.
59904
- * See:
59905
- * sap.ui.Device.os.name
59906
- */
59907
- export const WINDOWS_PHONE: undefined;
59908
60830
  }
59909
60831
  }
59910
60832
  /**
@@ -60164,6 +61086,22 @@ declare namespace sap {
60164
61086
  * If it is set to `true`, the Control Key modifier will be used
60165
61087
  */
60166
61088
  ctrlKey?: boolean | sap.ui.base.ManagedObject.PropertyBindingInfo;
61089
+
61090
+ /**
61091
+ * @SINCE 1.98
61092
+ *
61093
+ * Provide percent value for the X coordinate axis to calculate the position of the click event. The value
61094
+ * must be in the range [0 - 100]
61095
+ */
61096
+ xPercentage?: float | sap.ui.base.ManagedObject.PropertyBindingInfo;
61097
+
61098
+ /**
61099
+ * @SINCE 1.98
61100
+ *
61101
+ * Provide percent value for the Y coordinate axis to calculate the position of the click event. The value
61102
+ * must be in the range [0 - 100]
61103
+ */
61104
+ yPercentage?: float | sap.ui.base.ManagedObject.PropertyBindingInfo;
60167
61105
  }
60168
61106
 
60169
61107
  interface $ScrollSettings extends sap.ui.test.actions.$ActionSettings {
@@ -60714,6 +61652,24 @@ declare namespace sap {
60714
61652
  * If it is set to `true`, the Shift Key modifier will be used
60715
61653
  */
60716
61654
  getShiftKey(): boolean;
61655
+ /**
61656
+ * @SINCE 1.98
61657
+ *
61658
+ * Gets current value of property {@link #getXPercentage xPercentage}.
61659
+ *
61660
+ * Provide percent value for the X coordinate axis to calculate the position of the click event. The value
61661
+ * must be in the range [0 - 100]
61662
+ */
61663
+ getXPercentage(): float;
61664
+ /**
61665
+ * @SINCE 1.98
61666
+ *
61667
+ * Gets current value of property {@link #getYPercentage yPercentage}.
61668
+ *
61669
+ * Provide percent value for the Y coordinate axis to calculate the position of the click event. The value
61670
+ * must be in the range [0 - 100]
61671
+ */
61672
+ getYPercentage(): float;
60717
61673
  /**
60718
61674
  * @SINCE 1.97
60719
61675
  *
@@ -60759,6 +61715,38 @@ declare namespace sap {
60759
61715
  */
60760
61716
  bShiftKey: boolean
60761
61717
  ): this;
61718
+ /**
61719
+ * @SINCE 1.98
61720
+ *
61721
+ * Sets a new value for property {@link #getXPercentage xPercentage}.
61722
+ *
61723
+ * Provide percent value for the X coordinate axis to calculate the position of the click event. The value
61724
+ * must be in the range [0 - 100]
61725
+ *
61726
+ * When called with a value of `null` or `undefined`, the default value of the property will be restored.
61727
+ */
61728
+ setXPercentage(
61729
+ /**
61730
+ * New value for property `xPercentage`
61731
+ */
61732
+ fXPercentage: float
61733
+ ): this;
61734
+ /**
61735
+ * @SINCE 1.98
61736
+ *
61737
+ * Sets a new value for property {@link #getYPercentage yPercentage}.
61738
+ *
61739
+ * Provide percent value for the Y coordinate axis to calculate the position of the click event. The value
61740
+ * must be in the range [0 - 100]
61741
+ *
61742
+ * When called with a value of `null` or `undefined`, the default value of the property will be restored.
61743
+ */
61744
+ setYPercentage(
61745
+ /**
61746
+ * New value for property `yPercentage`
61747
+ */
61748
+ fYPercentage: float
61749
+ ): this;
60762
61750
  }
60763
61751
  /**
60764
61752
  * @SINCE 1.90
@@ -65220,6 +66208,8 @@ declare namespace sap {
65220
66208
 
65221
66209
  "sap/ui/core/format/NumberFormat": undefined;
65222
66210
 
66211
+ "sap/ui/core/format/TimezoneUtil": undefined;
66212
+
65223
66213
  "sap/ui/core/Fragment": undefined;
65224
66214
 
65225
66215
  "sap/ui/core/History": undefined;
@@ -65296,6 +66286,8 @@ declare namespace sap {
65296
66286
 
65297
66287
  "sap/ui/core/Patcher": undefined;
65298
66288
 
66289
+ "sap/ui/core/Placeholder": undefined;
66290
+
65299
66291
  "sap/ui/core/Popup": undefined;
65300
66292
 
65301
66293
  "sap/ui/core/postmessage/Bus": undefined;
@@ -65602,6 +66594,8 @@ declare namespace sap {
65602
66594
 
65603
66595
  "sap/ui/model/odata/type/DateTimeOffset": undefined;
65604
66596
 
66597
+ "sap/ui/model/odata/type/DateTimeWithTimezone": undefined;
66598
+
65605
66599
  "sap/ui/model/odata/type/Decimal": undefined;
65606
66600
 
65607
66601
  "sap/ui/model/odata/type/Double": undefined;