function validateDefaultClass(oAggregation, oOriginalAggregationInfo, fnClass) {
		const fnDefaultClass = oOriginalAggregationInfo.defaultClass;

		// we check if:
		//    1. the defaultClass matches the aggregation type
		//    2. the defaultClass matches the altTypes ('object' must not be included)
		//    3. the defaultClass defined with a nullish value
		if (fnDefaultClass) {
			if (!BaseObject.isObjectA(fnDefaultClass.prototype, oAggregation.type)) {
				throw new TypeError(`The 'defaultClass' of the aggregation '${oAggregation.name}' in '${fnClass.getName()}' is not of type '${oAggregation.type}'.`);
			} else if (oAggregation.altTypes?.includes("object")) {
				throw new TypeError(`The aggregation '${oAggregation.name}' in '${fnClass.getName()}' must not defined a 'defaultClass' together with the altType 'object'.`);
			}
		} else if (oOriginalAggregationInfo.hasOwnProperty("defaultClass")) {
			throw new TypeError(`The 'defaultClass' of the aggregation '${oAggregation.name}' in '${fnClass.getName()}' is defined with a nullish value (${fnDefaultClass}).`);
		}

		return fnDefaultClass;
	}
Validates the given default class against its aggregation type.