I am starting leaning also towards against it because with named exports you can:
do import * as communication from './some-module' and then communication.send(). It is a common construct in Python and it works very well to provide more context about the function call.
easier testing as you can stub each element, which is not possible with the default exported objects
There are people in JS community advocating against default exports for example here: https://humanwhocodes.com/blog/2019/01/stop-using-default-exports-javascript-module/
I am starting leaning also towards against it because with named exports you can:
import * as communication from './some-module'
and thencommunication.send()
. It is a common construct in Python and it works very well to provide more context about the function call.