Signature
Description
Seizesamount of from’s balance and reassigns it to to in a single admin operation. Emits, in order, Transfer(from, to, amount), Memo(caller, memo), and Seized(caller, from, to, amount). A memo of bytes32(0) is permitted.
Admin operation: skips allowance and the transfer policies. The membership checks are that from is blocked under SEIZE_HOLDER_POLICY and to is authorized under SEIZE_RECEIVER_POLICY.
to is gated by SEIZE_RECEIVER_POLICY, which defaults to always-allow when unset, so an unconfigured token may seize to any destination (a treasury need not be allowlisted).
Parameters
Reverts
ContractPaused(SEIZE)whenSEIZEis paused.AccessControlUnauthorizedAccountwhen the caller does not holdSEIZE_ROLE.InvalidReceiverwhento == address(0).AccountNotSeizablewhenfromis currently authorized underSEIZE_HOLDER_POLICY.PolicyForbids(SEIZE_RECEIVER_POLICY, ...)whentois not authorized underSEIZE_RECEIVER_POLICY.InsufficientBalancewhenfrom’s balance is belowamount.
Access control
SEIZE_ROLE gates seizure calls.
Policy interaction
ChecksSEIZE_HOLDER_POLICY for the holder and SEIZE_RECEIVER_POLICY for the destination.