/* * DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/security/manager/ssl/nsISecretDecoderRing.idl */ #ifndef __gen_nsISecretDecoderRing_h__ #define __gen_nsISecretDecoderRing_h__ #include "nsISupports.h" #include "nsTArray.h" #include "js/Value.h" #include "js/GCAnnotations.h" /* For IDL files that don't want to include root IDL files. */ #ifndef NS_NO_VTABLE #define NS_NO_VTABLE #endif /* starting interface: nsISecretDecoderRing */ #define NS_ISECRETDECODERRING_IID_STR "0ec80360-075c-11d4-9fd4-00c04f1b83d8" #define NS_ISECRETDECODERRING_IID \ {0x0ec80360, 0x075c, 0x11d4, \ { 0x9f, 0xd4, 0x00, 0xc0, 0x4f, 0x1b, 0x83, 0xd8 }} class NS_NO_VTABLE MOZ_BINDING(binding_to, idl, class, XPIDL_nsISecretDecoderRing) nsISecretDecoderRing : public nsISupports { public: NS_INLINE_DECL_STATIC_IID(NS_ISECRETDECODERRING_IID) /* Used by ToJSValue to check which scriptable interface is implemented. */ using ScriptableInterfaceType = nsISecretDecoderRing; /* [must_use] ACString encryptString (in ACString text); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_encryptString) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD EncryptString(const nsACString& text, nsACString& _retval) = 0; /* [implicit_jscontext,must_use] Promise asyncEncryptStrings (in Array plaintexts); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_asyncEncryptStrings) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD AsyncEncryptStrings(const nsTArray& plaintexts, JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0; /* [must_use] ACString decryptString (in ACString encryptedBase64Text); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_decryptString) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD DecryptString(const nsACString& encryptedBase64Text, nsACString& _retval) = 0; /* [implicit_jscontext,must_use] Promise asyncDecryptStrings (in Array encryptedStrings); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_asyncDecryptStrings) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD AsyncDecryptStrings(const nsTArray& encryptedStrings, JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0; /* [must_use] boolean login (in AUTF8String password); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_login) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD Login(const nsACString& password, bool *_retval) = 0; /* [must_use] void logout (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_logout) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD Logout(void) = 0; /* [must_use] void logoutAndTeardown (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_logoutAndTeardown) JS_HAZ_CAN_RUN_SCRIPT [[nodiscard]] NS_IMETHOD LogoutAndTeardown(void) = 0; }; /* Use this macro when declaring classes that implement this interface. */ #define NS_DECL_NSISECRETDECODERRING \ [[nodiscard]] NS_IMETHOD EncryptString(const nsACString& text, nsACString& _retval) override; \ [[nodiscard]] NS_IMETHOD AsyncEncryptStrings(const nsTArray& plaintexts, JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \ [[nodiscard]] NS_IMETHOD DecryptString(const nsACString& encryptedBase64Text, nsACString& _retval) override; \ [[nodiscard]] NS_IMETHOD AsyncDecryptStrings(const nsTArray& encryptedStrings, JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \ [[nodiscard]] NS_IMETHOD Login(const nsACString& password, bool *_retval) override; \ [[nodiscard]] NS_IMETHOD Logout(void) override; \ [[nodiscard]] NS_IMETHOD LogoutAndTeardown(void) override; /* Use this macro when declaring the members of this interface when the class doesn't implement the interface. This is useful for forwarding. */ #define NS_DECL_NON_VIRTUAL_NSISECRETDECODERRING \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_encryptString)\ [[nodiscard]] nsresult EncryptString(const nsACString& text, nsACString& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_asyncEncryptStrings)\ [[nodiscard]] nsresult AsyncEncryptStrings(const nsTArray& plaintexts, JSContext* cx, ::mozilla::dom::Promise * * _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_decryptString)\ [[nodiscard]] nsresult DecryptString(const nsACString& encryptedBase64Text, nsACString& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_asyncDecryptStrings)\ [[nodiscard]] nsresult AsyncDecryptStrings(const nsTArray& encryptedStrings, JSContext* cx, ::mozilla::dom::Promise * * _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_login)\ [[nodiscard]] nsresult Login(const nsACString& password, bool *_retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_logout)\ [[nodiscard]] nsresult Logout(void); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsISecretDecoderRing_logoutAndTeardown)\ [[nodiscard]] nsresult LogoutAndTeardown(void); /* Use this macro to declare functions that forward the behavior of this interface to another object. */ #define NS_FORWARD_NSISECRETDECODERRING(_to) \ [[nodiscard]] NS_IMETHOD EncryptString(const nsACString& text, nsACString& _retval) override { return _to EncryptString(text, _retval); } \ [[nodiscard]] NS_IMETHOD AsyncEncryptStrings(const nsTArray& plaintexts, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to AsyncEncryptStrings(plaintexts, cx, _retval); } \ [[nodiscard]] NS_IMETHOD DecryptString(const nsACString& encryptedBase64Text, nsACString& _retval) override { return _to DecryptString(encryptedBase64Text, _retval); } \ [[nodiscard]] NS_IMETHOD AsyncDecryptStrings(const nsTArray& encryptedStrings, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to AsyncDecryptStrings(encryptedStrings, cx, _retval); } \ [[nodiscard]] NS_IMETHOD Login(const nsACString& password, bool *_retval) override { return _to Login(password, _retval); } \ [[nodiscard]] NS_IMETHOD Logout(void) override { return _to Logout(); } \ [[nodiscard]] NS_IMETHOD LogoutAndTeardown(void) override { return _to LogoutAndTeardown(); } /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ #define NS_FORWARD_SAFE_NSISECRETDECODERRING(_to) \ [[nodiscard]] NS_IMETHOD EncryptString(const nsACString& text, nsACString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->EncryptString(text, _retval); } \ [[nodiscard]] NS_IMETHOD AsyncEncryptStrings(const nsTArray& plaintexts, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AsyncEncryptStrings(plaintexts, cx, _retval); } \ [[nodiscard]] NS_IMETHOD DecryptString(const nsACString& encryptedBase64Text, nsACString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->DecryptString(encryptedBase64Text, _retval); } \ [[nodiscard]] NS_IMETHOD AsyncDecryptStrings(const nsTArray& encryptedStrings, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AsyncDecryptStrings(encryptedStrings, cx, _retval); } \ [[nodiscard]] NS_IMETHOD Login(const nsACString& password, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Login(password, _retval); } \ [[nodiscard]] NS_IMETHOD Logout(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Logout(); } \ [[nodiscard]] NS_IMETHOD LogoutAndTeardown(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->LogoutAndTeardown(); } #endif /* __gen_nsISecretDecoderRing_h__ */