SIGN IN SIGN UP

feat(client): automatic deposit (regular paymaster) flow in SdkWallet (#918)

strk20InvokeTransaction picks the paymaster flow from the actions: with a deposit it derives the
user-signed approve(pool, amount) and switches to invoke_and_apply_action (a deposit's approve must
run as the user, but apply_action executes as the paymaster); with no deposit it stays on the private
apply_action. The user signs the paymaster's typed data via the injected signer. The fee is always
folded in as a withdraw out of the pool so the proof covers it (a simulate-based exact quote is a
TODO pending AVNU support). SdkWalletConfig gains signer + userAddress. 7 tests.

<!-- Reviewable:start -->
- - -
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/starkware-libs/starknet-privacy/918)
<!-- Reviewable:end -->
I
Ittay Dror committed
73720c6784d9aa696691bae9ff7aa8b4992b7b44
Parent: 0f4d48f
Committed by GitHub <noreply@github.com> on 7/28/2026, 9:02:34 AM