async showAvailableElements(bOverlayIsSibling, sAggregationName, aResponsibleElementOverlays, iIndex, sControlName, sDisplayText) {
			const oResponsibleElementOverlay = aResponsibleElementOverlays[0];
			const mParents = AdditionalElementsUtils.getParents(bOverlayIsSibling, oResponsibleElementOverlay, this);
			const vSiblingElement = bOverlayIsSibling && oResponsibleElementOverlay.getElement();

			const mRetrievedActions = await ActionExtractor.getActions(bOverlayIsSibling, oResponsibleElementOverlay, this, undefined, this.getDesignTime());
			let aCollectedElements = [];
			const mActions = mRetrievedActions[sAggregationName];
			if (sAggregationName !== "$$OnlyChildCustomField$$") {
				try {
					aCollectedElements = await this.getAllElements(bOverlayIsSibling, [mParents.responsibleElementOverlay], sControlName, sDisplayText);
				} catch (oError) {
					if (oError instanceof Error) {
						throw oError;
					} else {
						Log.info("Service not up to date, skipping add dialog", "sap.ui.rta");
						return;
					}
				}
			}

			configureExtensibility.call(this, bOverlayIsSibling);
			const oAggregationWithElements = aCollectedElements.filter(function(mElementsPerAggregation) {
				return mElementsPerAggregation.aggregation === sAggregationName;
			})[0];
			const aElementsPerAggregation = oAggregationWithElements ? oAggregationWithElements.elements : [];

			this.getDialog().setElements(aElementsPerAggregation);
			if (sDisplayText) {
				// Aggregation is part of title
				const oTextResources = Lib.getResourceBundleFor("sap.ui.rta");
				const sDialogTitle = oTextResources.getText("HEADER_ADDITIONAL_ELEMENTS_WITH_AGGREGATION", [sDisplayText]);
				this.getDialog().setTitle(sDialogTitle);
			} else if (sAggregationName || sControlName) {
				// Only one aggregation, no aggregation in title
				this._setDialogTitle(mActions || {}, mParents.parent, sControlName);
			}

			try {
				await this.getDialog().open();

				const aSelectedElements = this.getDialog().getSelectedElements();
				await CommandBuilder.createCommands(mParents,
					vSiblingElement,
					mActions,
					iIndex,
					aSelectedElements,
					sAggregationName,
					this
				);

				const oOverlayToFocus = OverlayRegistry.getOverlay(vSiblingElement) || oResponsibleElementOverlay;
				oOverlayToFocus.focus();
			} catch (oError) {
				// no error means canceled dialog
				if (oError instanceof Error) {
					throw oError;
				}
			}
		}
Opens a dialog containing all the elements that can be added for a control and aggregation
@param {boolean} bOverlayIsSibling - Indicates if the elements should be added as sibling (true) or child (false) to the overlay
@param {string} sAggregationName - The name of the aggregation to where the elements can be added
@param {Array<sap.ui.dt.ElementOverlay>} aResponsibleElementOverlays - Array containing the overlay of the control
@param {number} [iIndex] - The position where the element will be added
@param {string} [sControlName] - The name of the control
@param {sDisplayText} [sDisplayText] - The display text of the control for the dialog

@returns {Promise} Resolves when the dialog closes