@bitgo/sdk-coin-sui 5.2.0 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [5.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@5.2.0...@bitgo/sdk-coin-sui@5.3.0) (2024-07-24)
7
+
8
+ ### Features
9
+
10
+ - **sdk-coin-sui:** add token transfer builder ([7909d47](https://github.com/BitGo/BitGoJS/commit/7909d47b2f30fa764ee19839954554eb2fbd8002))
11
+
6
12
  # [5.2.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@5.1.8...@bitgo/sdk-coin-sui@5.2.0) (2024-07-16)
7
13
 
8
14
  ### Bug Fixes
@@ -5,18 +5,20 @@ export declare enum SuiTransactionType {
5
5
  Transfer = "Transfer",
6
6
  AddStake = "AddStake",
7
7
  WithdrawStake = "WithdrawStake",
8
- CustomTx = "CustomTx"
8
+ CustomTx = "CustomTx",
9
+ TokenTransfer = "TokenTransfer"
9
10
  }
10
11
  export interface TransactionExplanation extends BaseTransactionExplanation {
11
12
  type: BitGoTransactionType;
12
13
  }
14
+ export declare type SuiProgrammableTransaction = TransferProgrammableTransaction | StakingProgrammableTransaction | UnstakingProgrammableTransaction | CustomProgrammableTransaction | TokenTransferProgrammableTransaction;
13
15
  export interface TxData {
14
16
  id?: string;
15
17
  sender: SuiAddress;
16
18
  expiration: TransactionExpiration;
17
19
  gasData: GasData;
18
20
  kind: {
19
- ProgrammableTransaction: TransferProgrammableTransaction | StakingProgrammableTransaction | CustomProgrammableTransaction;
21
+ ProgrammableTransaction: SuiProgrammableTransaction;
20
22
  };
21
23
  }
22
24
  export declare type TransferProgrammableTransaction = ProgrammableTransaction | {
@@ -35,7 +37,11 @@ export declare type CustomProgrammableTransaction = ProgrammableTransaction | {
35
37
  inputs: CallArg[] | TransactionBlockInput[];
36
38
  transactions: TransactionType[];
37
39
  };
38
- export interface SuiTransaction<T = TransferProgrammableTransaction | StakingProgrammableTransaction | CustomProgrammableTransaction> {
40
+ export declare type TokenTransferProgrammableTransaction = ProgrammableTransaction | {
41
+ inputs: CallArg[] | TransactionBlockInput[];
42
+ transactions: TransactionType[];
43
+ };
44
+ export interface SuiTransaction<T = SuiProgrammableTransaction> {
39
45
  id?: string;
40
46
  type: SuiTransactionType;
41
47
  sender: string;
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACxC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,OAAO,EACP,UAAU,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,qBAAqB,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QACJ,uBAAuB,EACnB,+BAA+B,GAC/B,8BAA8B,GAC9B,6BAA6B,CAAC;KACnC,CAAC;CACH;AAED,oBAAY,+BAA+B,GACvC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,8BAA8B,GACtC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,gCAAgC,GACxC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,6BAA6B,GACrC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,MAAM,WAAW,cAAc,CAC7B,CAAC,GAAG,+BAA+B,GAAG,8BAA8B,GAAG,6BAA6B;IAEpG,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,CAAC;IACN,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB;;;;OAIG;IACH,eAAe,sBAAsB;IACrC;;;;OAIG;IACH,oBAAoB,2BAA2B;IAC/C;;;;OAIG;IACH,gBAAgB,0BAA0B;IAC1C;;;;OAIG;IACH,cAAc,gCAAgC;CAC/C"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACxC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,OAAO,EACP,UAAU,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;IACrB,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,oBAAY,0BAA0B,GAClC,+BAA+B,GAC/B,8BAA8B,GAC9B,gCAAgC,GAChC,6BAA6B,GAC7B,oCAAoC,CAAC;AAEzC,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,qBAAqB,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QACJ,uBAAuB,EAAE,0BAA0B,CAAC;KACrD,CAAC;CACH;AAED,oBAAY,+BAA+B,GACvC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,8BAA8B,GACtC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,gCAAgC,GACxC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,6BAA6B,GACrC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,oCAAoC,GAC5C,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,0BAA0B;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,CAAC;IACN,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB;;;;OAIG;IACH,eAAe,sBAAsB;IACrC;;;;OAIG;IACH,oBAAoB,2BAA2B;IAC/C;;;;OAIG;IACH,gBAAgB,0BAA0B;IAC1C;;;;OAIG;IACH,cAAc,gCAAgC;CAC/C"}
@@ -7,6 +7,7 @@ var SuiTransactionType;
7
7
  SuiTransactionType["AddStake"] = "AddStake";
8
8
  SuiTransactionType["WithdrawStake"] = "WithdrawStake";
9
9
  SuiTransactionType["CustomTx"] = "CustomTx";
10
+ SuiTransactionType["TokenTransfer"] = "TokenTransfer";
10
11
  })(SuiTransactionType = exports.SuiTransactionType || (exports.SuiTransactionType = {}));
11
12
  /**
12
13
  * Method names for the transaction method. Names change based on the type of transaction e.g 'request_add_delegation_mul_coin' for the staking transaction
@@ -38,4 +39,4 @@ var MethodNames;
38
39
  */
39
40
  MethodNames["PublicTransfer"] = "::transfer::public_transfer";
40
41
  })(MethodNames = exports.MethodNames || (exports.MethodNames = {}));
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWNBLElBQVksa0JBS1g7QUFMRCxXQUFZLGtCQUFrQjtJQUM1QiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtJQUMvQiwyQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBTFcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFLN0I7QUFtRUQ7O0dBRUc7QUFDSCxJQUFZLFdBeUJYO0FBekJELFdBQVksV0FBVztJQUNyQjs7OztPQUlHO0lBQ0gsb0RBQXFDLENBQUE7SUFDckM7Ozs7T0FJRztJQUNILDhEQUErQyxDQUFBO0lBQy9DOzs7O09BSUc7SUFDSCx5REFBMEMsQ0FBQTtJQUMxQzs7OztPQUlHO0lBQ0gsNkRBQThDLENBQUE7QUFDaEQsQ0FBQyxFQXpCVyxXQUFXLEdBQVgsbUJBQVcsS0FBWCxtQkFBVyxRQXlCdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQge1xuICBHYXNEYXRhLFxuICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgQ2FsbEFyZyxcbiAgU3VpQWRkcmVzcyxcbiAgU3VpT2JqZWN0UmVmLFxuICBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG59IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5cbmV4cG9ydCBlbnVtIFN1aVRyYW5zYWN0aW9uVHlwZSB7XG4gIFRyYW5zZmVyID0gJ1RyYW5zZmVyJyxcbiAgQWRkU3Rha2UgPSAnQWRkU3Rha2UnLFxuICBXaXRoZHJhd1N0YWtlID0gJ1dpdGhkcmF3U3Rha2UnLFxuICBDdXN0b21UeCA9ICdDdXN0b21UeCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHNlbmRlcjogU3VpQWRkcmVzcztcbiAgZXhwaXJhdGlvbjogVHJhbnNhY3Rpb25FeHBpcmF0aW9uO1xuICBnYXNEYXRhOiBHYXNEYXRhO1xuICBraW5kOiB7XG4gICAgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb246XG4gICAgICB8IFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgICAgIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gICAgICB8IEN1c3RvbVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uO1xuICB9O1xufVxuXG5leHBvcnQgdHlwZSBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBDdXN0b21Qcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIFN1aVRyYW5zYWN0aW9uPFxuICBUID0gVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IEN1c3RvbVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4+IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHR5cGU6IFN1aVRyYW5zYWN0aW9uVHlwZTtcbiAgc2VuZGVyOiBzdHJpbmc7XG4gIHR4OiBUO1xuICBnYXNEYXRhOiBHYXNEYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RBZGRTdGFrZSB7XG4gIGFtb3VudDogbnVtYmVyO1xuICB2YWxpZGF0b3JBZGRyZXNzOiBTdWlBZGRyZXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RXaXRoZHJhd1N0YWtlZFN1aSB7XG4gIGFtb3VudD86IG51bWJlcjtcbiAgc3Rha2VkU3VpOiBTdWlPYmplY3RSZWY7XG59XG5cbi8qKlxuICogTWV0aG9kIG5hbWVzIGZvciB0aGUgdHJhbnNhY3Rpb24gbWV0aG9kLiBOYW1lcyBjaGFuZ2UgYmFzZWQgb24gdGhlIHR5cGUgb2YgdHJhbnNhY3Rpb24gZS5nICdyZXF1ZXN0X2FkZF9kZWxlZ2F0aW9uX211bF9jb2luJyBmb3IgdGhlIHN0YWtpbmcgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGVudW0gTWV0aG9kTmFtZXMge1xuICAvKipcbiAgICogQWRkIHN0YWtlIHRvIGEgdmFsaWRhdG9yJ3Mgc3Rha2luZyBwb29sLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdWlfc3lzdGVtLm1kI2Z1bmN0aW9uLXJlcXVlc3RfYWRkX3N0YWtlXG4gICAqL1xuICBSZXF1ZXN0QWRkU3Rha2UgPSAncmVxdWVzdF9hZGRfc3Rha2UnLFxuICAvKipcbiAgICogV2l0aGRyYXcgc29tZSBwb3J0aW9uIG9mIGEgc3Rha2UgZnJvbSBhIHZhbGlkYXRvcidzIHN0YWtpbmcgcG9vbC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vTXlzdGVuTGFicy9zdWkvYmxvYi9tYWluL2NyYXRlcy9zdWktZnJhbWV3b3JrL2RvY3Mvc3VpX3N5c3RlbS5tZCNmdW5jdGlvbi1yZXF1ZXN0X3dpdGhkcmF3X3N0YWtlXG4gICAqL1xuICBSZXF1ZXN0V2l0aGRyYXdTdGFrZSA9ICdyZXF1ZXN0X3dpdGhkcmF3X3N0YWtlJyxcbiAgLyoqXG4gICAqIFNwbGl0IFN0YWtlZFN1aSBzZWxmIHRvIHR3byBwYXJ0cywgb25lIHdpdGggcHJpbmNpcGFsIHNwbGl0X2Ftb3VudCwgYW5kIHRoZSByZW1haW5pbmcgcHJpbmNpcGFsIGlzIGxlZnQgaW4gc2VsZi5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vTXlzdGVuTGFicy9zdWkvYmxvYi9tYWluL2NyYXRlcy9zdWktZnJhbWV3b3JrL2RvY3Mvc3Rha2luZ19wb29sLm1kIzB4M19zdGFraW5nX3Bvb2xfc3BsaXRcbiAgICovXG4gIFN0YWtpbmdQb29sU3BsaXQgPSAnOjpzdGFraW5nX3Bvb2w6OnNwbGl0JyxcbiAgLyoqXG4gICAqIFRyYW5zZmVyIG93bmVyc2hpcCBvZiBvYmogdG8gcmVjaXBpZW50LlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy90cmFuc2Zlci5tZCNmdW5jdGlvbi1wdWJsaWNfdHJhbnNmZXJcbiAgICovXG4gIFB1YmxpY1RyYW5zZmVyID0gJzo6dHJhbnNmZXI6OnB1YmxpY190cmFuc2ZlcicsXG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWNBLElBQVksa0JBTVg7QUFORCxXQUFZLGtCQUFrQjtJQUM1QiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtJQUMvQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtBQUNqQyxDQUFDLEVBTlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFNN0I7QUE0RUQ7O0dBRUc7QUFDSCxJQUFZLFdBeUJYO0FBekJELFdBQVksV0FBVztJQUNyQjs7OztPQUlHO0lBQ0gsb0RBQXFDLENBQUE7SUFDckM7Ozs7T0FJRztJQUNILDhEQUErQyxDQUFBO0lBQy9DOzs7O09BSUc7SUFDSCx5REFBMEMsQ0FBQTtJQUMxQzs7OztPQUlHO0lBQ0gsNkRBQThDLENBQUE7QUFDaEQsQ0FBQyxFQXpCVyxXQUFXLEdBQVgsbUJBQVcsS0FBWCxtQkFBVyxRQXlCdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQge1xuICBHYXNEYXRhLFxuICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgQ2FsbEFyZyxcbiAgU3VpQWRkcmVzcyxcbiAgU3VpT2JqZWN0UmVmLFxuICBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG59IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5cbmV4cG9ydCBlbnVtIFN1aVRyYW5zYWN0aW9uVHlwZSB7XG4gIFRyYW5zZmVyID0gJ1RyYW5zZmVyJyxcbiAgQWRkU3Rha2UgPSAnQWRkU3Rha2UnLFxuICBXaXRoZHJhd1N0YWtlID0gJ1dpdGhkcmF3U3Rha2UnLFxuICBDdXN0b21UeCA9ICdDdXN0b21UeCcsXG4gIFRva2VuVHJhbnNmZXIgPSAnVG9rZW5UcmFuc2ZlcicsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCB0eXBlIFN1aVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gIHwgVW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCBDdXN0b21Qcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IFRva2VuVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjtcblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IHN0cmluZztcbiAgc2VuZGVyOiBTdWlBZGRyZXNzO1xuICBleHBpcmF0aW9uOiBUcmFuc2FjdGlvbkV4cGlyYXRpb247XG4gIGdhc0RhdGE6IEdhc0RhdGE7XG4gIGtpbmQ6IHtcbiAgICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjogU3VpUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb247XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24gPVxuICB8IFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4gIHwge1xuICAgICAgaW5wdXRzOiBDYWxsQXJnW10gfCBUcmFuc2FjdGlvbkJsb2NrSW5wdXRbXTtcbiAgICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25UeXBlW107XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFRva2VuVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIFN1aVRyYW5zYWN0aW9uPFQgPSBTdWlQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICBpZD86IHN0cmluZztcbiAgdHlwZTogU3VpVHJhbnNhY3Rpb25UeXBlO1xuICBzZW5kZXI6IHN0cmluZztcbiAgdHg6IFQ7XG4gIGdhc0RhdGE6IEdhc0RhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdEFkZFN0YWtlIHtcbiAgYW1vdW50OiBudW1iZXI7XG4gIHZhbGlkYXRvckFkZHJlc3M6IFN1aUFkZHJlc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdFdpdGhkcmF3U3Rha2VkU3VpIHtcbiAgYW1vdW50PzogbnVtYmVyO1xuICBzdGFrZWRTdWk6IFN1aU9iamVjdFJlZjtcbn1cblxuLyoqXG4gKiBNZXRob2QgbmFtZXMgZm9yIHRoZSB0cmFuc2FjdGlvbiBtZXRob2QuIE5hbWVzIGNoYW5nZSBiYXNlZCBvbiB0aGUgdHlwZSBvZiB0cmFuc2FjdGlvbiBlLmcgJ3JlcXVlc3RfYWRkX2RlbGVnYXRpb25fbXVsX2NvaW4nIGZvciB0aGUgc3Rha2luZyB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgZW51bSBNZXRob2ROYW1lcyB7XG4gIC8qKlxuICAgKiBBZGQgc3Rha2UgdG8gYSB2YWxpZGF0b3IncyBzdGFraW5nIHBvb2wuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLWZyYW1ld29yay9kb2NzL3N1aV9zeXN0ZW0ubWQjZnVuY3Rpb24tcmVxdWVzdF9hZGRfc3Rha2VcbiAgICovXG4gIFJlcXVlc3RBZGRTdGFrZSA9ICdyZXF1ZXN0X2FkZF9zdGFrZScsXG4gIC8qKlxuICAgKiBXaXRoZHJhdyBzb21lIHBvcnRpb24gb2YgYSBzdGFrZSBmcm9tIGEgdmFsaWRhdG9yJ3Mgc3Rha2luZyBwb29sLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdWlfc3lzdGVtLm1kI2Z1bmN0aW9uLXJlcXVlc3Rfd2l0aGRyYXdfc3Rha2VcbiAgICovXG4gIFJlcXVlc3RXaXRoZHJhd1N0YWtlID0gJ3JlcXVlc3Rfd2l0aGRyYXdfc3Rha2UnLFxuICAvKipcbiAgICogU3BsaXQgU3Rha2VkU3VpIHNlbGYgdG8gdHdvIHBhcnRzLCBvbmUgd2l0aCBwcmluY2lwYWwgc3BsaXRfYW1vdW50LCBhbmQgdGhlIHJlbWFpbmluZyBwcmluY2lwYWwgaXMgbGVmdCBpbiBzZWxmLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdGFraW5nX3Bvb2wubWQjMHgzX3N0YWtpbmdfcG9vbF9zcGxpdFxuICAgKi9cbiAgU3Rha2luZ1Bvb2xTcGxpdCA9ICc6OnN0YWtpbmdfcG9vbDo6c3BsaXQnLFxuICAvKipcbiAgICogVHJhbnNmZXIgb3duZXJzaGlwIG9mIG9iaiB0byByZWNpcGllbnQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLWZyYW1ld29yay9kb2NzL3RyYW5zZmVyLm1kI2Z1bmN0aW9uLXB1YmxpY190cmFuc2ZlclxuICAgKi9cbiAgUHVibGljVHJhbnNmZXIgPSAnOjp0cmFuc2Zlcjo6cHVibGljX3RyYW5zZmVyJyxcbn1cbiJdfQ==
@@ -11,6 +11,8 @@ export { Transaction } from './transaction';
11
11
  export { TransferTransaction } from './transferTransaction';
