@dstoken-solana/rwa-rbac 0.0.1-rc0

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.
Files changed (76) hide show
  1. package/dist/client/AssetController.d.ts +98 -0
  2. package/dist/client/AssetController.d.ts.map +1 -0
  3. package/dist/client/AssetController.js +535 -0
  4. package/dist/client/AssetController.js.map +1 -0
  5. package/dist/client/IdentityMetadataRegistry.d.ts +64 -0
  6. package/dist/client/IdentityMetadataRegistry.d.ts.map +1 -0
  7. package/dist/client/IdentityMetadataRegistry.js +399 -0
  8. package/dist/client/IdentityMetadataRegistry.js.map +1 -0
  9. package/dist/client/IdentityRegistry.d.ts +65 -0
  10. package/dist/client/IdentityRegistry.d.ts.map +1 -0
  11. package/dist/client/IdentityRegistry.js +328 -0
  12. package/dist/client/IdentityRegistry.js.map +1 -0
  13. package/dist/client/PolicyEngine.d.ts +74 -0
  14. package/dist/client/PolicyEngine.d.ts.map +1 -0
  15. package/dist/client/PolicyEngine.js +286 -0
  16. package/dist/client/PolicyEngine.js.map +1 -0
  17. package/dist/client/RwaRbacClient.d.ts +70 -0
  18. package/dist/client/RwaRbacClient.d.ts.map +1 -0
  19. package/dist/client/RwaRbacClient.js +269 -0
  20. package/dist/client/RwaRbacClient.js.map +1 -0
  21. package/dist/client/TokenLocks.d.ts +55 -0
  22. package/dist/client/TokenLocks.d.ts.map +1 -0
  23. package/dist/client/TokenLocks.js +320 -0
  24. package/dist/client/TokenLocks.js.map +1 -0
  25. package/dist/client/index.d.ts +7 -0
  26. package/dist/client/index.d.ts.map +1 -0
  27. package/dist/client/index.js +23 -0
  28. package/dist/client/index.js.map +1 -0
  29. package/dist/constants.d.ts +5 -0
  30. package/dist/constants.d.ts.map +1 -0
  31. package/dist/constants.js +8 -0
  32. package/dist/constants.js.map +1 -0
  33. package/dist/index.d.ts +6 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +22 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/pdas.d.ts +9 -0
  38. package/dist/pdas.d.ts.map +1 -0
  39. package/dist/pdas.js +52 -0
  40. package/dist/pdas.js.map +1 -0
  41. package/dist/types/flags.d.ts +43 -0
  42. package/dist/types/flags.d.ts.map +1 -0
  43. package/dist/types/flags.js +48 -0
  44. package/dist/types/flags.js.map +1 -0
  45. package/dist/types/generated/index.d.ts +8 -0
  46. package/dist/types/generated/index.d.ts.map +1 -0
  47. package/dist/types/generated/index.js +13 -0
  48. package/dist/types/generated/index.js.map +1 -0
  49. package/dist/types/generated/rwa_imr.d.ts +592 -0
  50. package/dist/types/generated/rwa_imr.d.ts.map +1 -0
  51. package/dist/types/generated/rwa_imr.js +3 -0
  52. package/dist/types/generated/rwa_imr.js.map +1 -0
  53. package/dist/types/generated/rwa_imr.json +585 -0
  54. package/dist/types/generated/rwa_rbac.d.ts +2671 -0
  55. package/dist/types/generated/rwa_rbac.d.ts.map +1 -0
  56. package/dist/types/generated/rwa_rbac.js +3 -0
  57. package/dist/types/generated/rwa_rbac.js.map +1 -0
  58. package/dist/types/generated/rwa_rbac.json +2664 -0
  59. package/dist/types/generated/token_locks.d.ts +649 -0
  60. package/dist/types/generated/token_locks.d.ts.map +1 -0
  61. package/dist/types/generated/token_locks.js +3 -0
  62. package/dist/types/generated/token_locks.js.map +1 -0
  63. package/dist/types/generated/token_locks.json +642 -0
  64. package/dist/types/index.d.ts +4 -0
  65. package/dist/types/index.d.ts.map +1 -0
  66. package/dist/types/index.js +20 -0
  67. package/dist/types/index.js.map +1 -0
  68. package/dist/types/instructions.d.ts +213 -0
  69. package/dist/types/instructions.d.ts.map +1 -0
  70. package/dist/types/instructions.js +3 -0
  71. package/dist/types/instructions.js.map +1 -0
  72. package/dist/utils.d.ts +7 -0
  73. package/dist/utils.d.ts.map +1 -0
  74. package/dist/utils.js +16 -0
  75. package/dist/utils.js.map +1 -0
  76. package/package.json +38 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetController.js","sourceRoot":"","sources":["../../src/client/AssetController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAKyB;AACzB,+CAK2B;AAO3B,+DA4BuC;AACvC,0CAA0C;AAC1C,gCAKiB;AAEjB;;GAEG;AACH;IAIE,yBAAY,SAAoB,EAAE,WAA6B;QAC7D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACG,0CAAgB,GAAtB,UAAuB,IAA6B;;;gBAClD,sBAAO,IAAA,0CAA0B,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAC;;;KAClE;IAED;;;;;;SAMK;IACC,6CAAmB,GAAzB,UACE,IAA6B,EAC7B,qBAAgC,EAChC,kBAA8B;;;;;4BAEb,qBAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,mBAAmB,CACvE,IAAI,CACL,EAAA;;wBAFK,QAAQ,GAAG,SAEhB;wBACK,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;wBAC7B,sBAAO,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC5B,mBAAmB,CAAC,MAAM,CAAC;iCAC3B,cAAc,CAAC;gCACd,KAAK,EAAE,IAAI,CAAC,KAAK;gCACjB,IAAI,EAAE,IAAI,CAAC,MAAM;gCACjB,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,uBAAA;gCACrB,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,sBAAsB,EAAE,wCAAwB;gCAChD,YAAY,EAAE,iCAAqB;gCACnC,cAAc,EAAE,IAAA,gDAAgC,GAAE;gCAClD,aAAa,EAAE,uBAAa,CAAC,SAAS;6BACvC,CAAC;iCACD,WAAW,EAAE,EAAC;;;;KAClB;IAED;;;;;OAKG;IACG,wCAAc,GAApB,UACE,IAA6B,EAC7B,qBAAgC,EAChC,kBAA8B;;;;;;wBAExB,gBAAgB,GAAG,IAAA,sCAAsB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC1D,WAAW,GAAG,IAAA,wBAAiB,EAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;wBACnE,oBAAoB,GAAG,IAAA,yCAA6B,EACxD,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,IAAI,mBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAC1B,KAAK,EACL,iCAAqB,CACtB,CAAC;wBACI,cAAc,GAAG,IAAA,oCAAoB,EACzC,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,QAAQ,EAAE,CACvB,CAAC;wBACI,mBAAmB,GAAG,IAAA,mCAA4B,EACtD,qBAAqB,CACtB,CAAC;wBACI,GAAG,GAAG,EAAE,CAAC;wBAIb,qBAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CACvD,oBAAoB,CACrB,EAAA;;wBAHG,gBAAgB,GACpB,SAEC;wBACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;4BAEhB,WAAW,GAAG,IAAA,mDAAuC,EACzD,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EACzB,oBAAoB,EACpB,IAAI,mBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAC1B,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,iCAAqB,CACtB,CAAC;4BACF,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACxB,CAAC;wBAED,KAAA,CAAA,KAAA,GAAG,CAAA,CAAC,IAAI,CAAA;wBACN,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC3B,WAAW,CACV,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EACrD,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAC1D;iCACA,cAAc,CAAC;gCACd,KAAK,EAAE,IAAI,CAAC,KAAK;gCACjB,IAAI,EAAE,IAAI,CAAC,MAAM;gCACjB,mBAAmB,qBAAA;gCACnB,qBAAqB,EAAE,qBAAqB;gCAC5C,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,EAAE,EAAE,IAAI,CAAC,MAAM;gCACf,YAAY,EAAE,oBAAoB;gCAClC,YAAY,EAAE,IAAA,kCAAkB,EAAC,IAAI,CAAC,SAAS,CAAC;gCAChD,mBAAmB,EAAE,qCAAqB;gCAC1C,eAAe,EAAE,IAAA,qCAAqB,EACpC,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,QAAQ,EAAE,CACvB;gCACD,cAAc,gBAAA;gCACd,gBAAgB,kBAAA;gCAChB,YAAY,EAAE,iCAAqB;gCACnC,sBAAsB,EAAE,uCAA2B;gCACnD,aAAa,EAAE,uBAAa,CAAC,SAAS;gCACtC,qBAAqB,EAAE,IAAA,2CAA2B,EAChD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CACZ;gCACD,iBAAiB,EAAE,sBAAU;gCAC7B,aAAa,EAAE,IAAA,0BAAmB,EAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC;gCACrE,QAAQ,EAAE,WAAW;gCACrB,kBAAkB,EAAE,IAAA,+BAAwB,EAC1C,IAAI,CAAC,UAAU,EACf,gBAAgB,CACjB;6BACF,CAAC;iCACD,iBAAiB,CAAC;gCACjB;oCACE,MAAM,EAAE,IAAA,kCAAkB,EAAC,IAAI,CAAC,SAAS,CAAC;oCAC1C,UAAU,EAAE,IAAI;oCAChB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,yCAAyB;oCACjC,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,qCAAqB;oCAC7B,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,gBAAgB;oCACxB,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,qCAAqB,EAC3B,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,QAAQ,EAAE,CACvB;oCACD,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,qCAAqB,EAC3B,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CACvB;oCACD,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,cAAc;oCACtB,UAAU,EAAE,IAAI;oCAChB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,oCAAoB,EAAC,IAAI,CAAC,SAAS,CAAC;oCAC5C,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,2CAA2B,EACjC,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,QAAQ,EAAE,CACvB;oCACD,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;6BACF,CAAC;iCACD,WAAW,EAAE,EAAA;;wBAlGlB,cACE,SAiGgB,EACjB,CAAC;wBACF,sBAAO,GAAG,EAAC;;;;KACZ;IAED;;;;OAIG;IACG,uCAAa,GAAnB,UAAoB,IAAoB;;;gBACtC,sBAAO,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,EAAC;;;KAC3D;IAED;;;;OAIG;IACG,kCAAQ,GAAd,UAAe,IAAwB;;;gBACrC,sBAAO,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAC;;;KACtD;IAED;;;;;;OAMG;IACG,wCAAc,GAApB,UACE,IAAqB,EACrB,qBAAgC,EAChC,kBAA8B;;;;;4BAEb,qBAAM,IAAA,gCAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAA;;wBAAhE,QAAQ,GAAG,SAAqD;wBAChE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;wBACvB,YAAY,GAAG,IAAA,yCAA6B,EAChD,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EACzB,KAAK,EACL,iCAAqB,CACtB,CAAC;wBACF,sBAAO,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC5B,kBAAkB,CAAC,MAAM,CAAC;iCAC1B,cAAc,CAAC;gCACd,IAAI,EAAE,IAAI,CAAC,MAAM;gCACjB,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,EAAE,qBAAqB;gCAC5C,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,YAAY,cAAA;gCACZ,YAAY,EAAE,iCAAqB;6BACpC,CAAC;iCACD,WAAW,EAAE,EAAC;;;;KAClB;IAED;;;;;;OAMG;IACG,sCAAY,GAAlB,UACE,IAAqB,EACrB,qBAAgC,EAChC,kBAA8B;;;;;4BAEf,qBAAM,IAAA,8BAAc,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAA;;wBAA5D,MAAM,GAAG,SAAmD;wBAC5D,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;wBACrB,YAAY,GAAG,IAAA,yCAA6B,EAChD,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EACzB,KAAK,EACL,iCAAqB,CACtB,CAAC;wBACF,sBAAO,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC5B,gBAAgB,CAAC,MAAM,CAAC;iCACxB,cAAc,CAAC;gCACd,IAAI,EAAE,IAAI,CAAC,MAAM;gCACjB,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,EAAE,qBAAqB;gCAC5C,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,uBAAuB,EAAE,IAAA,sCAAsB,EAAC,IAAI,CAAC,SAAS,CAAC;gCAC/D,YAAY,cAAA;gCACZ,YAAY,EAAE,iCAAqB;6BACpC,CAAC;iCACD,WAAW,EAAE,EAAC;;;;KAClB;IAED;;;;;;;;OAQG;IACG,wCAAc,GAApB,UACE,IAAsB,EACtB,UAAkB,EAClB,MAAiB,EACjB,qBAAgC,EAChC,kBAA8B;;;;;;wBAE9B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;4BACjB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;wBACtE,CAAC;wBACD,2EAA2E;wBAC3E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;wBAER,qBAAM,IAAA,iCAAiB,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAA;;wBAAjE,QAAQ,GAAG,SAAsD;wBACjE,gBAAgB,GAAG,IAAA,sCAAsB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC1D,WAAW,GAAG,IAAA,wBAAiB,EAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;wBAC9D,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;wBACvB,eAAe,GAAG,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACxD,kBAAkB,GAAG,IAAA,yCAA6B,EACtD,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,IAAI,mBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAC1B,KAAK,EACL,iCAAqB,CACtB,CAAC;wBAEK,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO;iCAClC,YAAY,CAAC,MAAM,CAAC;iCACpB,cAAc,CAAC;gCACd,IAAI,EAAE,MAAM;gCACZ,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,EAAE,qBAAqB;gCAC5C,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,iBAAA;gCACf,kBAAkB,oBAAA;gCAClB,gBAAgB,kBAAA;gCAChB,eAAe,EAAE,IAAA,qCAAqB,EACpC,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,QAAQ,EAAE,CACvB;gCACD,cAAc,EAAE,IAAA,oCAAoB,EAClC,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,QAAQ,EAAE,CACvB;gCACD,mBAAmB,EAAE,qCAAqB;gCAC1C,YAAY,EAAE,IAAA,kCAAkB,EAAC,IAAI,CAAC,SAAS,CAAC;gCAChD,qBAAqB,EAAE,IAAA,2CAA2B,EAChD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CACZ;gCACD,YAAY,EAAE,iCAAqB;gCACnC,sBAAsB,EAAE,uCAA2B;gCACnD,aAAa,EAAE,uBAAa,CAAC,SAAS;6BACvC,CAAC;iCACD,WAAW,EAAE,EAAA;4BA9BhB,sBAAO,SA8BS,EAAC;;;;KAClB;IAED;;;;;;OAMG;IACG,sCAAY,GAAlB,UACE,IAAmB,EACnB,qBAAgC,EAChC,kBAA8B;;;;;4BAEd,qBAAM,IAAA,8BAAc,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAA;;wBAA7D,OAAO,GAAG,SAAmD;wBAC7D,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;wBAC5B,sBAAO,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC5B,gBAAgB,CAAC,MAAM,CAAC;iCACxB,cAAc,CAAC;gCACd,IAAI,EAAE,IAAI,CAAC,MAAM;gCACjB,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,uBAAA;gCACrB,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,YAAY,EAAE,iCAAqB;6BACpC,CAAC;iCACD,WAAW,EAAE,EAAC;;;;KAClB;IAED;;;;;;OAMG;IACG,0DAAgC,GAAtC,UACE,IAAuC,EACvC,qBAAgC,EAChC,kBAA8B;;;;;4BAEb,qBAAM,IAAA,kDAAkC,EACvD,IAAI,EACJ,IAAI,CAAC,SAAS,CAAC,QAAQ,CACxB,EAAA;;wBAHK,QAAQ,GAAG,SAGhB;wBACK,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;wBAC7B,sBAAO,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC5B,6BAA6B,CAAC,MAAM,CAAC;iCACrC,cAAc,CAAC;gCACd,IAAI,EAAE,IAAI,CAAC,MAAM;gCACjB,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,EAAE,qBAAqB;gCAC5C,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,cAAc,EAAE,IAAA,gDAAgC,GAAE;gCAClD,YAAY,EAAE,iCAAqB;6BACpC,CAAC;iCACD,WAAW,EAAE,EAAC;;;;KAClB;IAED;;;;;;;OAOG;IACG,wCAAc,GAApB,UACE,IAAqB,EACrB,UAAkB,EAClB,MAAiB,EACjB,qBAAgC,EAChC,kBAA8B;;;;;;wBAExB,gBAAgB,GAAG,IAAA,sCAAsB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC1D,WAAW,GAAG,IAAA,wBAAiB,EAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;wBAC/C,qBAAM,IAAA,gCAAgB,wBAAK,IAAI,KAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAA;;wBAA1H,KAAe,SAA2G,EAAzH,CAAC,QAAA,EAAE,OAAO,QAAA;wBACjB,sBAAO,IAAI,CAAC,WAAW,CAAC,OAAO;iCAC5B,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;iCACzB,cAAc,CAAC;gCACd,IAAI,EAAE,MAAM;gCACZ,mBAAmB,EAAE,IAAI,CAAC,SAAS;gCACnC,qBAAqB,EAAE,qBAAqB;gCAC5C,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gCAC9C,sBAAsB,EAAE,wCAAwB;gCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,eAAe,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC;gCACtD,kBAAkB,EAAE,IAAA,yCAA6B,EAC/C,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,IAAI,mBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EACxB,KAAK,EACL,iCAAqB,CACtB;gCACD,uBAAuB,EAAE,IAAA,yCAA6B,EACpD,IAAI,mBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,IAAI,mBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EACtB,IAAI,EACJ,iCAAqB,CACtB;gCACD,YAAY,EAAE,iCAAqB;6BACpC,CAAC;iCACD,iBAAiB,CAAC;gCACjB;oCACE,MAAM,EAAE,IAAA,kCAAkB,EAAC,IAAI,CAAC,SAAS,CAAC;oCAC1C,UAAU,EAAE,IAAI;oCAChB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,yCAAyB;oCACjC,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,qCAAqB;oCAC7B,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,sCAAsB,EAAC,IAAI,CAAC,SAAS,CAAC;oCAC9C,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;oCACtD,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,qCAAqB,EAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC;oCACrE,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,oCAAoB,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;oCACrD,UAAU,EAAE,IAAI;oCAChB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,oCAAoB,EAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC;oCACpE,UAAU,EAAE,IAAI;oCAChB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,oCAAoB,EAAC,IAAI,CAAC,SAAS,CAAC;oCAC5C,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,2CAA2B,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;oCAC5D,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;gCACD;oCACE,MAAM,EAAE,IAAA,2CAA2B,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC;oCAC9D,UAAU,EAAE,KAAK;oCACjB,QAAQ,EAAE,KAAK;iCAChB;6BACF,CAAC;iCACD,WAAW,EAAE,EAAC;;;;KAClB;IACH,sBAAC;AAAD,CAAC,AAzgBD,IAygBC;AAzgBY,0CAAe"}
