JB721TiersHookDeployer
Inherits: ERC2771Context, IJB721TiersHookDeployer
Deploys a JB721TiersHook
for an existing project.
State Variables
ADDRESS_REGISTRY
A registry which stores references to contracts and their deployers.
IJBAddressRegistry public immutable ADDRESS_REGISTRY;
HOOK
A 721 tiers hook.
JB721TiersHook public immutable HOOK;
STORE
The contract that stores and manages data for this contract's NFTs.
IJB721TiersHookStore public immutable STORE;
_nonce
This contract's current nonce, used for the Juicebox address registry.
uint256 internal _nonce;
Functions
constructor
constructor(
JB721TiersHook hook,
IJB721TiersHookStore store,
IJBAddressRegistry addressRegistry,
address trustedForwarder
)
ERC2771Context(trustedForwarder);
Parameters
Name | Type | Description |
---|---|---|
hook | JB721TiersHook | Reference copy of a hook. |
store | IJB721TiersHookStore | The contract that stores and manages data for this contract's NFTs. |
addressRegistry | IJBAddressRegistry | A registry which stores references to contracts and their deployers. |
trustedForwarder | address | The trusted forwarder for the ERC2771Context. |
deployHookFor
Deploys a 721 tiers hook for the specified project.
function deployHookFor(
uint256 projectId,
JBDeploy721TiersHookConfig calldata deployTiersHookConfig,
bytes32 salt
)
external
override
returns (IJB721TiersHook newHook);
Parameters
Name | Type | Description |
---|---|---|
projectId | uint256 | The ID of the project to deploy the hook for. |
deployTiersHookConfig | JBDeploy721TiersHookConfig | The config to deploy the hook with, which determines its behavior. |
salt | bytes32 | A salt to use for the deterministic deployment. |
Returns
Name | Type | Description |
---|---|---|
newHook | IJB721TiersHook | The address of the newly deployed hook. |