Reads the spend accounting off any error raised by payments.mpp.fetch.
Exported so a caller never has to hand-cast: the field is declared on
MppError but is also attached to the PaymentsError a
caller-constraint guard throws on the re-challenge turn, and those two do
not share a base class.
A report is attached only when at least one credential was presented, so
a truthy result always means money may have left, and undefined always
means nothing was spent. That is what makes if (mppSpendOf(err)) a usable
test rather than one that fires on plain argument validation too.
Reads the spend accounting off any error raised by
payments.mpp.fetch.Exported so a caller never has to hand-cast: the field is declared on MppError but is also attached to the PaymentsError a caller-constraint guard throws on the re-challenge turn, and those two do not share a base class.
A report is attached only when at least one credential was presented, so a truthy result always means money may have left, and
undefinedalways means nothing was spent. That is what makesif (mppSpendOf(err))a usable test rather than one that fires on plain argument validation too.