UNPKG

@nevis-security/nevis-mobile-authentication-sdk-react

Version:

React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.

69 lines 3.19 kB
/** * Copyright © 2023-2024 Nevis Security AG. All rights reserved. */ import { RegistrationInfo } from './RegistrationInfo'; import { UserEnrollment } from './UserEnrollment'; /** * An object describing an authenticator. */ export declare abstract class Authenticator { /** * The "Authenticator Attestation ID" (AAID), which identifies the type and batch of the * authenticator. */ abstract aaid: string; /** * The object containing the registration information of this `Authenticator`. */ abstract registration: RegistrationInfo; /** * The user enrollment information. * * If this is an OS based authenticator (such as the fingerprint authenticator) the user * is enrolled when fingerprints are defined at the operating system level. * * If the authenticator is managed at the SDK level (PIN or password), the credentials are * defined during registration using either a {@link PinEnroller} or {@link PasswordEnroller}. * * If the user is not enrolled in a system managed authenticator (fingerprint, biometric), the * authenticator cannot be used to do a registration or an authentication. * * If an authenticator that is not supported is provided through {@link AuthenticatorSelector} * for registration or authentication operations, an {@link OperationError} will be returned * as a result of the operation. */ abstract userEnrollment: UserEnrollment; /** * Returns whether the device has hardware supporting this authenticator or not. For example * if this is a fingerprint authenticator and the mobile device where the SDK is running does * not have a fingerprint sensor, this method will return `false`. * * If an authenticator that is not supported is provided through {@link AuthenticatorSelector} * for registration or authentication operations, an {@link OperationError} will be returned * as a result of the operation. */ abstract isSupportedByHardware: boolean; /** * Returns whether the Operating System supports this authenticator or not. For example * if the current platform is Android and this is a biometric authenticator * and the Android API level in the device does not support the required interfaces by the SDK, * this method will return `false`. * * If an authenticator that is not supported is provided through {@link AuthenticatorSelector} * for registration or authentication operations, an {@link OperationError} will be returned * as a result of the operation. * * **NOTE** \ * On iOS the value will be always `true`. Use {@link Authenticator.isSupportedByHardware} * to detect whether the device has hardware supporting the FaceID or TouchID authenticators. */ abstract isSupportedByOs: boolean; /** * Alternate constructor that creates an {@link Authenticator} from a json. * * @param json contains the source for instance creation. * @returns an {@link Authenticator} instance. */ static fromJson(json: any): Authenticator; } //# sourceMappingURL=Authenticator.d.ts.map