Skip to content
docs

isRevokeTransaction

isRevokeTransaction(tx, __namedParameters?): boolean

Defined in: protocol-approvals-evm/src/calldata.ts:61

True when a whole transaction is a revoke, not just its calldata: no native value, no EIP-7702 authorization, strict revoke calldata, and a target whose standard makes that calldata a revoke (scan 2026-10-27 modules, F31):

  • Permit2 lockdown only to Permit2 (no targets needed);
  • approve(spender, 0) only to a target the host knows as an ERC-20 — on an ERC-721 the same calldata APPROVES spender for token #0;
  • approve(0x0, id) and setApprovalForAll(operator, false) to an NFT target (ERC-721 / ERC-1155), or to a bare-address target whose standard is unknown (neither grants anything on any standard).

Without targets only a lockdown is a revoke. Use this, not isRevokeCalldata, to let a transaction through a policy.

{ authorizationList?: unknown[]; data?: string; to?: string; type?: unknown; value?: unknown; } | undefined

RevokeTargets

boolean