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

useReleaseFunds

You release the escrow funds to the service provider through the approver.

Usage

This custom hook exposes a function to release the funds of an escrow.

import { useReleaseFunds } from "@trustless-work/escrow/hooks";
import { SingleReleaseReleaseFundsPayload, MultiReleaseReleaseFundsPayload } from "@trustless-work/escrow/types";

/*
 *  useReleaseFunds
*/
const { releaseFunds } = useReleaseFunds();

/* 
 * It returns an unsigned transaction
 * payload should be of type `MultiReleaseReleaseFundsPayload` or `SingleReleaseReleaseFundsPayload`
*/
const { unsignedTransaction } = await releaseFunds(payload);

Mutation Function

releaseFunds

Responsible for building and returning an unsigned transaction based on the provided payload.

EscrowType: Specifies the type of escrow. It accepts the following values:

  • multi-release: Allows for multiple releases of funds.

  • single-release: Funds are released in a single transaction.

SingleReleaseReleaseFundsPayload: An object with fields necessary to release a single-release escrow.

MultiReleaseReleaseFundsPayload: An object with fields necessary to release a multi-release escrow by a specific milestone.

Parameters:

Ensure they match: if you choose a "multi-release" type, you must also use a "multi-release" payload.

  • type: Describes the escrow type to be used. Options are "multi-release" or "single-release".

  • payload: An object containing the required fields to release an escrow or milestone.

Release Funds

Return Value:

unsignedTransaction: An object representing the constructed transaction, ready to be signed by your wallet and broadcast.


Usage Example

Last updated