UNPKG

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

Version:

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

70 lines (64 loc) 3.7 kB
/** * Copyright © 2023-2024 Nevis Security AG. All rights reserved. */ import type { TurboModule } from 'react-native'; import { TurboModuleRegistry } from 'react-native'; import type { DeviceInformationCheckResultMessage } from './model/messages/in/DeviceInformationCheckResultMessage'; import type { DeviceInformationSyncResultMessage } from './model/messages/in/DeviceInformationSyncResultMessage'; import type { IsPolicyCompliantInMessage } from './model/messages/in/IsPolicyCompliantInMessage'; import type { LocalAccountsMessage } from './model/messages/in/LocalAccountsMessage'; import type { LocalAuthenticatorsMessage } from './model/messages/in/LocalAuthenticatorsMessage'; import type { LocalDeviceInformationMessage } from './model/messages/in/LocalDeviceInformationMessage'; import type { MetaDataInMessage } from './model/messages/in/MetaDataInMessage'; import type { OnSuccessMessage } from './model/messages/in/OnSuccessMessage'; import { OperationTypeMessage } from './model/messages/in/OperationTypeMessage'; import type { PendingOutOfBandOperationsResultMessage } from './model/messages/in/PendingOutOfBandOperationsResultMessage'; /* eslint-disable @typescript-eslint/no-wrapper-object-types */ export interface Spec extends TurboModule { // // Basic SDK invocations // initClient(message: Object): Promise<void>; payloadDecode(message: Object): Promise<OnSuccessMessage>; oobOperation(message: Object): Promise<OperationTypeMessage>; oobRegister(message: Object): Promise<void>; oobAuthenticate(message: Object): Promise<OnSuccessMessage>; inBandRegister(message: Object): Promise<void>; authCloudApiRegister(message: Object): Promise<void>; authenticate(message: Object): Promise<OnSuccessMessage>; deregister(message: Object): Promise<void>; deviceInformationChange(message: Object): Promise<void>; deviceInformationCheck(message: Object): Promise<DeviceInformationCheckResultMessage>; deviceInformationSync(message: Object): Promise<DeviceInformationSyncResultMessage>; pendingOutOfBandOperations(message: Object): Promise<PendingOutOfBandOperationsResultMessage>; pinChange(message: Object): Promise<void>; passwordChange(message: Object): Promise<void>; localAccounts(message: Object): Promise<LocalAccountsMessage>; localAuthenticators(message: Object): Promise<LocalAuthenticatorsMessage>; localDeleteAuthenticator(message: Object): Promise<void>; localDeviceInformation(message: Object): Promise<LocalDeviceInformationMessage>; // // Auxiliary SDK invocations // authenticatorAaid(message: Object): Promise<void>; pinEnroll(message: Object): Promise<void>; pinsChange(message: Object): Promise<void>; pinValidatedForEnrollment(message: Object): Promise<void>; pinValidatedForPinChange(message: Object): Promise<void>; pinVerify(message: Object): Promise<void>; passwordEnroll(message: Object): Promise<void>; passwordsChange(message: Object): Promise<void>; passwordValidatedForEnrollment(message: Object): Promise<void>; passwordValidatedForPasswordChange(message: Object): Promise<void>; passwordVerify(message: Object): Promise<void>; accountUsername(name: Object): Promise<void>; cancel(message: Object): Promise<void>; isPolicyCompliant(message: Object): Promise<IsPolicyCompliantInMessage>; listenForOsCredentials(message: Object): Promise<void>; cancelAuthentication(message: Object): Promise<void>; pauseListening(message: Object): Promise<void>; resumeListening(message: Object): Promise<void>; metaData(message: Object): Promise<MetaDataInMessage>; } /* eslint-enable @typescript-eslint/no-wrapper-object-types */ export default TurboModuleRegistry.getEnforcing<Spec>('NevisMobileAuthenticationSdkReact');