Similar to EmployeeStockOption, but for warrants typically granted to external investors, partners, or strategic relationships.
mapping(bytes32 => WarrantToken) public warrantTokens;
function initialize(address _issuer, string memory _name, string memory _prefix) public virtual initializer;
function createWarrantToken(address owner, uint96 quantity, address paymentCurrency, uint96 strikePrice)
external
returns (bytes32 tokenId);
function invalidateWarrantToken(bytes32 tokenId) external;
event WarrantTokenCreated(
bytes32 indexed tokenId, address indexed owner, uint96 quantity, address paymentCurrency, uint96 strikePrice
);
event WarrantTokenInvalidated(bytes32 indexed tokenId);
struct WarrantToken {
bool isValid;
address owner;
uint96 quantity;
address paymentCurrency;
uint96 strikePrice;
}