__finishValidationPass({
      syncValidationResult = [],
      asyncValidationResult = [],
      metaValidators = [],
    } = {}) {
      const syncAndAsyncOutcome = [...syncValidationResult, ...asyncValidationResult];
      // if we have any MetaValidators left, now is the time to run them...
      const metaOutCome = /** @type {ValidationResultEntry[]} */ (
        this.__executeMetaValidators(syncAndAsyncOutcome, metaValidators)
      );
      this.__validationResult = [...metaOutCome, ...syncAndAsyncOutcome];

      const ctor = /** @type {ValidateHostConstructor} */ (this.constructor);

      /** @type {ValidationStates} */
      const validationStates = ctor.validationTypes.reduce(
        (acc, type) => ({ ...acc, [type]: {} }),
        {},
      );
      for (const { validator, outcome } of this.__validationResult) {
        if (!validationStates[validator.type]) {
          validationStates[validator.type] = {};
        }
        const vCtor = /** @type {typeof Validator} */ (validator.constructor);
        validationStates[validator.type][vCtor.validatorName] = outcome;
      }
      this.validationStates = validationStates;

      this.hasFeedbackFor = [
        ...new Set(this.__validationResult.map(({ validator }) => validator.type)),
      ];
      /** private event that should be listened to by LionFieldSet */
      this.dispatchEvent(new Event('validate-performed', { bubbles: true }));
    }
A 'pass' is a single run of the validation process, which will be triggered in these cases:
- on clear or disable
- on sync validation
- on async validation (can depend on server response)

This method inishes a pass by adding the properties to the instance:
- validationStates
- hasFeedbackFor

It sends a private event validate-performed, which is received by parent Formgroups.

@param {object} options
@param {ValidationResultEntry[]} [options.syncValidationResult]
@param {ValidationResultEntry[]} [options.asyncValidationResult]
@param {MetaValidator[]} [options.metaValidators] MetaValidators to be executed
@private
If not, we have nothing left to wait for.