const fetchMachine = Machine({ id: 'onboarding', initial: 'nilApplication', context: { retries: 0 }, states: { invest: { }, nilApplication: { on: { COMPLETE_FIELDS: 'completeFields', NOVA_PRODUCT_INSTANCE: 'invest' } }, completeFields: { on: { BETA: 'kyc', POST_BETA: 'mfa', DROP_OUT_OF_FLOW: 'nilApplication', INELIGLE: 'ineligible' } }, mfa: { on: { COMPLETE: 'kyc', DROP_OUT_OF_FLOW: 'mfa' } }, kyc: { on: { COMPLETE: 'invest', DROP_OUT_OF_FLOW: 'mfa', INELIGLE: 'ineligible' } }, ineligible: { on: { RESTART: 'completeFields', USA_RESTART: 'doWeBlock' } }, doWeBlock: { on: { LIMITED_LIVE: 'completeFields', BETA: 'completeFields', POST_BETA:'blockApplication' } }, blockApplication: {} } });