emitWithAckAsync method
Emits an event and waits for an acknowledgement
Implementation
Future emitWithAckAsync(String event, dynamic data,
{Function? ack, bool binary = false}) {
var withErr = flags['timeout'] != null || _opts!['ackTimeout'] != null;
var completer = Completer();
emitWithAck(event, data, ack: (arg1, [arg2]) {
if (withErr) {
if (arg1 != null) {
completer.completeError(arg1);
} else {
if (ack != null) ack(arg2);
completer.complete(arg2);
}
} else {
if (ack != null) ack(arg1);
completer.complete(arg1);
}
}, binary: binary);
return completer.future;
}