diff --git a/packages/1155-contracts/src/interfaces/IZoraCreator1155PremintExecutor.sol b/packages/1155-contracts/src/interfaces/IZoraCreator1155PremintExecutor.sol index 4cf752f75..b66df3af3 100644 --- a/packages/1155-contracts/src/interfaces/IZoraCreator1155PremintExecutor.sol +++ b/packages/1155-contracts/src/interfaces/IZoraCreator1155PremintExecutor.sol @@ -28,7 +28,41 @@ interface ILegacyZoraCreator1155PremintExecutor { ) external payable returns (uint256 newTokenId); } -interface IZoraCreator1155PremintExecutor { +interface IZoraCreator1155PremintExecutorV1 { + function premintV1( + ContractCreationConfig calldata contractConfig, + PremintConfig calldata premintConfig, + bytes calldata signature, + uint256 quantityToMint, + IZoraCreator1155PremintExecutor.MintArguments calldata mintArguments + ) external payable returns (IZoraCreator1155PremintExecutor.PremintResult memory); + + function isValidSignatureV1( + address originalContractAdmin, + address contractAddress, + PremintConfig calldata premintConfig, + bytes calldata signature + ) external view returns (bool isValid, address recoveredSigner); +} + +interface IZoraCreator1155PremintExecutorV2 { + function premintV2( + ContractCreationConfig calldata contractConfig, + PremintConfigV2 calldata premintConfig, + bytes calldata signature, + uint256 quantityToMint, + IZoraCreator1155PremintExecutor.MintArguments calldata mintArguments + ) external payable returns (IZoraCreator1155PremintExecutor.PremintResult memory); + + function isValidSignatureV2( + address originalContractAdmin, + address contractAddress, + PremintConfigV2 calldata premintConfig, + bytes calldata signature + ) external view returns (bool isValid, address recoveredSigner); +} + +interface IZoraCreator1155PremintExecutor is IZoraCreator1155PremintExecutorV1, IZoraCreator1155PremintExecutorV2 { struct MintArguments { address mintRecipient; string mintComment; @@ -53,12 +87,4 @@ interface IZoraCreator1155PremintExecutor { function zora1155Factory() external view returns (IZoraCreator1155Factory); function getContractAddress(ContractCreationConfig calldata contractConfig) external view returns (address); - - function premintV2( - ContractCreationConfig calldata contractConfig, - PremintConfigV2 calldata premintConfig, - bytes calldata signature, - uint256 quantityToMint, - MintArguments calldata mintArguments - ) external payable returns (PremintResult memory); }