Entities
Escrow
Contains both single-release and multiple-release types.
/**
* Single Release Escrow
*/
export type SingleReleaseEscrow = {
/**
* Address of the user signing the contract transaction
*/
signer: string;
/**
* ID (address) that identifies the escrow contract
*/
contractId: string;
/**
* Unique identifier for the escrow
*/
engagementId: string;
/**
* Name of the escrow
*/
title: string;
/**
* Roles that make up the escrow structure
*/
roles: Roles;
/**
* Text describing the function of the escrow
*/
description: string;
/**
* Amount to be transferred upon completion of escrow milestones
*/
amount: number;
/**
* Commission that the platform will receive when the escrow is completed
*/
platformFee: number;
/**
* Amount of the token (XLM, USDC, EURC, etc) in the smart contract.
*/
balance: number;
/**
* Objectives to be completed to define the escrow as completed
*/
milestones: SingleReleaseMilestone[];
/**
* Flags validating certain escrow life states
*/
flags?: Flags;
/**
* Information on the trustline that will manage the movement of funds in escrow
*/
trustline: Trustline;
};
/**
* Multi Release Escrow
*/
export type MultiReleaseEscrow = Omit<
SingleReleaseEscrow,
"milestones" | "flags" | "amount" | "roles"
> & {
milestones: MultiReleaseMilestone[];
roles: Omit<Roles, "receiver">;
};Milestone
Contains both single-release and multiple-release types. Both of them based on the BaseMilestone.
Trustline
Flags
All the possible flags only in multi-release escrow.
Roles
Last updated
Was this helpful?