Skip to main content

ISablierV2MerkleLT

Git Source

Inherits: ISablierV2MerkleLockup

MerkleLockup campaign that creates LockupTranched streams.

Functions

getTranchesWithPercentages

Retrieves the tranches with their respective unlock percentages and durations.

function getTranchesWithPercentages() external view returns (MerkleLT.TrancheWithPercentage[] memory);

LOCKUP_TRANCHED

The address of the SablierV2LockupTranched contract.

function LOCKUP_TRANCHED() external view returns (ISablierV2LockupTranched);

TOTAL_PERCENTAGE

The total percentage of the tranches.

function TOTAL_PERCENTAGE() external view returns (uint64);

claim

Makes the claim by creating a LockupTranched stream to the recipient. A stream NFT is minted to the recipient.

Emits a {Claim} event. Requirements:

  • The campaign must not have expired.
  • The stream must not have been claimed already.
  • The Merkle proof must be valid.
  • TOTAL_PERCENTAGE must be equal to 100%.
function claim(
uint256 index,
address recipient,
uint128 amount,
bytes32[] calldata merkleProof
)
external
returns (uint256 streamId);

Parameters

NameTypeDescription
indexuint256The index of the recipient in the Merkle tree.
recipientaddressThe address of the stream holder.
amountuint128The amount of ERC-20 assets to be distributed via the claimed stream.
merkleProofbytes32[]The proof of inclusion in the Merkle tree.

Returns

NameTypeDescription
streamIduint256The id of the newly created stream.