assumeInteractiveReceiver method

  1. @override
Future<MaybeInputsOwned> assumeInteractiveReceiver({
  1. dynamic hint,
})

Call this method if the only way to initiate a Payjoin with this receiver requires manual intervention, as in most consumer wallets. So-called “non-interactive” receivers, like payment processors, that allow arbitrary requests are otherwise vulnerable to probing attacks. Those receivers call gettransactiontocheckbroadcast() and attesttestedandscheduledbroadcast() after making those checks downstream

Implementation

@override
Future<MaybeInputsOwned> assumeInteractiveReceiver({hint}) async {
  try {
    final res = await super.assumeInteractiveReceiver();
    return MaybeInputsOwned._(field0: res.field0);
  } on error.PayjoinError catch (e) {
    throw mapPayjoinError(e);
  }
}