---
Source: https://docs.microblink.com/platform-web-sdk/v1.7.x/state/types
---

[**Microblink Platform SDK**](../index.md)

***

[Microblink Platform SDK](../index.md) / state/types

# state/types

## Enumerations {/* #enumerations */}

### MachineEventTypes {/* #machineeventtypes */}

#### Enumeration Members {/* #enumeration-members */}

| Enumeration Member | Value | 
| ------ | ------ | 
| <a id="abort"></a> `ABORT` | `"abort"` | 
| <a id="complete"></a> `COMPLETE` | `"complete"` | 
| <a id="continue"></a> `CONTINUE` | `"continue"` | 
| <a id="error"></a> `ERROR` | `"error"` | 
| <a id="reset"></a> `RESET` | `"reset"` | 
| <a id="retry"></a> `RETRY` | `"retry"` | 
| <a id="run_d2d"></a> `RUN_D2D` | `"run_d2d"` | 
| <a id="set_state"></a> `SET_STATE` | `"set_state"` | 
| <a id="start"></a> `START` | `"start"` | 
| <a id="submit_feedback"></a> `SUBMIT_FEEDBACK` | `"submit_feedback"` | 
| <a id="update_transaction_state"></a> `UPDATE_TRANSACTION_STATE` | `"update_transaction_state"` | 
| <a id="update_upload_progress_context"></a> `UPDATE_UPLOAD_PROGRESS_CONTEXT` | `"update_upload_progress_context"` | 

***

### MachineStates {/* #machinestates */}

#### Enumeration Members {/* #enumeration-members-1 */}

| Enumeration Member | Value | 
| ------ | ------ | 
| <a id="camerapermissionerror"></a> `cameraPermissionError` | `"cameraPermissionError"` | 
| <a id="cameraselection"></a> `cameraSelection` | `"cameraSelection"` | 
| <a id="cameraselectionerror"></a> `cameraSelectionError` | `"cameraSelectionError"` | 
| <a id="capabilityerror"></a> `capabilityError` | `"capabilityError"` | 
| <a id="d2dabort"></a> `d2dAbort` | `"d2dAbort"` | 
| <a id="d2daddnewdevice"></a> `d2dAddNewDevice` | `"d2dAddNewDevice"` | 
| <a id="d2dconnect"></a> `d2dConnect` | `"d2dConnect"` | 
| <a id="d2dconnecterror"></a> `d2dConnectError` | `"d2dConnectError"` | 
| <a id="d2dflowend"></a> `d2dFlowEnd` | `"d2dFlowEnd"` | 
| <a id="d2didle"></a> `d2dIdle` | `"d2dIdle"` | 
| <a id="d2dinit"></a> `d2dInit` | `"d2dInit"` | 
| <a id="d2diniterror"></a> `d2dInitError` | `"d2dInitError"` | 
| <a id="executecapability"></a> `executeCapability` | `"executeCapability"` | 
| <a id="executecapabilityerror"></a> `executeCapabilityError` | `"executeCapabilityError"` | 
| <a id="flowend"></a> `flowEnd` | `"flowEnd"` | 
| <a id="gatherconsent"></a> `gatherConsent` | `"gatherConsent"` | 
| <a id="gatherconsenterror"></a> `gatherConsentError` | `"gatherConsentError"` | 
| <a id="idle"></a> `idle` | `"idle"` | 
| <a id="requestcamerapermissions"></a> `requestCameraPermissions` | `"requestCameraPermissions"` | 
| <a id="resumetransaction"></a> `resumeTransaction` | `"resumeTransaction"` | 
| <a id="resumetransactionerror"></a> `resumeTransactionError` | `"resumeTransactionError"` | 
| <a id="retrysubmitfeedback"></a> `retrySubmitFeedback` | `"retrySubmitFeedback"` | 
| <a id="reviewprogress"></a> `reviewProgress` | `"reviewProgress"` | 
| <a id="startflow"></a> `startFlow` | `"start"` | 
| <a id="starttransaction"></a> `startTransaction` | `"startTransaction"` | 
| <a id="starttransactionerror"></a> `startTransactionError` | `"startTransactionError"` | 
| <a id="submitfeedback"></a> `submitFeedback` | `"submitFeedback"` | 
| <a id="submittransactionerror"></a> `submitTransactionError` | `"submitTransactionError"` | 

## Interfaces {/* #interfaces */}

### MachineContext {/* #machinecontext */}

#### Properties {/* #properties */}

##### apiConfig {/* #apiconfig */}

