In JavaScript a promise can only be resolved once. So you cannot use someFunc(params).then(...)
if you need multiple responses. You need to use a callback function instead.
The method you’re implementing is of type 3 (callback) as described in Method Types. So you need to declare it as such in the native code and then use it as const callbackId = await someFunc(params, (response) => {...})
.
For an example you can take a look at the code of the geolocation plugin and its watchPosition
method.
Another way to achieve something similar would be Plugin Events.
PS: I suggest to not mix async/await
with.then/.catch
when dealing with promises in JavaScript.