@@ -0,0 +1,64 @@
1
+ import { Program } from "@coral-xyz/anchor";
2
+ import { PublicKey, TransactionInstruction } from "@solana/web3.js";
3
+ import { RwaRbac } from "../types/generated/rwa_rbac";
4
+ import { RwaImr } from "../types/generated/rwa_imr";
5
+ import { IxReturn, RwaClient } from "@dstoken-solana/rwa-token-sdk";
6
+ import { AddLevelsArgs, AttachWalletByInvestorArgs, ChangeCountryArgs, RemoveInvestorArgs, RemoveLevelsArgs, SetupInvestorArgs } from "../types/instructions";
7
+ /**
8
+ * Role-based access client for accessing Identity Metadata Registry.
9
+ */
10
+ export declare class IdentityMetadataRegistry {
11
+ rwaClient: RwaClient;
12
+ rbacProgram: Program<RwaRbac>;
13
+ imrProgram: Program<RwaImr>;
14
+ constructor(rwaClient: RwaClient, rbacProgram: Program<RwaRbac>, imrProgram: Program<RwaImr>);
15
+ /**
16
+ * Asynchronously generates instructions to setup an investor.
17
+ * @param args - {@link SetupInvestorArgs}
18
+ * @param authority - RBAC AssetAccessController ControllerAuthority.
19
+ * @param assetAccessController - RBAC AssetAccessController account.
20
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
21
+ * @returns A Promise that resolves to the instructions to setup an investor.
22
+ *
23
+ * It is required for at least a single user to be setup before issuing tokens.
24
+ */
25
+ setupUserIxns(args: SetupInvestorArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<IxReturn>;
26
+ /**
27
+ * Asynchronously add levels to investor.
28
+ * @param args - {@link AddLevelsArgs}
29
+ * @param assetAccessController - RBAC AssetAccessController account.
30
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
31
+ * @returns A Promise that resolves to the instructions to add levels.
32
+ * */
33
+ addLevels(args: AddLevelsArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
34
+ /**
35
+ * Asynchronously change country for the Investor.
36
+ * @param args - {@link ChangeCountryArgs}
37
+ * @param assetAccessController - RBAC AssetAccessController account.
38
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
39
+ * @returns A Promise that resolves to the instructions to change the country.
40
+ * */
41
+ changeCountry(args: ChangeCountryArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
42
+ /**
43
+ * Asynchronously remove levels from an investor.
44
+ * @param args - {@link RemoveLevelsArgs}
45
+ * @param assetAccessController - RBAC AssetAccessController account.
46
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
47
+ * @returns A Promise that resolves to the instructions to remove levels.
48
+ * */
49
+ removeLevels(args: RemoveLevelsArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
50
+ /**
51
+ * Asynchronously remove an investor.
52
+ * @param args - {@link RemoveLevelsArgs}
53
+ * @param assetAccessController - RBAC AssetAccessController account.
54
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
55
+ * @returns A Promise that resolves to the instructions to remove an investor.
56
+ * */
57
+ removeInvestor(args: RemoveInvestorArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
58
+ /**
59
+ * Asynchronously attach a wallet to IdentityAccouont for the Investor.
60
+ * @param args - {@link AttachWalletByInvestorArgs}
61
+ * */
62
+ attachWalletByInvestor(args: AttachWalletByInvestorArgs): Promise<TransactionInstruction>;
63
+ }
64
+ //# sourceMappingURL=IdentityMetadataRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdentityMetadataRegistry.d.ts","sourceRoot":"","sources":["../../src/client/IdentityMetadataRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,SAAS,EAET,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,EASL,QAAQ,EAER,SAAS,EACV,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,qBAAa,wBAAwB;IACnC,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAG1B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,EAC7B,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;IAO7B;;;;;;;;;OASG;IACG,aAAa,CACjB,IAAI,EAAE,iBAAiB,EACvB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,QAAQ,CAAC;IA2GpB;;;;;;SAMK;IACC,SAAS,CACb,IAAI,EAAE,aAAa,EACnB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA2DlC;;;;;;SAMK;IACC,aAAa,CACjB,IAAI,EAAE,iBAAiB,EACvB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IAoDlC;;;;;;SAMK;IACC,YAAY,CAChB,IAAI,EAAE,gBAAgB,EACtB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IAsDlC;;;;;;SAMK;IACC,cAAc,CAClB,IAAI,EAAE,kBAAkB,EACxB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA4BlC;;;SAGK;IACC,sBAAsB,CAC1B,IAAI,EAAE,0BAA0B,GAC/B,OAAO,CAAC,sBAAsB,CAAC;CA6BnC"}
@@ -0,0 +1,399 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.IdentityMetadataRegistry = void 0;
40
+ var web3_js_1 = require("@solana/web3.js");
41
+ var pdas_1 = require("../pdas");
42
+ var rwa_token_sdk_1 = require("@dstoken-solana/rwa-token-sdk");
43
+ var constants_1 = require("../constants");
44
+ /**
45
+ * Role-based access client for accessing Identity Metadata Registry.
46
+ */
47
+ var IdentityMetadataRegistry = /** @class */ (function () {
48
+ function IdentityMetadataRegistry(rwaClient, rbacProgram, imrProgram) {
49
+ this.rwaClient = rwaClient;
50
+ this.rbacProgram = rbacProgram;
51
+ this.imrProgram = imrProgram;
52
+ }
53
+ /**
54
+ * Asynchronously generates instructions to setup an investor.
55
+ * @param args - {@link SetupInvestorArgs}
56
+ * @param authority - RBAC AssetAccessController ControllerAuthority.
57
+ * @param assetAccessController - RBAC AssetAccessController account.
58
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
59
+ * @returns A Promise that resolves to the instructions to setup an investor.
60
+ *
61
+ * It is required for at least a single user to be setup before issuing tokens.
62
+ */
63
+ IdentityMetadataRegistry.prototype.setupUserIxns = function (args, assetAccessController, authorizedUserRole) {
64
+ return __awaiter(this, void 0, void 0, function () {
65
+ var returnIxs, controllerAuthority, identityRegistry, investor, identityAccount, assetMintKey, registerIx, _a, _b, policyProgram, trackerAccount, _c, _d, _e, _f;
66
+ return __generator(this, function (_g) {
67
+ switch (_g.label) {
68
+ case 0:
69
+ returnIxs = [];
70
+ controllerAuthority = (0, pdas_1.deriveControllerAuthorityPda)(assetAccessController);
71
+ identityRegistry = (0, rwa_token_sdk_1.getIdentityRegistryPda)(args.assetMint);
72
+ investor = (0, pdas_1.deriveInvestorPda)(args.investorId, identityRegistry);
73
+ identityAccount = (0, rwa_token_sdk_1.getIdentityAccountPda)(args.assetMint, investor.toString() // Investor is owner of IdentityAccount
74
+ );
75
+ assetMintKey = new web3_js_1.PublicKey(args.assetMint);
76
+ return [4 /*yield*/, this.imrProgram.methods
77
+ .registerInvestor(args.investorId, args.collisionHash, args.levels[0], args.expiries[0], args.country, args.proofHashes[0])
78
+ .accountsStrict({
79
+ payer: args.payer,
80
+ authority: controllerAuthority,
81
+ investor: investor,
82
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
83
+ identityRegistry: identityRegistry,
84
+ identityAccount: identityAccount,
85
+ walletIdentity: (0, rwa_token_sdk_1.getWalletIdentityAccountPda)(args.assetMint, investor.toString() // Investor is owner of IdentityAccount
86
+ ),
87
+ systemProgram: web3_js_1.SystemProgram.programId,
88
+ })
89
+ .instruction()];
90
+ case 1:
91
+ registerIx = _g.sent();
92
+ _b = (_a = returnIxs).push;
93
+ return [4 /*yield*/, this.rbacProgram.methods
94
+ .registerInvestor(registerIx.data)
95
+ .accountsStrict({
96
+ payer: args.payer,
97
+ user: args.signer,
98
+ controllerAuthority: controllerAuthority,
99
+ assetAccessController: assetAccessController,
100
+ authorizedUserRole: authorizedUserRole || null,
101
+ identityMetadataRegistryProgram: constants_1.IMR_PROGRAM,
102
+ investor: investor,
103
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
104
+ identityRegistry: identityRegistry,
105
+ identityAccount: identityAccount,
106
+ walletIdentity: (0, rwa_token_sdk_1.getWalletIdentityAccountPda)(args.assetMint, investor.toString()),
107
+ systemProgram: web3_js_1.SystemProgram.programId,
108
+ })
109
+ .instruction()];
110
+ case 2:
111
+ _b.apply(_a, [_g.sent()]);
112
+ policyProgram = (0, rwa_token_sdk_1.getPolicyEngineProgram)(this.imrProgram.provider);
113
+ trackerAccount = web3_js_1.PublicKey.findProgramAddressSync([assetMintKey.toBuffer(), identityAccount.toBuffer()], policyProgram.programId)[0];
114
+ _d = (_c = returnIxs).push;
115
+ return [4 /*yield*/, policyProgram.methods
116
+ .createTrackerAccount()
117
+ .accountsStrict({
118
+ payer: args.payer,
119
+ trackerAccount: trackerAccount,
120
+ systemProgram: web3_js_1.SystemProgram.programId,
121
+ program: policyProgram.programId,
122
+ assetMint: assetMintKey,
123
+ eventAuthority: (0, rwa_token_sdk_1.getPolicyEnginerEventAuthority)(),
124
+ identityRegistry: identityRegistry,
125
+ identityAccount: identityAccount,
126
+ })
127
+ .instruction()];
128
+ case 3:
129
+ _d.apply(_c, [_g.sent()]);
130
+ if (!(args.levels.length > 1)) return [3 /*break*/, 5];
131
+ _f = (_e = returnIxs).push;
132
+ return [4 /*yield*/, this.addLevels({
133
+ payer: args.payer,
134
+ signer: args.signer,
135
+ investorId: args.investorId,
136
+ assetMint: args.assetMint,
137
+ levels: args.levels.slice(1),
138
+ expiries: args.expiries.slice(1),
139
+ proofHashes: args.proofHashes.slice(1),
140
+ enforceLimits: args.enforceLimits,
141
+ }, assetAccessController, authorizedUserRole)];
142
+ case 4:
143
+ _f.apply(_e, [_g.sent()]);
144
+ _g.label = 5;
145
+ case 5: return [2 /*return*/, {
146
+ ixs: returnIxs,
147
+ signers: [],
148
+ }];
149
+ }
150
+ });
151
+ });
152
+ };
153
+ /**
154
+ * Asynchronously add levels to investor.
155
+ * @param args - {@link AddLevelsArgs}
156
+ * @param assetAccessController - RBAC AssetAccessController account.
157
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
158
+ * @returns A Promise that resolves to the instructions to add levels.
159
+ * */
160
+ IdentityMetadataRegistry.prototype.addLevels = function (args, assetAccessController, authorizedUserRole) {
161
+ return __awaiter(this, void 0, void 0, function () {
162
+ var controllerAuthority, identityRegistry, investor, identityAccount, trackerAccount, ix;
163
+ var _a;
164
+ return __generator(this, function (_b) {
165
+ switch (_b.label) {
166
+ case 0:
167
+ controllerAuthority = (0, pdas_1.deriveControllerAuthorityPda)(assetAccessController);
168
+ identityRegistry = (0, rwa_token_sdk_1.getIdentityRegistryPda)(args.assetMint);
169
+ investor = (0, pdas_1.deriveInvestorPda)(args.investorId, identityRegistry);
170
+ identityAccount = (0, rwa_token_sdk_1.getIdentityAccountPda)(args.assetMint, investor.toString());
171
+ trackerAccount = (0, rwa_token_sdk_1.getTrackerAccountPda)(args.assetMint, investor.toString());
172
+ return [4 /*yield*/, this.imrProgram.methods
173
+ .addLevels(Buffer.from(args.levels), args.expiries, args.proofHashes, (_a = args.enforceLimits) !== null && _a !== void 0 ? _a : false)
174
+ .accountsStrict({
175
+ payer: args.payer,
176
+ authority: controllerAuthority,
177
+ investor: investor,
178
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
179
+ identityRegistry: identityRegistry,
180
+ identityAccount: identityAccount,
181
+ systemProgram: web3_js_1.SystemProgram.programId,
182
+ policyEngineProgram: rwa_token_sdk_1.policyEngineProgramId,
183
+ policyEngine: (0, rwa_token_sdk_1.getPolicyEnginePda)(args.assetMint),
184
+ trackerAccount: trackerAccount,
185
+ assetMint: args.assetMint,
186
+ })
187
+ .instruction()];
188
+ case 1:
189
+ ix = _b.sent();
190
+ return [2 /*return*/, this.rbacProgram.methods
191
+ .addLevels(ix.data)
192
+ .accountsStrict({
193
+ payer: args.payer,
194
+ user: args.signer,
195
+ controllerAuthority: controllerAuthority,
196
+ assetAccessController: assetAccessController,
197
+ authorizedUserRole: authorizedUserRole || null,
198
+ identityMetadataRegistryProgram: constants_1.IMR_PROGRAM,
199
+ investor: investor,
200
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
201
+ identityRegistry: identityRegistry,
202
+ identityAccount: identityAccount,
203
+ systemProgram: web3_js_1.SystemProgram.programId,
204
+ policyEngineProgram: rwa_token_sdk_1.policyEngineProgramId,
205
+ policyEngine: (0, rwa_token_sdk_1.getPolicyEnginePda)(args.assetMint),
206
+ trackerAccount: trackerAccount,
207
+ assetMint: args.assetMint,
208
+ })
209
+ .instruction()];
210
+ }
211
+ });
212
+ });
213
+ };
214
+ /**
215
+ * Asynchronously change country for the Investor.
216
+ * @param args - {@link ChangeCountryArgs}
217
+ * @param assetAccessController - RBAC AssetAccessController account.
218
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
219
+ * @returns A Promise that resolves to the instructions to change the country.
220
+ * */
221
+ IdentityMetadataRegistry.prototype.changeCountry = function (args, assetAccessController, authorizedUserRole) {
222
+ return __awaiter(this, void 0, void 0, function () {
223
+ var controllerAuthority, identityRegistry, investor, identityAccount, trackerAccount, ix;
224
+ var _a;
225
+ return __generator(this, function (_b) {
226
+ switch (_b.label) {
227
+ case 0:
228
+ controllerAuthority = (0, pdas_1.deriveControllerAuthorityPda)(assetAccessController);
229
+ identityRegistry = (0, rwa_token_sdk_1.getIdentityRegistryPda)(args.assetMint);
230
+ investor = (0, pdas_1.deriveInvestorPda)(args.investorId, identityRegistry);
231
+ identityAccount = (0, rwa_token_sdk_1.getIdentityAccountPda)(args.assetMint, investor.toString());
232
+ trackerAccount = (0, rwa_token_sdk_1.getTrackerAccountPda)(args.assetMint, investor.toString());
233
+ return [4 /*yield*/, this.imrProgram.methods
234
+ .changeCountry(args.country, (_a = args.enforceLimits) !== null && _a !== void 0 ? _a : false)
235
+ .accountsStrict({
236
+ payer: args.payer,
237
+ authority: controllerAuthority,
238
+ investor: investor,
239
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
240
+ identityRegistry: identityRegistry,
241
+ identityAccount: identityAccount,
242
+ policyEngineProgram: rwa_token_sdk_1.policyEngineProgramId,
243
+ policyEngine: (0, rwa_token_sdk_1.getPolicyEnginePda)(args.assetMint),
244
+ trackerAccount: trackerAccount,
245
+ assetMint: args.assetMint,
246
+ })
247
+ .instruction()];
248
+ case 1:
249
+ ix = _b.sent();
250
+ return [2 /*return*/, this.rbacProgram.methods
251
+ .changeCountry(ix.data)
252
+ .accountsStrict({
253
+ payer: args.payer,
254
+ user: args.signer,
255
+ controllerAuthority: controllerAuthority,
256
+ assetAccessController: assetAccessController,
257
+ authorizedUserRole: authorizedUserRole || null,
258
+ identityMetadataRegistryProgram: constants_1.IMR_PROGRAM,
259
+ investor: investor,
260
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
261
+ identityRegistry: identityRegistry,
262
+ identityAccount: identityAccount,
263
+ policyEngineProgram: rwa_token_sdk_1.policyEngineProgramId,
264
+ policyEngine: (0, rwa_token_sdk_1.getPolicyEnginePda)(args.assetMint),
265
+ trackerAccount: trackerAccount,
266
+ assetMint: args.assetMint,
267
+ })
268
+ .instruction()];
269
+ }
270
+ });
271
+ });
272
+ };
273
+ /**
274
+ * Asynchronously remove levels from an investor.
275
+ * @param args - {@link RemoveLevelsArgs}
276
+ * @param assetAccessController - RBAC AssetAccessController account.
277
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
278
+ * @returns A Promise that resolves to the instructions to remove levels.
279
+ * */
280
+ IdentityMetadataRegistry.prototype.removeLevels = function (args, assetAccessController, authorizedUserRole) {
281
+ return __awaiter(this, void 0, void 0, function () {
282
+ var controllerAuthority, identityRegistry, investor, identityAccount, trackerAccount, ix;
283
+ var _a;
284
+ return __generator(this, function (_b) {
285
+ switch (_b.label) {
286
+ case 0:
287
+ controllerAuthority = (0, pdas_1.deriveControllerAuthorityPda)(assetAccessController);
288
+ identityRegistry = (0, rwa_token_sdk_1.getIdentityRegistryPda)(args.assetMint);
289
+ investor = (0, pdas_1.deriveInvestorPda)(args.investorId, identityRegistry);
290
+ identityAccount = (0, rwa_token_sdk_1.getIdentityAccountPda)(args.assetMint, investor.toString());
291
+ trackerAccount = (0, rwa_token_sdk_1.getTrackerAccountPda)(args.assetMint, investor.toString());
292
+ return [4 /*yield*/, this.imrProgram.methods
293
+ .removeLevels(Buffer.from(args.levels), (_a = args.enforceLimits) !== null && _a !== void 0 ? _a : false)
294
+ .accountsStrict({
295
+ payer: args.payer,
296
+ authority: controllerAuthority,
297
+ investor: investor,
298
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
299
+ identityRegistry: identityRegistry,
300
+ identityAccount: identityAccount,
301
+ systemProgram: web3_js_1.SystemProgram.programId,
302
+ policyEngineProgram: rwa_token_sdk_1.policyEngineProgramId,
303
+ policyEngine: (0, rwa_token_sdk_1.getPolicyEnginePda)(args.assetMint),
304
+ trackerAccount: trackerAccount,
305
+ assetMint: args.assetMint,
306
+ })
307
+ .instruction()];
308
+ case 1:
309
+ ix = _b.sent();
310
+ return [2 /*return*/, this.rbacProgram.methods
311
+ .removeLevels(ix.data)
312
+ .accountsStrict({
313
+ payer: args.payer,
314
+ user: args.signer,
315
+ controllerAuthority: controllerAuthority,
316
+ assetAccessController: assetAccessController,
317
+ authorizedUserRole: authorizedUserRole || null,
318
+ identityMetadataRegistryProgram: constants_1.IMR_PROGRAM,
319
+ investor: investor,
320
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
321
+ identityRegistry: identityRegistry,
322
+ identityAccount: identityAccount,
323
+ systemProgram: web3_js_1.SystemProgram.programId,
324
+ policyEngineProgram: rwa_token_sdk_1.policyEngineProgramId,
325
+ policyEngine: (0, rwa_token_sdk_1.getPolicyEnginePda)(args.assetMint),
326
+ trackerAccount: trackerAccount,
327
+ assetMint: args.assetMint,
328
+ })
329
+ .instruction()];
330
+ }
331
+ });
332
+ });
333
+ };
334
+ /**
335
+ * Asynchronously remove an investor.
336
+ * @param args - {@link RemoveLevelsArgs}
337
+ * @param assetAccessController - RBAC AssetAccessController account.
338
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
339
+ * @returns A Promise that resolves to the instructions to remove an investor.
340
+ * */
341
+ IdentityMetadataRegistry.prototype.removeInvestor = function (args, assetAccessController, authorizedUserRole) {
342
+ return __awaiter(this, void 0, void 0, function () {
343
+ var controllerAuthority, identityRegistry, investor, identityAccount;
344
+ return __generator(this, function (_a) {
345
+ controllerAuthority = (0, pdas_1.deriveControllerAuthorityPda)(assetAccessController);
346
+ identityRegistry = (0, rwa_token_sdk_1.getIdentityRegistryPda)(args.assetMint);
347
+ investor = (0, pdas_1.deriveInvestorPda)(args.investorId, identityRegistry);
348
+ identityAccount = (0, rwa_token_sdk_1.getIdentityAccountPda)(args.assetMint, investor.toString());
349
+ return [2 /*return*/, this.rbacProgram.methods
350
+ .removeInvestor()
351
+ .accountsStrict({
352
+ payer: args.payer,
353
+ user: args.signer,
354
+ controllerAuthority: controllerAuthority,
355
+ assetAccessController: assetAccessController,
356
+ authorizedUserRole: authorizedUserRole || null,
357
+ identityMetadataRegistryProgram: constants_1.IMR_PROGRAM,
358
+ investor: investor,
359
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
360
+ identityRegistry: identityRegistry,
361
+ identityAccount: identityAccount,
362
+ })
363
+ .instruction()];
364
+ });
365
+ });
366
+ };
367
+ /**
368
+ * Asynchronously attach a wallet to IdentityAccouont for the Investor.
369
+ * @param args - {@link AttachWalletByInvestorArgs}
370
+ * */
371
+ IdentityMetadataRegistry.prototype.attachWalletByInvestor = function (args) {
372
+ return __awaiter(this, void 0, void 0, function () {
373
+ var identityRegistry, investor, identityAccount;
374
+ return __generator(this, function (_a) {
375
+ identityRegistry = (0, rwa_token_sdk_1.getIdentityRegistryPda)(args.assetMint);
376
+ investor = (0, pdas_1.deriveInvestorPda)(args.investorId, identityRegistry);
377
+ identityAccount = (0, rwa_token_sdk_1.getIdentityAccountPda)(args.assetMint, investor.toString());
378
+ return [2 /*return*/, this.imrProgram.methods
379
+ .attachWalletByInvestor(args.newWallet)
380
+ .accountsStrict({
381
+ payer: args.payer,
382
+ wallet: args.signer,
383
+ investor: investor,
384
+ walletIdentity: (0, rwa_token_sdk_1.getWalletIdentityAccountPda)(args.assetMint, args.signer),
385
+ identityRegistryProgram: rwa_token_sdk_1.identityRegistryProgramId,
386
+ newWalletIdentity: (0, rwa_token_sdk_1.getWalletIdentityAccountPda)(args.assetMint, args.newWallet.toString()),
387
+ identityAccount: identityAccount,
388
+ identityRegistry: identityRegistry,
389
+ assetMint: args.assetMint,
390
+ systemProgram: web3_js_1.SystemProgram.programId,
391
+ })
392
+ .instruction()];
393
+ });
394
+ });
395
+ };
396
+ return IdentityMetadataRegistry;
397
+ }());
398
+ exports.IdentityMetadataRegistry = IdentityMetadataRegistry;
399
+ //# sourceMappingURL=IdentityMetadataRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdentityMetadataRegistry.js","sourceRoot":"","sources":["../../src/client/IdentityMetadataRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { Program } from "@coral-xyz/anchor";
2
+ import { PublicKey, TransactionInstruction } from "@solana/web3.js";
3
+ import { RwaRbac } from "../types/generated/rwa_rbac";
4
+ import { AttachDetachWalletArgs, RefreshLevelArgs } from "../types/instructions";
5
+ import { AddLevelToIdentityAccountArgs, IxReturn, RemoveLevelFromIdentityAccountArgs, RwaClient, SetupUserArgs } from "@dstoken-solana/rwa-token-sdk";
6
+ /**
7
+ * Represents the role-based access client for Identity Registry for an RWA.
8
+ */
9
+ export declare class IdentityRegistry {
10
+ rwaClient: RwaClient;
11
+ rbacProgram: Program<RwaRbac>;
12
+ constructor(rwaClient: RwaClient, rbacProgram: Program<RwaRbac>);
13
+ /**
14
+ * Asynchronously generates instructions to setup a non-investor user with an identity account.
15
+ * @param args - {@link SetupUserArgs}
16
+ * @param authority - RBAC AssetAccessController ControllerAuthority.
17
+ * @param assetAccessController - RBAC AssetAccessController account.
18
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
19
+ * @returns A Promise that resolves to the instructions to setup a user.
20
+ *
21
+ * It is required for at least a single user to be setup before issuing tokens.
22
+ */
23
+ setupUserIxns(args: SetupUserArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<IxReturn>;
24
+ /**
25
+ * Asynchronously update a non-investor user identity account level.
26
+ * @param args - {@link AddLevelToIdentityAccountArgs}
27
+ * @param assetAccessController - RBAC AssetAccessController account.
28
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
29
+ * @returns A Promise that resolves to the instructions to update user account identity.
30
+ * */
31
+ addIdentityLevelToUserAccount(args: AddLevelToIdentityAccountArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
32
+ /**
33
+ * Asynchronously reduces a non-Investor user identity account level.
34
+ * @param args - {@link RemoveLevelFromIdentityAccount}
35
+ * @param assetAccessController - RBAC AssetAccessController account.
36
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
37
+ * @returns A Promise that resolves to the instructions to reduce the level of a user identity account.
38
+ */
39
+ removeIdentityLevelFromUserAccount(args: RemoveLevelFromIdentityAccountArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
40
+ /**
41
+ * Asynchronously generates instruction to refresh expiry on an Identity Account level.
42
+ * @param args - {@link RefreshLevelArgs}
43
+ * @param assetAccessController - RBAC AssetAccessController account.
44
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
45
+ * @returns A Promise that resolves to refresh expiry on an Identity Account level.
46
+ * */
47
+ refreshLevelToIdentityAccountIxn(args: RefreshLevelArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
48
+ /**
49
+ * Asynchronously generates instruction to attach wallet to identity.
50
+ * @param args - {@link AttachDetachWalletArgs}
51
+ * @param assetAccessController - RBAC AssetAccessController account.
52
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
53
+ * @returns A Promise that resolves to attach wallet.
54
+ * */
55
+ attachWalletToIdentityIxn(args: AttachDetachWalletArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
56
+ /**
57
+ * Asynchronously generates instruction to detach wallet from identity.
58
+ * @param args - {@link AttachDetachWalletArgs}
59
+ * @param assetAccessController - RBAC AssetAccessController account.
60
+ * @param authorizedUserRole - Optional UserRole account. Required if user is not an admin.
61
+ * @returns A Promise that resolves to detach wallet.
62
+ * */
63
+ detachWalletFromIdentityIxn(args: AttachDetachWalletArgs, assetAccessController: PublicKey, authorizedUserRole?: PublicKey): Promise<TransactionInstruction>;
64
+ }
65
+ //# sourceMappingURL=IdentityRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdentityRegistry.d.ts","sourceRoot":"","sources":["../../src/client/IdentityRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,6BAA6B,EAS7B,QAAQ,EAER,kCAAkC,EAClC,SAAS,EACT,aAAa,EACd,MAAM,+BAA+B,CAAC;AAIvC;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAElB,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC;IAK/D;;;;;;;;;OASG;IACG,aAAa,CACjB,IAAI,EAAE,aAAa,EACnB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,QAAQ,CAAC;IAuCpB;;;;;;SAMK;IACC,6BAA6B,CACjC,IAAI,EAAE,6BAA6B,EACnC,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA6BlC;;;;;;OAMG;IACG,kCAAkC,CACtC,IAAI,EAAE,kCAAkC,EACxC,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA+BlC;;;;;;SAMK;IACC,gCAAgC,CACpC,IAAI,EAAE,gBAAgB,EACtB,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA+BlC;;;;;;SAMK;IACC,yBAAyB,CAC7B,IAAI,EAAE,sBAAsB,EAC5B,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA8ClC;;;;;;SAMK;IACC,2BAA2B,CAC/B,IAAI,EAAE,sBAAsB,EAC5B,qBAAqB,EAAE,SAAS,EAChC,kBAAkB,CAAC,EAAE,SAAS,GAC7B,OAAO,CAAC,sBAAsB,CAAC;CAqCnC"}