summaryrefslogtreecommitdiffstats
path: root/dom/webauthn/nsIU2FTokenManager.idl
diff options
context:
space:
mode:
Diffstat (limited to 'dom/webauthn/nsIU2FTokenManager.idl')
-rw-r--r--dom/webauthn/nsIU2FTokenManager.idl40
1 files changed, 40 insertions, 0 deletions
diff --git a/dom/webauthn/nsIU2FTokenManager.idl b/dom/webauthn/nsIU2FTokenManager.idl
new file mode 100644
index 0000000000..4f835dc853
--- /dev/null
+++ b/dom/webauthn/nsIU2FTokenManager.idl
@@ -0,0 +1,40 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#include "nsISupports.idl"
+
+/**
+ * TODO(1737205,1819414) Fold this interface into nsIWebAuthnController when we
+ * remove the legacy U2F DOM API.
+ *
+ * nsIU2FTokenManager
+ *
+ * An interface to the U2FTokenManager singleton.
+ *
+ * This should be used only by the WebAuthn browser UI prompts.
+ */
+
+[scriptable, uuid(745e1eac-e449-4342-bca1-ee0e6ead09fc)]
+interface nsIU2FTokenManager : nsISupports
+{
+ /**
+ * Resumes the current WebAuthn/U2F transaction if that matches the given
+ * transaction ID. This is used only when direct attestation was requested
+ * and we have to wait for user input to proceed.
+ *
+ * @param aTransactionID : The ID of the transaction to resume.
+ * @param aForceNoneAttestation : The user might enforce none attestation.
+ */
+ void resumeRegister(in uint64_t aTransactionID,
+ in bool aForceNoneAttestation);
+
+ /**
+ * Cancels the current WebAuthn/U2F transaction if that matches the given
+ * transaction ID.
+ *
+ * @param aTransactionID : The ID of the transaction to cancel.
+ */
+ void cancel(in uint64_t aTransactionID);
+};