For the complete documentation index, see llms.txt. This page is also available as Markdown.

useManageMilestones

useManageMilestones

Add or update milestones. Payload: { contractId, admin, newMilestones[], milestoneUpdates[] }.

Import

import { useManageMilestones } from "@trustless-work/escrow";
// or
import { useManageMilestones } from "@trustless-work/escrow/hooks/rest";

Signature

function useManageMilestones(): {
  manageMilestones: (
    payload:
      | ManageSingleReleaseMilestonesPayload
      | ManageMultiReleaseMilestonesPayload,
    type: EscrowType,
  ) => Promise<BuildTransactionResponse>;
};

Returns BuildTransactionResponse: { unsignedXdr, txHash }.

Single vs multi

  • newMilestones: SingleReleaseMilestonePayload[] (description, approvalsTarget, optional status)

  • milestoneUpdates: { index, newDescription? }[]

  • newMilestones: MultiReleaseMilestonePayload[] (adds amount, receiver)

  • milestoneUpdates: { index, newDescription?, newAmount? }[]

Example