12
12
  export { TransactionBuilder } from './transactionBuilder';
13
13
  export { TransferBuilder } from './transferBuilder';
14
+ export { TokenTransferTransaction } from './tokenTransferTransaction';
15
+ export { TokenTransferBuilder } from './tokenTransferBuilder';
14
16
  export { TransactionBuilderFactory } from './transactionBuilderFactory';
15
17
  export { Interface, Utils };
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.Utils = exports.Interface = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.TransferTransaction = exports.Transaction = exports.CustomTransactionBuilder = exports.CustomTransaction = exports.UnstakingTransaction = exports.UnstakingBuilder = exports.StakingTransaction = exports.StakingBuilder = exports.KeyPair = void 0;
26
+ exports.Utils = exports.Interface = exports.TransactionBuilderFactory = exports.TokenTransferBuilder = exports.TokenTransferTransaction = exports.TransferBuilder = exports.TransactionBuilder = exports.TransferTransaction = exports.Transaction = exports.CustomTransactionBuilder = exports.CustomTransaction = exports.UnstakingTransaction = exports.UnstakingBuilder = exports.StakingTransaction = exports.StakingBuilder = exports.KeyPair = void 0;
27
27
  const Utils = __importStar(require("./utils"));
28
28
  exports.Utils = Utils;