> **apiConfig**: [`ProxyConfig`](../types.md#proxyconfig) \| [`TransactionConfig`](../types.md#transactionconfig)

##### apiManager {/* #apimanager */}

> **apiManager**: `ApiManager`

##### backCameraId {/* #backcameraid */}

> **backCameraId**: `string`

##### consentData {/* #consentdata */}

> **consentData**: [`ConsentData`](../types.md#consentdata)

##### currentInstruction {/* #currentinstruction */}

> **currentInstruction**: [`InstructionParams`](../api/types.md#instructionparams)

##### currentInstructionFeedback {/* #currentinstructionfeedback */}

> **currentInstructionFeedback**: [`InstructionFeedback`](../api/types.md#instructionfeedback)

##### d2dAbandoned {/* #d2dabandoned */}

> **d2dAbandoned**: `boolean`

##### d2dQrCodeAutogenCount {/* #d2dqrcodeautogencount */}

> **d2dQrCodeAutogenCount**: `number`

##### d2dQrCodeExpiresAt {/* #d2dqrcodeexpiresat */}

> **d2dQrCodeExpiresAt**: `Date`

##### d2dUrl {/* #d2durl */}

> **d2dUrl**: `string`

##### deviceId {/* #deviceid */}

> **deviceId**: `string`

##### enableD2D {/* #enabled2d */}

> **enableD2D**: `boolean`

##### frontCameraId {/* #frontcameraid */}

> **frontCameraId**: `string`

##### isCameraGoodEnough {/* #iscameragoodenough */}

> **isCameraGoodEnough**: `boolean`

##### isCameraGranted {/* #iscameragranted */}

> **isCameraGranted**: `boolean`

##### isPrefetching {/* #isprefetching */}

> **isPrefetching**: `Promise`\<`void`\>

##### mode {/* #mode */}

> **mode**: [`WorkingMode`](#workingmode)

##### onResult()? {/* #onresult */}

> `optional` **onResult**: (`result`) => `void`

###### Parameters {/* #parameters */}

| Parameter | Type |
| ------ | ------ |
| `result` | [`InstructionFeedback`](../api/types.md#instructionfeedback) |

###### Returns {/* #returns */}

`void`

##### processingStatus {/* #processingstatus */}

> **processingStatus**: [`ProcessingStatus`](../api/types.md#processingstatus-2)

##### reason? {/* #reason */}

> `optional` **reason**: [`ERROR_SCAN_TIMEOUT`](../api/types.md#error_scan_timeout)

##### resourcesPath? {/* #resourcespath */}

> `optional` **resourcesPath**: `string`

##### retryDelay {/* #retrydelay */}

> **retryDelay**: `string`

##### shouldActivateCurrentDevice {/* #shouldactivatecurrentdevice */}

> **shouldActivateCurrentDevice**: `boolean`

##### showProgress {/* #showprogress */}

> **showProgress**: `boolean`

##### statusSubcode {/* #statussubcode */}

> **statusSubcode**: [`StatusSubcode`](../api/types.md#statussubcode-1)

##### uploadProgress {/* #uploadprogress */}

> **uploadProgress**: `number`

##### verificationStatus {/* #verificationstatus */}

> **verificationStatus**: [`VerificationStatus`](../api/types.md#verificationstatus-2)

##### workflowInfo {/* #workflowinfo */}

> **workflowInfo**: [`TransactionWorkflowInfo`](../api/types.md#transactionworkflowinfo)

## Type Aliases {/* #type-aliases */}

### MachineEvents {/* #machineevents */}

> **MachineEvents** = \{ `type`: `START`; \} \| \{ `shouldActivateCurrentDevice`: `boolean`; `showProgress`: `boolean`; `type`: `CONTINUE`; \} \| \{ `type`: `RUN_D2D`; \} \| \{ `result`: [`InstructionFeedback`](../api/types.md#instructionfeedback); `type`: `SUBMIT_FEEDBACK`; \} \| \{ `type`: `RETRY`; \} \| \{ `reason?`: [`TransactionEventType`](../api/types.md#transactioneventtype); `type`: `ERROR`; \} \| \{ `reason?`: [`TransactionEventType`](../api/types.md#transactioneventtype); `type`: `ABORT`; \} \| \{ `data`: `Partial`\<[`MachineContext`](#machinecontext)\>; `type`: `SET_STATE`; \} \| \{ `type`: `RESET`; \} \| \{ `type`: `COMPLETE`; `verificationStatus`: [`VerificationStatus`](../api/types.md#verificationstatus-2); \} \| \{ `data`: \{ `processingStatus`: [`ProcessingStatus`](../api/types.md#processingstatus-2); `verificationStatus`: [`VerificationStatus`](../api/types.md#verificationstatus-2); \}; `type`: `UPDATE_TRANSACTION_STATE`; \} \| \{ `progress`: `number`; `type`: `UPDATE_UPLOAD_PROGRESS_CONTEXT`; \}

***

### MachineInputs {/* #machineinputs */}

> **MachineInputs** = `object`

#### Properties {/* #properties-1 */}

##### apiConfig {/* #apiconfig-1 */}

> **apiConfig**: [`IdvFlowProps`](../types.md#idvflowprops)\[`"apiConfig"`\]

##### consentData {/* #consentdata-1 */}

> **consentData**: [`ConsentData`](../types.md#consentdata)

##### enableD2D? {/* #enabled2d-1 */}

> `optional` **enableD2D**: `boolean`

##### mode {/* #mode-1 */}

> **mode**: [`WorkingMode`](#workingmode)

##### resourcesPath? {/* #resourcespath-1 */}

> `optional` **resourcesPath**: `string`

***

### WorkingMode {/* #workingmode */}

> **WorkingMode** = `"classic"` \| `"d2d"`


Last updated on May 21, 2026
