So, if I understand your question, your concern or doubt arises from the fact that your Interactor is not going to complete the task and then ends, but they sign it or listen to it until the operation is completed.
In my opinion, excellent, Interactor implements a use case, and in your program that an asynchronous request is a use case, it does not matter if it takes time and is an asynchronous task or a synchronous operation.
This is still a precedent when the Presenter will instantiate an Interactor, and when this is completed, it will return the result of the operation. As long as you remain modular, and Presenter and Interactor are not related to direct dependencies, but they exchange data through indirect dependencies, that’s fine.
source share