/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/security/manager/ssl/nsIPKCS11Token.idl
*/
#ifndef __gen_nsIPKCS11Token_h__
#define __gen_nsIPKCS11Token_h__
#include "nsISupports.h"
#include "js/Value.h"
/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
/* starting interface: nsIPKCS11Token */
#define NS_IPKCS11TOKEN_IID_STR "51191434-1dd2-11b2-a17c-e49c4e99a4e3"
#define NS_IPKCS11TOKEN_IID \
{0x51191434, 0x1dd2, 0x11b2, \
{ 0xa1, 0x7c, 0xe4, 0x9c, 0x4e, 0x99, 0xa4, 0xe3 }}
class NS_NO_VTABLE MOZ_BINDING(binding_to, idl, class, XPIDL_nsIPKCS11Token) nsIPKCS11Token : public nsISupports {
public:
NS_INLINE_DECL_STATIC_IID(NS_IPKCS11TOKEN_IID)
/* Used by ToJSValue to check which scriptable interface is implemented. */
using ScriptableInterfaceType = nsIPKCS11Token;
/* [must_use] readonly attribute AUTF8String tokenName; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenName)
[[nodiscard]] NS_IMETHOD GetTokenName(nsACString& aTokenName) = 0;
/* [must_use] readonly attribute boolean isInternalKeyToken; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_isInternalKeyToken)
[[nodiscard]] NS_IMETHOD GetIsInternalKeyToken(bool *aIsInternalKeyToken) = 0;
/* [must_use] readonly attribute AUTF8String tokenManID; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenManID)
[[nodiscard]] NS_IMETHOD GetTokenManID(nsACString& aTokenManID) = 0;
/* [must_use] readonly attribute AUTF8String tokenHWVersion; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenHWVersion)
[[nodiscard]] NS_IMETHOD GetTokenHWVersion(nsACString& aTokenHWVersion) = 0;
/* [must_use] readonly attribute AUTF8String tokenFWVersion; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenFWVersion)
[[nodiscard]] NS_IMETHOD GetTokenFWVersion(nsACString& aTokenFWVersion) = 0;
/* [must_use] readonly attribute AUTF8String tokenSerialNumber; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenSerialNumber)
[[nodiscard]] NS_IMETHOD GetTokenSerialNumber(nsACString& aTokenSerialNumber) = 0;
/* [must_use] readonly attribute boolean isLoggedIn; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_isLoggedIn)
[[nodiscard]] NS_IMETHOD GetIsLoggedIn(bool *aIsLoggedIn) = 0;
/* [implicit_jscontext,must_use] Promise login (); */
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_login)
[[nodiscard]] NS_IMETHOD Login(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext,must_use] Promise logout (); */
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_logout)
[[nodiscard]] NS_IMETHOD Logout(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext,must_use] Promise reset (); */
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_reset)
[[nodiscard]] NS_IMETHOD Reset(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext,must_use] Promise changePassword (in AUTF8String oldPassword, in AUTF8String newPassword); */
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_changePassword)
[[nodiscard]] NS_IMETHOD ChangePassword(const nsACString& oldPassword, const nsACString& newPassword, JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [must_use] readonly attribute boolean canHavePassword; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_canHavePassword)
[[nodiscard]] NS_IMETHOD GetCanHavePassword(bool *aCanHavePassword) = 0;
/* [must_use] readonly attribute boolean hasPassword; */
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_hasPassword)
[[nodiscard]] NS_IMETHOD GetHasPassword(bool *aHasPassword) = 0;
};
/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIPKCS11TOKEN \
[[nodiscard]] NS_IMETHOD GetTokenName(nsACString& aTokenName) override; \
[[nodiscard]] NS_IMETHOD GetIsInternalKeyToken(bool *aIsInternalKeyToken) override; \
[[nodiscard]] NS_IMETHOD GetTokenManID(nsACString& aTokenManID) override; \
[[nodiscard]] NS_IMETHOD GetTokenHWVersion(nsACString& aTokenHWVersion) override; \
[[nodiscard]] NS_IMETHOD GetTokenFWVersion(nsACString& aTokenFWVersion) override; \
[[nodiscard]] NS_IMETHOD GetTokenSerialNumber(nsACString& aTokenSerialNumber) override; \
[[nodiscard]] NS_IMETHOD GetIsLoggedIn(bool *aIsLoggedIn) override; \
[[nodiscard]] NS_IMETHOD Login(JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
[[nodiscard]] NS_IMETHOD Logout(JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
[[nodiscard]] NS_IMETHOD Reset(JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
[[nodiscard]] NS_IMETHOD ChangePassword(const nsACString& oldPassword, const nsACString& newPassword, JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
[[nodiscard]] NS_IMETHOD GetCanHavePassword(bool *aCanHavePassword) override; \
[[nodiscard]] NS_IMETHOD GetHasPassword(bool *aHasPassword) 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_NSIPKCS11TOKEN \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenName)\
[[nodiscard]] nsresult GetTokenName(nsACString& aTokenName); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_isInternalKeyToken)\
[[nodiscard]] nsresult GetIsInternalKeyToken(bool *aIsInternalKeyToken); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenManID)\
[[nodiscard]] nsresult GetTokenManID(nsACString& aTokenManID); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenHWVersion)\
[[nodiscard]] nsresult GetTokenHWVersion(nsACString& aTokenHWVersion); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenFWVersion)\
[[nodiscard]] nsresult GetTokenFWVersion(nsACString& aTokenFWVersion); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_tokenSerialNumber)\
[[nodiscard]] nsresult GetTokenSerialNumber(nsACString& aTokenSerialNumber); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_isLoggedIn)\
[[nodiscard]] nsresult GetIsLoggedIn(bool *aIsLoggedIn); \
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_login)\
[[nodiscard]] nsresult Login(JSContext* cx, ::mozilla::dom::Promise * * _retval); \
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_logout)\
[[nodiscard]] nsresult Logout(JSContext* cx, ::mozilla::dom::Promise * * _retval); \
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_reset)\
[[nodiscard]] nsresult Reset(JSContext* cx, ::mozilla::dom::Promise * * _retval); \
MOZ_BINDING(binding_to, idl, method, XPIDL_nsIPKCS11Token_changePassword)\
[[nodiscard]] nsresult ChangePassword(const nsACString& oldPassword, const nsACString& newPassword, JSContext* cx, ::mozilla::dom::Promise * * _retval); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_canHavePassword)\
[[nodiscard]] nsresult GetCanHavePassword(bool *aCanHavePassword); \
MOZ_BINDING(binding_to, idl, getter, XPIDL_nsIPKCS11Token_hasPassword)\
[[nodiscard]] nsresult GetHasPassword(bool *aHasPassword);
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIPKCS11TOKEN(_to) \
[[nodiscard]] NS_IMETHOD GetTokenName(nsACString& aTokenName) override { return _to GetTokenName(aTokenName); } \
[[nodiscard]] NS_IMETHOD GetIsInternalKeyToken(bool *aIsInternalKeyToken) override { return _to GetIsInternalKeyToken(aIsInternalKeyToken); } \
[[nodiscard]] NS_IMETHOD GetTokenManID(nsACString& aTokenManID) override { return _to GetTokenManID(aTokenManID); } \
[[nodiscard]] NS_IMETHOD GetTokenHWVersion(nsACString& aTokenHWVersion) override { return _to GetTokenHWVersion(aTokenHWVersion); } \
[[nodiscard]] NS_IMETHOD GetTokenFWVersion(nsACString& aTokenFWVersion) override { return _to GetTokenFWVersion(aTokenFWVersion); } \
[[nodiscard]] NS_IMETHOD GetTokenSerialNumber(nsACString& aTokenSerialNumber) override { return _to GetTokenSerialNumber(aTokenSerialNumber); } \
[[nodiscard]] NS_IMETHOD GetIsLoggedIn(bool *aIsLoggedIn) override { return _to GetIsLoggedIn(aIsLoggedIn); } \
[[nodiscard]] NS_IMETHOD Login(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to Login(cx, _retval); } \
[[nodiscard]] NS_IMETHOD Logout(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to Logout(cx, _retval); } \
[[nodiscard]] NS_IMETHOD Reset(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to Reset(cx, _retval); } \
[[nodiscard]] NS_IMETHOD ChangePassword(const nsACString& oldPassword, const nsACString& newPassword, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to ChangePassword(oldPassword, newPassword, cx, _retval); } \
[[nodiscard]] NS_IMETHOD GetCanHavePassword(bool *aCanHavePassword) override { return _to GetCanHavePassword(aCanHavePassword); } \
[[nodiscard]] NS_IMETHOD GetHasPassword(bool *aHasPassword) override { return _to GetHasPassword(aHasPassword); }
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIPKCS11TOKEN(_to) \
[[nodiscard]] NS_IMETHOD GetTokenName(nsACString& aTokenName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTokenName(aTokenName); } \
[[nodiscard]] NS_IMETHOD GetIsInternalKeyToken(bool *aIsInternalKeyToken) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsInternalKeyToken(aIsInternalKeyToken); } \
[[nodiscard]] NS_IMETHOD GetTokenManID(nsACString& aTokenManID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTokenManID(aTokenManID); } \
[[nodiscard]] NS_IMETHOD GetTokenHWVersion(nsACString& aTokenHWVersion) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTokenHWVersion(aTokenHWVersion); } \
[[nodiscard]] NS_IMETHOD GetTokenFWVersion(nsACString& aTokenFWVersion) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTokenFWVersion(aTokenFWVersion); } \
[[nodiscard]] NS_IMETHOD GetTokenSerialNumber(nsACString& aTokenSerialNumber) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTokenSerialNumber(aTokenSerialNumber); } \
[[nodiscard]] NS_IMETHOD GetIsLoggedIn(bool *aIsLoggedIn) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsLoggedIn(aIsLoggedIn); } \
[[nodiscard]] NS_IMETHOD Login(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Login(cx, _retval); } \
[[nodiscard]] NS_IMETHOD Logout(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Logout(cx, _retval); } \
[[nodiscard]] NS_IMETHOD Reset(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Reset(cx, _retval); } \
[[nodiscard]] NS_IMETHOD ChangePassword(const nsACString& oldPassword, const nsACString& newPassword, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ChangePassword(oldPassword, newPassword, cx, _retval); } \
[[nodiscard]] NS_IMETHOD GetCanHavePassword(bool *aCanHavePassword) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCanHavePassword(aCanHavePassword); } \
[[nodiscard]] NS_IMETHOD GetHasPassword(bool *aHasPassword) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHasPassword(aHasPassword); }
#endif /* __gen_nsIPKCS11Token_h__ */