const fetchMachine = Machine({ id: 'contacts', initial: 'add_contacts_button', states: { add_contacts_button: { on: { ADDED: 'permission_screen' } }, permission_screen: { on: { APPROVED: 'selection_screen', REJECTED: 'add_contacts_button' } }, selection_screen: { on: { CONTACT_SELECTED: 'selection_screen', CONTACT_DESELECTED: 'selection_screen', SELECT_ALL: 'selection_screen', ADD_CONTACTS: 'conflict_screen' } }, conflict_screen: { onEntry: 'checkForConflicts', on: { NO_CONFICTS_DETECTED: 'add_contacts_button', MERGED_CONTACTS: 'conflict_screen', CREATEDED_FIELD_TO_OVERWRITE:'conflict_screen', SELECTED_FIELD_FOR_ALL_OVERWRITES:'conflict_screen', } } } });