From b3216cb3c10c2441e249ee6cd77cc73eac991916 Mon Sep 17 00:00:00 2001 From: Squiegee <97313350+squiegee@users.noreply.github.com> Date: Tue, 24 May 2022 01:03:43 -0500 Subject: [PATCH] Fungi X-Chain V1 Interface --- fungible-xchain-v1.pact | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 fungible-xchain-v1.pact diff --git a/fungible-xchain-v1.pact b/fungible-xchain-v1.pact new file mode 100644 index 0000000..3c36336 --- /dev/null +++ b/fungible-xchain-v1.pact @@ -0,0 +1,36 @@ +(interface fungible-xchain-v1 + + " This interface offers a standard capability for cross-chain \ + \ transfers and associated events. " + + (defcap TRANSFER_XCHAIN:bool + ( sender:string + receiver:string + amount:decimal + target-chain:string + ) + @doc " Managed capability sealing AMOUNT for transfer \ + \ from SENDER to RECEIVER on TARGET-CHAIN. Permits \ + \ any number of cross-chain transfers up to AMOUNT." + + @managed amount TRANSFER_XCHAIN-mgr + ) + + (defun TRANSFER_XCHAIN-mgr:decimal + ( managed:decimal + requested:decimal + ) + @doc " Allows TRANSFER-XCHAIN AMOUNT to be less than or \ + \ equal managed quantity as a one-shot, returning 0.0." + ) + + (defcap TRANSFER_XCHAIN_RECD:bool + ( sender:string + receiver:string + amount:decimal + source-chain:string + ) + @doc "Event emitted on receipt of cross-chain transfer." + @event + ) +)