src/sap.ui.core/src/sap/ui/model/odata/v4/AnnotationHelper.js
function (vRawValue, oDetails) {
				var sPath = typeof vRawValue === "string"
						? "/" + oDetails.schemaChildName + "/" + vRawValue
						: oDetails.context.getPath();

				return oDetails.$$valueAsPromise
					? oDetails.context.getModel().fetchValueListType(sPath).unwrap()
					: oDetails.context.getModel().getValueListType(sPath);
			}
function (vRawValue, oDetails) {
				var sPath = typeof vRawValue === "string"
						? "/" + oDetails.schemaChildName + "/" + vRawValue
						: oDetails.context.getPath();

				return oDetails.$$valueAsPromise
					? oDetails.context.getModel().fetchValueListType(sPath).unwrap()
					: oDetails.context.getModel().getValueListType(sPath);
			}
function ( vRawValue , oDetails ) { var sPath = typeof vRawValue === "string" ? "/" + oDetails . schemaChildName + "/" + vRawValue : oDetails . context . getPath ( ) ; return oDetails . $$valueAsPromise ? oDetails . context . getModel ( ) . fetchValueListType ( sPath ) . unwrap ( ) : oDetails . context . getModel ( ) . getValueListType ( sPath ) ; }
Determines which type of value list exists for the given property.

@param {any} vRawValue
The raw value from the meta model; must be either a property or a path pointing to
a property (relative to <code>oDetails.schemaChildName</code>)
@param {object} oDetails
The details object
@param {boolean} [oDetails.$$valueAsPromise]
Whether a <code>Promise</code> may be returned if the needed metadata is not yet
loaded (since 1.57.0)
@param {sap.ui.model.Context} oDetails.context
Points to the given path, that is
<code>oDetails.context.getProperty("") === vRawValue</code>
@param {string} oDetails.schemaChildName
The qualified name of the schema child where the computed annotation has been
found, for example "name.space.EntityType"
@returns {sap.ui.model.odata.v4.ValueListType|Promise}
The type of the value list or a <code>Promise</code> resolving with the type of the
value list or rejected, if the property cannot be found in the metadata
@throws {Error}
If the property cannot be found in the metadata, or if
<code>$$valueAsPromise</code> is not set to <code>true</code> and the metadata is
not yet loaded

@public
@since 1.47.0
Determines which type of value list exists for the given property .