29
29
  const Interface = __importStar(require("./iface"));
@@ -50,6 +50,10 @@ var transactionBuilder_1 = require("./transactionBuilder");
50
50
  Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
51
51
  var transferBuilder_1 = require("./transferBuilder");
52
52
  Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
53
+ var tokenTransferTransaction_1 = require("./tokenTransferTransaction");
54
+ Object.defineProperty(exports, "TokenTransferTransaction", { enumerable: true, get: function () { return tokenTransferTransaction_1.TokenTransferTransaction; } });
55
+ var tokenTransferBuilder_1 = require("./tokenTransferBuilder");
56
+ Object.defineProperty(exports, "TokenTransferBuilder", { enumerable: true, get: function () { return tokenTransferBuilder_1.TokenTransferBuilder; } });
53
57
  var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
54
58
  Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQWlDO0FBZWIsc0JBQUs7QUFkekIsbURBQXFDO0FBYzVCLDhCQUFTO0FBWmxCLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2QiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IsdURBQXNEO0FBQTdDLG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3Qix5REFBd0Q7QUFBL0Msc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsdUVBQXNFO0FBQTdELG9JQUFBLHdCQUF3QixPQUFBO0FBQ2pDLDZDQUE0QztBQUFuQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsNkRBQTREO0FBQW5ELDBIQUFBLG1CQUFtQixPQUFBO0FBQzVCLDJEQUEwRDtBQUFqRCx3SEFBQSxrQkFBa0IsT0FBQTtBQUMzQixxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFN0YWtpbmdCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nQnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3N0YWtpbmdUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBVbnN0YWtpbmdCdWlsZGVyIH0gZnJvbSAnLi91bnN0YWtpbmdCdWlsZGVyJztcbmV4cG9ydCB7IFVuc3Rha2luZ1RyYW5zYWN0aW9uIH0gZnJvbSAnLi91bnN0YWtpbmdUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBDdXN0b21UcmFuc2FjdGlvbiB9IGZyb20gJy4vY3VzdG9tVHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgQ3VzdG9tVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9jdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IFRyYW5zZmVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zZmVyVHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBJbnRlcmZhY2UsIFV0aWxzIH07XG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQWlDO0FBaUJiLHNCQUFLO0FBaEJ6QixtREFBcUM7QUFnQjVCLDhCQUFTO0FBZGxCLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2QiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IsdURBQXNEO0FBQTdDLG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3Qix5REFBd0Q7QUFBL0Msc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsdUVBQXNFO0FBQTdELG9JQUFBLHdCQUF3QixPQUFBO0FBQ2pDLDZDQUE0QztBQUFuQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsNkRBQTREO0FBQW5ELDBIQUFBLG1CQUFtQixPQUFBO0FBQzVCLDJEQUEwRDtBQUFqRCx3SEFBQSxrQkFBa0IsT0FBQTtBQUMzQixxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLHVFQUFzRTtBQUE3RCxvSUFBQSx3QkFBd0IsT0FBQTtBQUNqQywrREFBOEQ7QUFBckQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0IseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgKiBhcyBJbnRlcmZhY2UgZnJvbSAnLi9pZmFjZSc7XG5cbmV4cG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuZXhwb3J0IHsgU3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3N0YWtpbmdCdWlsZGVyJztcbmV4cG9ydCB7IFN0YWtpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4vc3Rha2luZ1RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IFVuc3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3Vuc3Rha2luZ0J1aWxkZXInO1xuZXhwb3J0IHsgVW5zdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Vuc3Rha2luZ1RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IEN1c3RvbVRyYW5zYWN0aW9uIH0gZnJvbSAnLi9jdXN0b21UcmFuc2FjdGlvbic7XG5leHBvcnQgeyBDdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2N1c3RvbVRyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgVHJhbnNmZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNmZXJUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Rva2VuVHJhbnNmZXJUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBJbnRlcmZhY2UsIFV0aWxzIH07XG4iXX0=
