diff --git a/index.bs b/index.bs
index a5e5410..3f8425f 100644
--- a/index.bs
+++ b/index.bs
@@ -983,22 +983,23 @@ spec:css-syntax-3;
then return [=a promise rejected with=]
|options|.{{CredentialRequestOptions/signal}}
's [=AbortSignal/abort reason=].
- 1. If |options|.{{CredentialRequestOptions/mediation}}
is
- "{{CredentialMediationRequirement/conditional}}":
+ 1. Let |interfaces| be |options|'s [=relevant credential interface objects=].
- 1. For each |interface| in |options|' [=relevant credential interface objects=]:
+ 1. If |interfaces| is [=set/empty=], then return[=a promise rejected with=]
+ a "{{NotSupportedError}}" {{DOMException}}.
- 1. If |interface| does not support {{CredentialMediationRequirement/conditional}}
- [=user mediation=], return [=a promise rejected with=] a "{{TypeError}}" {{DOMException}}.
+ 1. [=set/For each=] |interface| of |interfaces|:
- 1. For each |interface| in |options|' relevant credential interface objects:
+ 1. If |options|.{{CredentialRequestOptions/mediation}} is
+ {{CredentialMediationRequirement/conditional}} and |interface| does
+ not support {{CredentialMediationRequirement/conditional}}
+ [=user mediation=], return [=a promise rejected with=]
+ a "{{TypeError}}" {{DOMException}}.
1. If |settings|' [=active credential types=] [=set/contains=] |interface|'s
{{Credential/[[type]]}}, return [=a promise rejected with=] a "{{NotAllowedError}}"
{{DOMException}}.
- 1. For each |interface| in |options|' relevant credential interface objects:
-
1. [=set/Append=] |interface|'s {{Credential/[[type]]}} to |settings|'
[=active credential types=].
@@ -1082,7 +1083,7 @@ spec:css-syntax-3;
1. [=React=] to |p|:
- 1. For each |interface| in |options|' relevant credential interface objects:
+ 1. For each |interface| in |interfaces|:
1. [=set/Remove=] |interface|'s {{Credential/[[type]]}} from |settings|'
[=active credential types=].