namespace SVSim.Database.Services; /// The scalar wallet currencies the central debit primitive understands. public enum SpendCurrency { Crystal, Rupee, RedEther, SpotPoint } public enum SpendOutcome { Success, Insufficient } /// /// Result of a call. /// is the balance the client should show after the spend — the real post-deduction balance, or the /// freeplay effective balance when the spend was a freeplay no-op. /// public sealed record SpendResult(SpendOutcome Outcome, long PostStateTotal) { public bool Success => Outcome == SpendOutcome.Success; }