@@ -0,0 +1,44 @@
1
+ import { TransactionType, Recipient, BaseKey } from '@bitgo/sdk-core';
2
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
3
+ import { SuiTransaction, TokenTransferProgrammableTransaction } from './iface';
4
+ import { Transaction } from './transaction';
5
+ import { TransactionBuilder } from './transactionBuilder';
6
+ import { TokenTransferTransaction } from './tokenTransferTransaction';
7
+ import { SuiObjectRef } from './mystenlab/types';
8
+ export declare class TokenTransferBuilder extends TransactionBuilder<TokenTransferProgrammableTransaction> {
9
+ protected _recipients: Recipient[];
10
+ protected _inputObjects: SuiObjectRef[];
11
+ constructor(_coinConfig: Readonly<CoinConfig>);
12
+ protected get transactionType(): TransactionType;
13
+ /** @inheritdoc */
14
+ validateTransaction(transaction: TokenTransferTransaction): void;
15
+ /** @inheritdoc */
16
+ sign(key: BaseKey): void;
17
+ /** @inheritdoc */
18
+ protected fromImplementation(rawTransaction: string): Transaction<TokenTransferProgrammableTransaction>;
19
+ /** @inheritdoc */
20
+ protected buildImplementation(): Promise<Transaction<TokenTransferProgrammableTransaction>>;
21
+ /** @inheritdoc */
22
+ initBuilder(tx: TokenTransferTransaction): void;
23
+ send(recipients: Recipient[]): this;
24
+ inputObjects(inputObject: SuiObjectRef[]): this;
25
+ /**
26
+ * Validates all fields are defined correctly
27
+ */
28
+ private validateTransactionFields;
29
+ private validateInputObjects;
30
+ /**
31
+ * Build SuiTransaction
32
+ *
33
+ * @return {SuiTransaction<TokenTransferProgrammableTransaction>}
34
+ * @protected
35
+ */
36
+ protected buildSuiTransaction(): SuiTransaction<TokenTransferProgrammableTransaction>;
37
+ /**
38
+ * Extracts the objects that were provided as inputs while building the transaction
39
+ * @param txData
40
+ * @returns {SuiObjectRef[]} Objects that are inputs for the transaction
41
+ */
42
+ private getInputObjectsFromTx;
43
+ }
44
+ //# sourceMappingURL=tokenTransferBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/tokenTransferBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAyB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAsB,oCAAoC,EAAE,MAAM,SAAS,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AASjD,qBAAa,oBAAqB,SAAQ,kBAAkB,CAAC,oCAAoC,CAAC;IAChG,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC;IACnC,SAAS,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC;gBAC5B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,wBAAwB,GAAG,IAAI;IAOhE,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKxB,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,oCAAoC,CAAC;IAQvG,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,oCAAoC,CAAC,CAAC;IAgBjG,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,wBAAwB,GAAG,IAAI;IAgB/C,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAMnC,YAAY,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI;IAM/C;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAYjC,OAAO,CAAC,oBAAoB;IAU5B;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,IAAI,cAAc,CAAC,oCAAoC,CAAC;IAiCrF;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;CAwB9B"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.TokenTransferBuilder = void 0;
30
+ const assert_1 = __importDefault(require("assert"));
31
+ const sdk_core_1 = require("@bitgo/sdk-core");
32
+ const iface_1 = require("./iface");
33
+ const transactionBuilder_1 = require("./transactionBuilder");
34
+ const tokenTransferTransaction_1 = require("./tokenTransferTransaction");
35
+ const utils_1 = __importStar(require("./utils"));
36
+ const builder_1 = require("./mystenlab/builder");
37
+ class TokenTransferBuilder extends transactionBuilder_1.TransactionBuilder {
38
+ constructor(_coinConfig) {
39
+ super(_coinConfig);
40
+ this._transaction = new tokenTransferTransaction_1.TokenTransferTransaction(_coinConfig);
41
+ }
42
+ get transactionType() {
43
+ return sdk_core_1.TransactionType.Send;
44
+ }
45
+ /** @inheritdoc */
46
+ validateTransaction(transaction) {
47
+ if (!transaction.suiTransaction) {
48
+ return;
49
+ }
50
+ this.validateTransactionFields();
51
+ }
52
+ /** @inheritdoc */
53
+ sign(key) {
54
+ this.transaction.setSuiTransaction(this.buildSuiTransaction());
55
+ super.sign(key);
56
+ }
57
+ /** @inheritdoc */
58
+ fromImplementation(rawTransaction) {
59
+ const tx = new tokenTransferTransaction_1.TokenTransferTransaction(this._coinConfig);
60
+ this.validateRawTransaction(rawTransaction);
61
+ tx.fromRawTransaction(rawTransaction);
62
+ this.initBuilder(tx);
63
+ return this.transaction;
64
+ }
65
+ /** @inheritdoc */
66
+ async buildImplementation() {
67
+ this.transaction.setSuiTransaction(this.buildSuiTransaction());
68
+ this.transaction.transactionType(this.transactionType);
69
+ if (this._signer) {
70
+ this.transaction.sign(this._signer);
71
+ }
72
+ this._signatures.forEach((signature) => {
73
+ this.transaction.addSignature(signature.publicKey, signature.signature);
74
+ });
75
+ this.transaction.loadInputsAndOutputs();
76
+ return this.transaction;
77
+ }
78
+ /** @inheritdoc */
79
+ initBuilder(tx) {
80
+ this._transaction = tx;
81
+ if (tx.signature && tx.signature.length > 0) {
82
+ this._signatures = [tx.suiSignature];
83
+ }
84
+ const txData = tx.toJson();
85
+ this.type(iface_1.SuiTransactionType.TokenTransfer);
86
+ this.sender(txData.sender);
87
+ this.gasData(txData.gasData);
88
+ const recipients = utils_1.default.getRecipients(tx.suiTransaction);
89
+ this.send(recipients);
90
+ const inputObjects = this.getInputObjectsFromTx(tx.suiTransaction.tx);
91
+ this.inputObjects(inputObjects);
92
+ }
93
+ send(recipients) {
94
+ this.validateRecipients(recipients);
95
+ this._recipients = recipients;
96
+ return this;
97
+ }
98
+ inputObjects(inputObject) {
99
+ this.validateInputObjects(inputObject);
100
+ this._inputObjects = inputObject;
101
+ return this;
102
+ }
103
+ /**
104
+ * Validates all fields are defined correctly
105
+ */
106
+ validateTransactionFields() {
107
+ (0, assert_1.default)(this._type, new sdk_core_1.BuildTransactionError('type is required before building'));
108
+ (0, assert_1.default)(this._sender, new sdk_core_1.BuildTransactionError('sender is required before building'));
109
+ (0, assert_1.default)(this._recipients && this._recipients.length > 0, new sdk_core_1.BuildTransactionError('at least one recipient is required before building'));
110
+ (0, assert_1.default)(this._gasData, new sdk_core_1.BuildTransactionError('gasData is required before building'));
111
+ this.validateGasData(this._gasData);
112
+ this.validateInputObjects(this._inputObjects);
113
+ }
114
+ validateInputObjects(inputObjects) {
115
+ (0, assert_1.default)(inputObjects && inputObjects.length > 0, new sdk_core_1.BuildTransactionError('input objects required before building'));
116
+ inputObjects.forEach((inputObject) => {
117
+ this.validateSuiObjectRef(inputObject, 'input object');
118
+ });
119
+ }
120
+ /**
121
+ * Build SuiTransaction
122
+ *
123
+ * @return {SuiTransaction<TokenTransferProgrammableTransaction>}
124
+ * @protected
125
+ */
126
+ buildSuiTransaction() {
127
+ this.validateTransactionFields();
128
+ const programmableTxBuilder = new builder_1.TransactionBlock();
129
+ const inputObjects = this._inputObjects.map((object) => programmableTxBuilder.object(builder_1.Inputs.ObjectRef(object)));
130
+ const mergedObject = inputObjects.shift();
131
+ if (inputObjects.length > 0) {
132
+ programmableTxBuilder.mergeCoins(mergedObject, inputObjects);
133
+ }
134
+ this._recipients.forEach((recipient) => {
135
+ const splitObject = programmableTxBuilder.splitCoins(mergedObject, [
136
+ programmableTxBuilder.pure(Number(recipient.amount)),
137
+ ]);
138
+ programmableTxBuilder.transferObjects([splitObject], programmableTxBuilder.object(recipient.address));
139
+ });
140
+ const txData = programmableTxBuilder.blockData;
141
+ return {
142
+ type: this._type,
143
+ sender: this._sender,
144
+ tx: {
145
+ inputs: [...txData.inputs],
146
+ transactions: [...txData.transactions],
147
+ },
148
+ gasData: {
149
+ ...this._gasData,
150
+ },
151
+ };
152
+ }
153
+ /**
154
+ * Extracts the objects that were provided as inputs while building the transaction
155
+ * @param txData
156
+ * @returns {SuiObjectRef[]} Objects that are inputs for the transaction
157
+ */
158
+ getInputObjectsFromTx(tx) {
159
+ const inputs = tx.inputs;
160
+ const transaction = tx.transactions[0];
161
+ let args = [];
162
+ if (transaction.kind === 'MergeCoins') {
163
+ const { destination, sources } = transaction;
164
+ args = [destination, ...sources];
165
+ }
166
+ else if (transaction.kind === 'SplitCoins') {
167
+ args = [transaction.coin];
168
+ }
169
+ const inputObjects = [];
170
+ args.forEach((arg) => {
171
+ if (arg.kind === 'Input') {
172
+ const input = inputs[arg.index];
173
+ if ('Object' in input && (0, utils_1.isImmOrOwnedObj)(input.Object)) {
174
+ inputObjects.push(input.Object.ImmOrOwned);
175
+ }
176
+ }
177
+ });
178
+ return inputObjects;
179
+ }
180
+ }
181
+ exports.TokenTransferBuilder = TokenTransferBuilder;
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5UcmFuc2ZlckJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Rva2VuVHJhbnNmZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLDhDQUE2RjtBQUU3RixtQ0FBbUc7QUFFbkcsNkRBQTBEO0FBQzFELHlFQUFzRTtBQUV0RSxpREFBaUQ7QUFDakQsaURBSzZCO0FBRTdCLE1BQWEsb0JBQXFCLFNBQVEsdUNBQXdEO0lBR2hHLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxtREFBd0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxXQUFxQztRQUN2RCxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRTtZQUMvQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFZO1FBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELE1BQU0sRUFBRSxHQUFHLElBQUksbURBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1QyxFQUFF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QUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUFFO1lBQzVDLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtRQUVELE1BQU0sWUFBWSxHQUFtQixFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ25CLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7Z0JBQ3hCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksUUFBUSxJQUFJLEtBQUssSUFBSSxJQUFBLHVCQUFlLEVBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUN0RCxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzVDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7Q0FDRjtBQTlLRCxvREE4S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUsIFJlY2lwaWVudCwgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBCYXNlS2V5IH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBTdWlUcmFuc2FjdGlvbiwgU3VpVHJhbnNhY3Rpb25UeXBlLCBUb2tlblRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24gfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Rva2VuVHJhbnNmZXJUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBTdWlPYmplY3RSZWYgfSBmcm9tICcuL215c3RlbmxhYi90eXBlcyc7XG5pbXBvcnQgdXRpbHMsIHsgaXNJbW1Pck93bmVkT2JqIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQge1xuICBJbnB1dHMsXG4gIFRyYW5zYWN0aW9uVHlwZSBhcyBTdWlUcmFuc2FjdGlvbkJsb2NrVHlwZSxcbiAgVHJhbnNhY3Rpb25CbG9jayBhcyBQcm9ncmFtbWluZ1RyYW5zYWN0aW9uQmxvY2tCdWlsZGVyLFxuICBUcmFuc2FjdGlvbkFyZ3VtZW50LFxufSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRva2VuVHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyPFRva2VuVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICBwcm90ZWN0ZWQgX3JlY2lwaWVudHM6IFJlY2lwaWVudFtdO1xuICBwcm90ZWN0ZWQgX2lucHV0T2JqZWN0czogU3VpT2JqZWN0UmVmW107XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbjogVG9rZW5UcmFuc2ZlclRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbi5zdWlUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBzaWduKGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHN1cGVyLnNpZ24oa2V5KTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbjxUb2tlblRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCB0eCA9IG5ldyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgdGhpcy52YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB0eC5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIHRoaXMuaW5pdEJ1aWxkZXIodHgpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb248VG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPj4ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlKHRoaXMudHJhbnNhY3Rpb25UeXBlKTtcblxuICAgIGlmICh0aGlzLl9zaWduZXIpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbih0aGlzLl9zaWduZXIpO1xuICAgIH1cblxuICAgIHRoaXMuX3NpZ25hdHVyZXMuZm9yRWFjaCgoc2lnbmF0dXJlKSA9PiB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmFkZFNpZ25hdHVyZShzaWduYXR1cmUucHVibGljS2V5LCBzaWduYXR1cmUuc2lnbmF0dXJlKTtcbiAgICB9KTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24ubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpbml0QnVpbGRlcih0eDogVG9rZW5UcmFuc2ZlclRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0eDtcblxuICAgIGlmICh0eC5zaWduYXR1cmUgJiYgdHguc2lnbmF0dXJlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZXMgPSBbdHguc3VpU2lnbmF0dXJlXTtcbiAgICB9XG4gICAgY29uc3QgdHhEYXRhID0gdHgudG9Kc29uKCk7XG4gICAgdGhpcy50eXBlKFN1aVRyYW5zYWN0aW9uVHlwZS5Ub2tlblRyYW5zZmVyKTtcbiAgICB0aGlzLnNlbmRlcih0eERhdGEuc2VuZGVyKTtcbiAgICB0aGlzLmdhc0RhdGEodHhEYXRhLmdhc0RhdGEpO1xuICAgIGNvbnN0IHJlY2lwaWVudHMgPSB1dGlscy5nZXRSZWNpcGllbnRzKHR4LnN1aVRyYW5zYWN0aW9uKTtcbiAgICB0aGlzLnNlbmQocmVjaXBpZW50cyk7XG4gICAgY29uc3QgaW5wdXRPYmplY3RzID0gdGhpcy5nZXRJbnB1dE9iamVjdHNGcm9tVHgodHguc3VpVHJhbnNhY3Rpb24udHgpO1xuICAgIHRoaXMuaW5wdXRPYmplY3RzKGlucHV0T2JqZWN0cyk7XG4gIH1cblxuICBzZW5kKHJlY2lwaWVudHM6IFJlY2lwaWVudFtdKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVJlY2lwaWVudHMocmVjaXBpZW50cyk7XG4gICAgdGhpcy5fcmVjaXBpZW50cyA9IHJlY2lwaWVudHM7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBpbnB1dE9iamVjdHMoaW5wdXRPYmplY3Q6IFN1aU9iamVjdFJlZltdKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUlucHV0T2JqZWN0cyhpbnB1dE9iamVjdCk7XG4gICAgdGhpcy5faW5wdXRPYmplY3RzID0gaW5wdXRPYmplY3Q7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGFsbCBmaWVsZHMgYXJlIGRlZmluZWQgY29ycmVjdGx5XG4gICAqL1xuICBwcml2YXRlIHZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTogdm9pZCB7XG4gICAgYXNzZXJ0KHRoaXMuX3R5cGUsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3R5cGUgaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydCh0aGlzLl9zZW5kZXIsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3NlbmRlciBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgYXNzZXJ0KFxuICAgICAgdGhpcy5fcmVjaXBpZW50cyAmJiB0aGlzLl9yZWNpcGllbnRzLmxlbmd0aCA+IDAsXG4gICAgICBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdhdCBsZWFzdCBvbmUgcmVjaXBpZW50IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpXG4gICAgKTtcbiAgICBhc3NlcnQodGhpcy5fZ2FzRGF0YSwgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZ2FzRGF0YSBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgdGhpcy52YWxpZGF0ZUdhc0RhdGEodGhpcy5fZ2FzRGF0YSk7XG4gICAgdGhpcy52YWxpZGF0ZUlucHV0T2JqZWN0cyh0aGlzLl9pbnB1dE9iamVjdHMpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUlucHV0T2JqZWN0cyhpbnB1dE9iamVjdHM6IFN1aU9iamVjdFJlZltdKTogdm9pZCB7XG4gICAgYXNzZXJ0KFxuICAgICAgaW5wdXRPYmplY3RzICYmIGlucHV0T2JqZWN0cy5sZW5ndGggPiAwLFxuICAgICAgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignaW5wdXQgb2JqZWN0cyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKVxuICAgICk7XG4gICAgaW5wdXRPYmplY3RzLmZvckVhY2goKGlucHV0T2JqZWN0KSA9PiB7XG4gICAgICB0aGlzLnZhbGlkYXRlU3VpT2JqZWN0UmVmKGlucHV0T2JqZWN0LCAnaW5wdXQgb2JqZWN0Jyk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgU3VpVHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHJldHVybiB7U3VpVHJhbnNhY3Rpb248VG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPn1cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkU3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgdGhpcy52YWxpZGF0ZVRyYW5zYWN0aW9uRmllbGRzKCk7XG5cbiAgICBjb25zdCBwcm9ncmFtbWFibGVUeEJ1aWxkZXIgPSBuZXcgUHJvZ3JhbW1pbmdUcmFuc2FjdGlvbkJsb2NrQnVpbGRlcigpO1xuXG4gICAgY29uc3QgaW5wdXRPYmplY3RzID0gdGhpcy5faW5wdXRPYmplY3RzLm1hcCgob2JqZWN0KSA9PiBwcm9ncmFtbWFibGVUeEJ1aWxkZXIub2JqZWN0KElucHV0cy5PYmplY3RSZWYob2JqZWN0KSkpO1xuICAgIGNvbnN0IG1lcmdlZE9iamVjdCA9IGlucHV0T2JqZWN0cy5zaGlmdCgpIGFzIFRyYW5zYWN0aW9uQXJndW1lbnQ7XG5cbiAgICBpZiAoaW5wdXRPYmplY3RzLmxlbmd0aCA+IDApIHtcbiAgICAgIHByb2dyYW1tYWJsZVR4QnVpbGRlci5tZXJnZUNvaW5zKG1lcmdlZE9iamVjdCwgaW5wdXRPYmplY3RzKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWNpcGllbnRzLmZvckVhY2goKHJlY2lwaWVudCkgPT4ge1xuICAgICAgY29uc3Qgc3BsaXRPYmplY3QgPSBwcm9ncmFtbWFibGVUeEJ1aWxkZXIuc3BsaXRDb2lucyhtZXJnZWRPYmplY3QsIFtcbiAgICAgICAgcHJvZ3JhbW1hYmxlVHhCdWlsZGVyLnB1cmUoTnVtYmVyKHJlY2lwaWVudC5hbW91bnQpKSxcbiAgICAgIF0pO1xuICAgICAgcHJvZ3JhbW1hYmxlVHhCdWlsZGVyLnRyYW5zZmVyT2JqZWN0cyhbc3BsaXRPYmplY3RdLCBwcm9ncmFtbWFibGVUeEJ1aWxkZXIub2JqZWN0KHJlY2lwaWVudC5hZGRyZXNzKSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCB0eERhdGEgPSBwcm9ncmFtbWFibGVUeEJ1aWxkZXIuYmxvY2tEYXRhO1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiB0aGlzLl90eXBlLFxuICAgICAgc2VuZGVyOiB0aGlzLl9zZW5kZXIsXG4gICAgICB0eDoge1xuICAgICAgICBpbnB1dHM6IFsuLi50eERhdGEuaW5wdXRzXSxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbLi4udHhEYXRhLnRyYW5zYWN0aW9uc10sXG4gICAgICB9LFxuICAgICAgZ2FzRGF0YToge1xuICAgICAgICAuLi50aGlzLl9nYXNEYXRhLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEV4dHJhY3RzIHRoZSBvYmplY3RzIHRoYXQgd2VyZSBwcm92aWRlZCBhcyBpbnB1dHMgd2hpbGUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSB0eERhdGFcbiAgICogQHJldHVybnMge1N1aU9iamVjdFJlZltdfSBPYmplY3RzIHRoYXQgYXJlIGlucHV0cyBmb3IgdGhlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldElucHV0T2JqZWN0c0Zyb21UeCh0eDogVG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uKTogU3VpT2JqZWN0UmVmW10ge1xuICAgIGNvbnN0IGlucHV0cyA9IHR4LmlucHV0cztcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IHR4LnRyYW5zYWN0aW9uc1swXSBhcyBTdWlUcmFuc2FjdGlvbkJsb2NrVHlwZTtcblxuICAgIGxldCBhcmdzOiBUcmFuc2FjdGlvbkFyZ3VtZW50W10gPSBbXTtcbiAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ01lcmdlQ29pbnMnKSB7XG4gICAgICBjb25zdCB7IGRlc3RpbmF0aW9uLCBzb3VyY2VzIH0gPSB0cmFuc2FjdGlvbjtcbiAgICAgIGFyZ3MgPSBbZGVzdGluYXRpb24sIC4uLnNvdXJjZXNdO1xuICAgIH0gZWxzZSBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ1NwbGl0Q29pbnMnKSB7XG4gICAgICBhcmdzID0gW3RyYW5zYWN0aW9uLmNvaW5dO1xuICAgIH1cblxuICAgIGNvbnN0IGlucHV0T2JqZWN0czogU3VpT2JqZWN0UmVmW10gPSBbXTtcbiAgICBhcmdzLmZvckVhY2goKGFyZykgPT4ge1xuICAgICAgaWYgKGFyZy5raW5kID09PSAnSW5wdXQnKSB7XG4gICAgICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzW2FyZy5pbmRleF07XG4gICAgICAgIGlmICgnT2JqZWN0JyBpbiBpbnB1dCAmJiBpc0ltbU9yT3duZWRPYmooaW5wdXQuT2JqZWN0KSkge1xuICAgICAgICAgIGlucHV0T2JqZWN0cy5wdXNoKGlucHV0Lk9iamVjdC5JbW1Pck93bmVkKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGlucHV0T2JqZWN0cztcbiAgfVxufVxuIl19
@@ -0,0 +1,52 @@
1
+ /// <reference types="node" />
2
+ import { SuiTransaction, TokenTransferProgrammableTransaction, TransactionExplanation, TxData } from './iface';
3
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
4
+ import { Transaction } from './transaction';
5
+ import { BaseKey, PublicKey as BasePublicKey, Signature, TransactionType } from '@bitgo/sdk-core';
6
+ export declare class TokenTransferTransaction extends Transaction<TokenTransferProgrammableTransaction> {
7
+ constructor(_coinConfig: Readonly<CoinConfig>);
8
+ get suiTransaction(): SuiTransaction<TokenTransferProgrammableTransaction>;
9
+ setSuiTransaction(tx: SuiTransaction<TokenTransferProgrammableTransaction>): void;
10
+ /** @inheritDoc */
11
+ get id(): string;
12
+ addSignature(publicKey: BasePublicKey, signature: Buffer): void;
13
+ get suiSignature(): Signature;
14
+ /** @inheritdoc */
15
+ canSign(key: BaseKey): boolean;
16
+ /** @inheritdoc */
17
+ toBroadcastFormat(): string;
18
+ /** @inheritdoc */
19
+ toJson(): TxData;
20
+ /** @inheritDoc */
21
+ explainTransaction(): TransactionExplanation;
22
+ /**
23
+ * Set the transaction type.
24
+ *
25
+ * @param {TransactionType} transactionType The transaction type to be set.
26
+ */
27
+ transactionType(transactionType: TransactionType): void;
28
+ /**
29
+ * Load the input and output data on this transaction.
30
+ */
31
+ loadInputsAndOutputs(): void;
32
+ /**
33
+ * Sets this transaction payload
34
+ *
35
+ * @param {string} rawTransaction
36
+ */
37
+ fromRawTransaction(rawTransaction: string): void;
38
+ /**
39
+ * Helper function for serialize() to get the correct txData with transaction type
40
+ *
41
+ * @return {TxData}
42
+ */
43
+ getTxData(): TxData;
44
+ /**
45
+ * Returns a complete explanation for a transfer transaction
46
+ * @param {TxData} json The transaction data in json format
47
+ * @param {TransactionExplanation} explanationResult The transaction explanation to be completed
48
+ * @returns {TransactionExplanation}
49
+ */
50
+ explainTokenTransferTransaction(json: TxData, explanationResult: TransactionExplanation): TransactionExplanation;
51
+ }
52
+ //# sourceMappingURL=tokenTransferTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenTransferTransaction.d.ts","sourceRoot":"","sources":["../../../src/lib/tokenTransferTransaction.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,oCAAoC,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC/G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,OAAO,EACP,SAAS,IAAI,aAAa,EAG1B,SAAS,EAET,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAMzB,qBAAa,wBAAyB,SAAQ,WAAW,CAAC,oCAAoC,CAAC;gBACjF,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,IAAI,cAAc,IAAI,cAAc,CAAC,oCAAoC,CAAC,CAEzE;IAED,iBAAiB,CAAC,EAAE,EAAE,cAAc,CAAC,oCAAoC,CAAC,GAAG,IAAI;IAIjF,kBAAkB;IAClB,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D,IAAI,YAAY,IAAI,SAAS,CAE5B;IAED,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAO3B,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAehB,kBAAkB;IAClB,kBAAkB,IAAI,sBAAsB;IAwB5C;;;;OAIG;IACH,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAIvD;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAqB5B;;;;OAIG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAchD;;;;OAIG;IACI,SAAS,IAAI,MAAM;IAyC1B;;;;;OAKG;IACH,+BAA+B,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;CAWjH"}