Skip to main content

Module IB20Extensions

Module IB20Extensions 

Source
Available on crate feature base only.
Expand description

Deliberately partial mirror of base_common_precompiles::IB20, the B-20 token surface.

B-20 tokens are created by the factory at derived addresses, so they cannot be registered per address like the fixed precompiles. These members are therefore available as a Base-only fallback after address-scoped and caller-supplied metadata.

Only Base-specific members belong here. The ERC-20, EIP-2612 and AccessControl portions are omitted on purpose: the global function map is not network-scoped, so adding competing candidates for transfer, balanceOf, approve or permit could change how ordinary token traces decode in any Base-enabled build. Foundry already has to order IStorageCredits against ITIP20 to keep balanceOf’s return type stable, which is the same hazard. b20_surface_excludes_erc20_members pins this boundary.

interface IB20Extensions {
    enum PausableFeature { TRANSFER, MINT, BURN, SEIZE }
    event Memo(address indexed caller, bytes32 indexed memo);
    event BurnedBlocked(address indexed caller, address indexed from, uint256 amount);
    event Seized(address indexed caller, address indexed from, address indexed to, uint256 amount);
    event LastAdminRenounced(address indexed previousAdmin);
    event Paused(address indexed updater, PausableFeature[] features);
    event Unpaused(address indexed updater, PausableFeature[] features);
    event PolicyUpdated(bytes32 indexed policyScope, uint64 oldPolicyId, uint64 newPolicyId);
    function mintWithMemo(address to, uint256 amount, bytes32 memo) external;
    function burnWithMemo(uint256 amount, bytes32 memo) external;
    function burnBlocked(address from, uint256 amount) external;
    function transferWithMemo(address to, uint256 amount, bytes32 memo) external returns (bool);
    function seizeWithMemo(address from, address to, uint256 amount, bytes32 memo) external;
    function pausedFeatures() external view returns (PausableFeature[] memory);
    function isPaused(PausableFeature feature) external view returns (bool);
    function pause(PausableFeature[] calldata features) external;
    function unpause(PausableFeature[] calldata features) external;
    function policyId(bytes32 policyScope) external view returns (uint64);
    function updatePolicy(bytes32 policyScope, uint64 newPolicyId) external;
    function contractURI() external view returns (string);
    function updateContractURI(string calldata newURI) external;
}

Modules§

abi
Contains dynamic ABI definitions for this contract.

Structs§

BurnedBlocked
Event with signature BurnedBlocked(address,address,uint256) and selector 0x0b552e96653fd6842da37c477005d3b5c08a8c7d3631b1f43787b2dc9a1006a3.
LastAdminRenounced
Event with signature LastAdminRenounced(address) and selector 0xe8d3a9872e7ca325571ff1e4c51ddd69090a0345240cc605ccde365ec867cc67.
Memo
Event with signature Memo(address,bytes32) and selector 0x6989f5818dcfd11f8cd53b27c94cec33dae1589735f03e639cba54553a1825e8.
Paused
Event with signature Paused(address,uint8[]) and selector 0x3e849708b13f20dd0b87a503523c305e7604cd7e8f855e7a5ebe21397dfd7146.
PolicyUpdated
Event with signature PolicyUpdated(bytes32,uint64,uint64) and selector 0x8b4790f7ff717fc8f60f07ae099e47ef318dc04b37ae98056b50a22b79056626.
Seized
Event with signature Seized(address,address,address,uint256) and selector 0xa9aec5d8b86e2fa2fd6ac3af62f2622e3dfdab1967d4cbbb56a5df7d74cb887c.
Unpaused
Event with signature Unpaused(address,uint8[]) and selector 0x086a815e5123cf1af5cb7a82f8b052bf96c622204c98b2f4f9782bf77f753c57.
burnBlockedCall
Function with signature burnBlocked(address,uint256) and selector 0xec0cf3dc.
burnBlockedReturn
Container type for the return parameters of the burnBlocked(address,uint256) function.
burnWithMemoCall
Function with signature burnWithMemo(uint256,bytes32) and selector 0x38f23b0b.
burnWithMemoReturn
Container type for the return parameters of the burnWithMemo(uint256,bytes32) function.
contractURICall
Function with signature contractURI() and selector 0xe8a3d485.
contractURIReturn
Container type for the return parameters of the contractURI() function.
isPausedCall
Function with signature isPaused(uint8) and selector 0xbc61e733.
isPausedReturn
Container type for the return parameters of the isPaused(uint8) function.
mintWithMemoCall
Function with signature mintWithMemo(address,uint256,bytes32) and selector 0xe44f0b12.
mintWithMemoReturn
Container type for the return parameters of the mintWithMemo(address,uint256,bytes32) function.
pauseCall
Function with signature pause(uint8[]) and selector 0xa290249c.
pauseReturn
Container type for the return parameters of the pause(uint8[]) function.
pausedFeaturesCall
Function with signature pausedFeatures() and selector 0xde9997e3.
pausedFeaturesReturn
Container type for the return parameters of the pausedFeatures() function.
policyIdCall
Function with signature policyId(bytes32) and selector 0xdb3de624.
policyIdReturn
Container type for the return parameters of the policyId(bytes32) function.
seizeWithMemoCall
Function with signature seizeWithMemo(address,address,uint256,bytes32) and selector 0xf916d81b.
seizeWithMemoReturn
Container type for the return parameters of the seizeWithMemo(address,address,uint256,bytes32) function.
transferWithMemoCall
Function with signature transferWithMemo(address,uint256,bytes32) and selector 0x95777d59.
transferWithMemoReturn
Container type for the return parameters of the transferWithMemo(address,uint256,bytes32) function.
unpauseCall
Function with signature unpause(uint8[]) and selector 0x8b93dd63.
unpauseReturn
Container type for the return parameters of the unpause(uint8[]) function.
updateContractURICall
Function with signature updateContractURI(string) and selector 0x7e5b1e24.
updateContractURIReturn
Container type for the return parameters of the updateContractURI(string) function.
updatePolicyCall
Function with signature updatePolicy(bytes32,uint64) and selector 0xadf9c4ea.
updatePolicyReturn
Container type for the return parameters of the updatePolicy(bytes32,uint64) function.

Enums§

IB20ExtensionsCalls
Container for all the IB20Extensions function calls.
IB20ExtensionsEvents
Container for all the IB20Extensions events.
PausableFeature