@centrifuge/sdk 0.0.0-alpha.18 → 0.0.0-alpha.19

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 (49) hide show
  1. package/README.md +7 -0
  2. package/dist/Centrifuge.d.ts +18 -9
  3. package/dist/Centrifuge.d.ts.map +1 -1
  4. package/dist/Centrifuge.js +107 -51
  5. package/dist/Centrifuge.js.map +1 -1
  6. package/dist/Centrifuge.test.js +80 -0
  7. package/dist/Centrifuge.test.js.map +1 -1
  8. package/dist/abi/BalanceSheet.abi.d.ts +3 -0
  9. package/dist/abi/BalanceSheet.abi.d.ts.map +1 -0
  10. package/dist/abi/BalanceSheet.abi.js +55 -0
  11. package/dist/abi/BalanceSheet.abi.js.map +1 -0
  12. package/dist/abi/index.d.ts +13 -0
  13. package/dist/abi/index.d.ts.map +1 -1
  14. package/dist/abi/index.js +2 -0
  15. package/dist/abi/index.js.map +1 -1
  16. package/dist/entities/Pool.d.ts +9 -5
  17. package/dist/entities/Pool.d.ts.map +1 -1
  18. package/dist/entities/Pool.js +35 -11
  19. package/dist/entities/Pool.js.map +1 -1
  20. package/dist/entities/PoolNetwork.d.ts +31 -7
  21. package/dist/entities/PoolNetwork.d.ts.map +1 -1
  22. package/dist/entities/PoolNetwork.js +176 -39
  23. package/dist/entities/PoolNetwork.js.map +1 -1
  24. package/dist/entities/PoolNetwork.test.js +32 -35
  25. package/dist/entities/PoolNetwork.test.js.map +1 -1
  26. package/dist/entities/ShareClass.d.ts +5 -5
  27. package/dist/entities/ShareClass.d.ts.map +1 -1
  28. package/dist/entities/ShareClass.js +13 -27
  29. package/dist/entities/ShareClass.js.map +1 -1
  30. package/dist/entities/ShareClass.test.js.map +1 -1
  31. package/dist/entities/Vault.d.ts +2 -2
  32. package/dist/entities/Vault.d.ts.map +1 -1
  33. package/dist/entities/Vault.js.map +1 -1
  34. package/dist/tests/mocks/mockPoolMetadata.d.ts.map +1 -1
  35. package/dist/tests/mocks/mockPoolMetadata.js +0 -1
  36. package/dist/tests/mocks/mockPoolMetadata.js.map +1 -1
  37. package/dist/types/poolInput.d.ts +4 -3
  38. package/dist/types/poolInput.d.ts.map +1 -1
  39. package/dist/types/poolMetadata.d.ts +8 -8
  40. package/dist/types/poolMetadata.d.ts.map +1 -1
  41. package/dist/utils/index.d.ts +2 -1
  42. package/dist/utils/index.d.ts.map +1 -1
  43. package/dist/utils/index.js +20 -0
  44. package/dist/utils/index.js.map +1 -1
  45. package/dist/utils/types.d.ts +7 -1
  46. package/dist/utils/types.d.ts.map +1 -1
  47. package/dist/utils/types.js +6 -0
  48. package/dist/utils/types.js.map +1 -1
  49. package/package.json +1 -1
package/README.md CHANGED
@@ -30,6 +30,13 @@ The following config options can be passed on initialization of the SDK:
30
30
  - `rpcUrls: Record<number, string>`
31
31
  - Optional
32
32
  - A object mapping chain ids to RPC URLs
33
+ - `indexerUrl: string`
34
+ - Optional
35
+ - A URL for the indexer
36
+ - `ipfsUrl: string`
37
+ - Optional
38
+ - A URL for an IPFS gateway
39
+ - Default value: `https://centrifuge.mypinata.cloud`
33
40
 
34
41
  ## Queries
35
42
 
@@ -6894,8 +6894,9 @@ export declare class Centrifuge {
6894
6894
  * @param metadataInput - The metadata for the pool
6895
6895
  * @param currencyCode - The currency code for the pool
6896
6896
  * @param chainId - The chain ID to create the pool on
6897
+ * @param counter - The pool counter, used to create a unique pool ID (uint48)
6897
6898
  */
6898
- createPool(metadataInput: PoolMetadataInput, currencyCode: number | undefined, chainId: number, counter: number): Transaction;
6899
+ createPool(metadataInput: PoolMetadataInput, currencyCode: number | undefined, chainId: number, counter?: number | bigint): Transaction;
6899
6900
  id(chainId: number): Query<number>;
6900
6901
  /**
6901
6902
  * Get the existing pools on the different chains.
@@ -6907,30 +6908,38 @@ export declare class Centrifuge {
6907
6908
  * @param address - The token address
6908
6909
  * @param chainId - The chain ID
6909
6910
  */
6910
- currency(address: string, chainId: number): Query<CurrencyDetails>;
6911
- investor(address: string): Query<Investor>;
6911
+ currency(address: HexString, chainId: number): Query<CurrencyDetails>;
6912
+ investor(address: HexString): Query<Investor>;
6912
6913
  /**
6913
6914
  * Get the balance of an ERC20 token for a given owner.
6914
6915
  * @param currency - The token address
6915
6916
  * @param owner - The owner address
6916
6917
  * @param chainId - The chain ID
6917
6918
  */
6918
- balance(currency: string, owner: string, chainId: number): Query<{
6919
+ balance(currency: HexString, owner: HexString, chainId: number): Query<{
6919
6920
  balance: Balance;
6920
6921
  currency: CurrencyDetails;
6921
6922
  }>;
6922
6923
  /**
6923
6924
  * Get the assets that exist on a given spoke chain that have been registered on a given hub chain.
6924
6925
  * @param spokeChainId - The chain ID where the assets exist
6925
- * @param hubChainId - The chain ID where the assets are registered
6926
- * @returns
6926
+ * @param hubChainId - The chain ID where the assets should optionally be registered
6927
6927
  */
6928
- assets(spokeChainId: number, hubChainId: number): Observable<{
6928
+ assets(spokeChainId: number, hubChainId?: number): Query<{
6929
+ registeredOnCentrifugeId: number;
6929
6930
  id: AssetId;
6930
- address: HexString;
6931
+ address: `0x${string}`;
6931
6932
  name: string;
6932
6933
  symbol: string;
6933
6934
  }[]>;
6935
+ /**
6936
+ * Register an asset
6937
+ * @param originChainId - The chain ID where the asset exists
6938
+ * @param registerOnChainId - The chain ID where the asset should be registered
6939
+ * @param assetAddress - The address of the asset to register
6940
+ * @param tokenId - Optional token ID for ERC6909 assets
6941
+ */
6942
+ registerAsset(originChainId: number, registerOnChainId: number, assetAddress: HexString, tokenId?: number | bigint): Transaction;
6934
6943
  /**
6935
6944
  * Get the decimals of asset
6936
6945
  */
@@ -6968,6 +6977,6 @@ export declare class Centrifuge {
6968
6977
  vaultRouter: HexString;
6969
6978
  balanceSheet: HexString;
6970
6979
  }>;
6971
- _getQuote(valuationAddress: string, baseAmount: Balance, baseAssetId: AssetId, quoteAssetId: AssetId, chainId: number): Query<Balance>;
6980
+ _getQuote(valuationAddress: HexString, baseAmount: Balance, baseAssetId: AssetId, quoteAssetId: AssetId, chainId: number): Query<Balance>;
6972
6981
  }
6973
6982
  //# sourceMappingURL=Centrifuge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Centrifuge.d.ts","sourceRoot":"","sources":["../src/Centrifuge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAiBtC,OAAO,EASL,KAAK,GAAG,EACR,KAAK,OAAO,IAAI,WAAW,EAC3B,KAAK,KAAK,EAGX,MAAM,MAAM,CAAA;AAKb,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,KAAK,EAEV,eAAe,EACf,aAAa,EAEb,SAAS,EAET,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,OAAO,KAAK,EAA0B,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,KAAK,EAAmB,MAAM,EAAE,WAAW,EAA6B,MAAM,wBAAwB,CAAA;AAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAK3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAiClD,qBAAa,UAAU;;IAErB,IAAI,MAAM,kBAET;IAGD,SAAS,CAAC,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;qrBA+QE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA+PlB,CAAC;uCA6ByD,CAAC;;;;;;;;;;;;;;;;6eA+RuoP,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAv0B7sP,IAAI,MAAM,aAET;IACD,cAAc,CAAC,OAAO,EAAE,MAAM;IAK9B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAG/B,IAAI,MAAM,kBAET;gBAEW,MAAM,GAAE,kBAAuB;IAgC3C;;;;;OAKG;IACH,UAAU,CAAC,aAAa,EAAE,iBAAiB,EAAE,YAAY,oBAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IA6GjG,EAAE,CAAC,OAAO,EAAE,MAAM;IAclB;;OAEG;IACH,KAAK;IAsBL,IAAI,CAAC,EAAE,EAAE,MAAM;IAYf;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC;IA8BlE,QAAQ,CAAC,OAAO,EAAE,MAAM;IAIxB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;;;IAsCxD;;;;;OAKG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;;iBAqBX,SAAS;;;;IAS7C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;IAuF/C,aAAa,CAAC,MAAM,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GACpC,KAAK,CAAC,MAAM,CAAC;IAqShB,kBAAkB,CAAC,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+DlC,SAAS,CACP,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,EACpB,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,MAAM;CAmDlB"}
1
+ {"version":3,"file":"Centrifuge.d.ts","sourceRoot":"","sources":["../src/Centrifuge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAiBtC,OAAO,EAUL,KAAK,GAAG,EACR,KAAK,OAAO,IAAI,WAAW,EAC3B,KAAK,KAAK,EAGX,MAAM,MAAM,CAAA;AAKb,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,KAAK,EAEV,eAAe,EACf,aAAa,EAEb,SAAS,EAET,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,OAAO,KAAK,EAA0B,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,KAAK,EAAmB,MAAM,EAAE,WAAW,EAA6B,MAAM,wBAAwB,CAAA;AAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAM3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAgB,MAAM,kBAAkB,CAAA;AAiChE,qBAAa,UAAU;;IAErB,IAAI,MAAM,kBAET;IAGD,SAAS,CAAC,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;qrBAkQJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA0PV,CAAC;uCAwCC,CAAC;;;;;;;;;;;;;;;;6eAsXsrJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAv5BtsJ,IAAI,MAAM,aAET;IACD,cAAc,CAAC,OAAO,EAAE,MAAM;IAK9B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAG/B,IAAI,MAAM,kBAET;gBAEW,MAAM,GAAE,kBAAuB;IAgC3C;;;;;;OAMG;IACH,UAAU,CAAC,aAAa,EAAE,iBAAiB,EAAE,YAAY,oBAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IA0I3G,EAAE,CAAC,OAAO,EAAE,MAAM;IAclB;;OAEG;IACH,KAAK;IAsBL,IAAI,CAAC,EAAE,EAAE,MAAM;IAYf;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC;IA8BrE,QAAQ,CAAC,OAAO,EAAE,SAAS;IAI3B;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM;;;;IAsC9D;;;;OAIG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,SAAe;;;;;;;IAiDtD;;;;;;OAMG;IACH,aAAa,CACX,aAAa,EAAE,MAAM,EACrB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,SAAS,EACvB,OAAO,GAAE,MAAM,GAAG,MAAU;IAqB9B;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;IAuF/C,aAAa,CAAC,MAAM,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GACpC,KAAK,CAAC,MAAM,CAAC;IAqShB,kBAAkB,CAAC,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+DlC,SAAS,CACP,gBAAgB,EAAE,SAAS,EAC3B,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,EACpB,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,MAAM;CAmDlB"}
@@ -1,6 +1,6 @@
1
1
  import { combineLatest, concatWith, defaultIfEmpty, defer, filter, identity, isObservable, map, mergeMap, of, Subject, switchMap, using, } from 'rxjs';
2
2
  import { fromFetch } from 'rxjs/fetch';
3
- import { createPublicClient, createWalletClient, custom, getContract, http, parseAbi, parseEventLogs, toHex, } from 'viem';
3
+ import { createPublicClient, createWalletClient, custom, encodeFunctionData, getContract, http, parseAbi, parseEventLogs, toHex, } from 'viem';
4
4
  import { ABI } from './abi/index.js';
5
5
  import { chainIdToNetwork, chains } from './config/chains.js';
6
6
  import { currencies } from './config/protocol.js';
@@ -8,11 +8,12 @@ import { PERMIT_TYPEHASH } from './constants.js';
8
8
  import { Investor } from './entities/Investor.js';
9
9
  import { Pool } from './entities/Pool.js';
10
10
  import { Balance } from './utils/BigInt.js';
11
+ import { randomUint } from './utils/index.js';
11
12
  import { createPinning, getUrlFromHash } from './utils/ipfs.js';
12
13
  import { hashKey } from './utils/query.js';
13
14
  import { makeThenable, repeatOnEvents, shareReplayWithDelayedReset } from './utils/rx.js';
14
15
  import { doTransaction, isLocalAccount } from './utils/transaction.js';
15
- import { AssetId, PoolId } from './utils/types.js';
16
+ import { AssetId, PoolId, ShareClassId } from './utils/types.js';
16
17
  const PINNING_API_DEMO = 'https://europe-central2-peak-vista-185616.cloudfunctions.net/pinning-api-demo';
17
18
  const envConfig = {
18
19
  mainnet: {
@@ -96,37 +97,26 @@ export class Centrifuge {
96
97
  * @param metadataInput - The metadata for the pool
97
98
  * @param currencyCode - The currency code for the pool
98
99
  * @param chainId - The chain ID to create the pool on
100
+ * @param counter - The pool counter, used to create a unique pool ID (uint48)
99
101
  */
100
102
  createPool(metadataInput, currencyCode = 840, chainId, counter) {
101
103
  const self = this;
102
104
  return this._transactSequence(async function* ({ walletClient, signingAddress, publicClient }) {
103
105
  const [addresses, id] = await Promise.all([self._protocolAddresses(chainId), self.id(chainId)]);
104
- const result = yield* doTransaction('Create pool', publicClient, () => walletClient.writeContract({
105
- address: addresses.hubRegistry,
106
+ const poolId = PoolId.from(id, counter ?? randomUint(48));
107
+ const createPoolData = encodeFunctionData({
106
108
  abi: ABI.Hub,
107
109
  functionName: 'createPool',
108
- args: [PoolId.from(id, counter).raw, signingAddress, BigInt(currencyCode)],
109
- }));
110
- const logs = parseEventLogs({
111
- abi: ABI.HubRegistry,
112
- eventName: 'NewPool',
113
- logs: result.receipt.logs,
110
+ args: [poolId.raw, signingAddress, BigInt(currencyCode)],
114
111
  });
115
- const poolId = logs[0].args.poolId;
116
- const scIds = await Promise.all(Array.from({ length: metadataInput.shareClasses.length }, (_, i) => {
117
- return self.getClient(chainId).readContract({
118
- address: addresses.shareClassManager,
119
- abi: ABI.ShareClassManager,
120
- functionName: 'previewShareClassId',
121
- args: [poolId, i + 1],
122
- });
123
- }));
112
+ const scIds = Array.from({ length: metadataInput.shareClasses.length }, (_, i) => ShareClassId.from(poolId, i + 1));
124
113
  const shareClassesById = {};
125
114
  metadataInput.shareClasses.forEach((sc, index) => {
126
- shareClassesById[scIds[index]] = {
115
+ shareClassesById[scIds[index].raw] = {
127
116
  minInitialInvestment: Balance.fromFloat(sc.minInvestment, 18).toString(),
128
117
  apyPercentage: sc.apyPercentage,
129
118
  apy: sc.apy,
119
+ defaultAccounts: sc.defaultAccounts,
130
120
  };
131
121
  });
132
122
  const formattedMetadata = {
@@ -172,25 +162,61 @@ export class Centrifuge {
172
162
  : [],
173
163
  },
174
164
  shareClasses: shareClassesById,
175
- defaultAccounts: {},
176
165
  onboarding: {
177
166
  shareClasses: metadataInput.onboarding?.shareClasses || {},
178
167
  taxInfoRequired: metadataInput.onboarding?.taxInfoRequired,
179
168
  externalOnboardingUrl: metadataInput.onboarding?.externalOnboardingUrl,
180
169
  },
181
170
  };
182
- console.log('poolId', poolId, formattedMetadata);
183
- // TODO: add metadata and share classes
184
- // const enableData = encodeFunctionData({
185
- // abi: ABI.Hub,
186
- // functionName: 'setMetadata',
187
- // args: ["IPFS_HASH"],
188
- // })
189
- // const requestData = encodeFunctionData({
190
- // abi: ABI.Hub,
191
- // functionName: 'addShareClass',
192
- // args: [SC_NAME, SC_SYMBOL, SC_SALT, ''],
193
- // })
171
+ const cid = await self.config.pinJson(formattedMetadata);
172
+ const setMetadataData = encodeFunctionData({
173
+ abi: ABI.Hub,
174
+ functionName: 'setPoolMetadata',
175
+ args: [poolId.raw, toHex(cid)],
176
+ });
177
+ const addScData = metadataInput.shareClasses.map((sc) => encodeFunctionData({
178
+ abi: ABI.Hub,
179
+ functionName: 'addShareClass',
180
+ args: [
181
+ poolId.raw,
182
+ sc.tokenName,
183
+ sc.symbolName,
184
+ sc.salt?.startsWith('0x') ? sc.salt : toHex(sc.salt ?? randomUint(256), { size: 32 }),
185
+ ],
186
+ }));
187
+ const accountIsDebitNormal = new Map();
188
+ const accountNumbers = [
189
+ ...new Set(metadataInput.shareClasses.flatMap((sc) => Object.entries(sc.defaultAccounts ?? {})
190
+ .filter(([k, v]) => {
191
+ if (!v)
192
+ return false;
193
+ if (['asset', 'expense'].includes(k)) {
194
+ if (accountIsDebitNormal.get(v) === false)
195
+ throw new Error(`Account "${v}" is set as both credit normal and debit normal.`);
196
+ accountIsDebitNormal.set(v, true);
197
+ }
198
+ else {
199
+ if (accountIsDebitNormal.get(v) === true)
200
+ throw new Error(`Account "${v}" is set as both credit normal and debit normal.`);
201
+ accountIsDebitNormal.set(v, false);
202
+ }
203
+ return true;
204
+ })
205
+ .map(([, v]) => v))),
206
+ ];
207
+ const createAccountsData = accountNumbers.map((account) => encodeFunctionData({
208
+ abi: ABI.Hub,
209
+ functionName: 'createAccount',
210
+ args: [poolId.raw, account, accountIsDebitNormal.get(account)],
211
+ }));
212
+ yield* doTransaction('Create pool', publicClient, () => {
213
+ return walletClient.writeContract({
214
+ address: addresses.hub,
215
+ abi: ABI.Hub,
216
+ functionName: 'multicall',
217
+ args: [[createPoolData, setMetadataData, ...addScData, ...createAccountsData]],
218
+ });
219
+ });
194
220
  }, chainId);
195
221
  }
196
222
  id(chainId) {
@@ -300,29 +326,59 @@ export class Centrifuge {
300
326
  /**
301
327
  * Get the assets that exist on a given spoke chain that have been registered on a given hub chain.
302
328
  * @param spokeChainId - The chain ID where the assets exist
303
- * @param hubChainId - The chain ID where the assets are registered
304
- * @returns
329
+ * @param hubChainId - The chain ID where the assets should optionally be registered
305
330
  */
306
- assets(spokeChainId, hubChainId) {
307
- return this._query(null, () => combineLatest([this.id(spokeChainId), this.id(hubChainId)])).pipe(switchMap(([spokeCentId, hubCentId]) => this._queryIndexer(`query ($spokeCentId: String!, $hubCentId: String!) {
308
- assets(where: { centrifugeId: $spokeCentId }) {
309
- items {
310
- address
311
- name
312
- symbol
313
- id: assetTokenId
331
+ assets(spokeChainId, hubChainId = spokeChainId) {
332
+ return this._query(null, () => combineLatest([this.id(spokeChainId), this.id(hubChainId)]).pipe(switchMap(([spokeCentId, hubCentId]) => this._queryIndexer(`query ($hubCentId: String!) {
333
+ assetRegistrations(where: { centrifugeId: $hubCentId, decimals_gt: 0 }) {
334
+ items {
335
+ id
336
+ name
337
+ symbol
338
+ decimals
339
+ asset {
340
+ centrifugeId
341
+ address
342
+ }
343
+ }
314
344
  }
315
- }
316
- }`, { spokeCentId, hubCentId })), map((data) => {
317
- return data.assets.items.map((asset) => {
345
+ }`, { hubCentId: String(hubCentId) }, (data) => {
346
+ return data.assetRegistrations.items
347
+ .filter((assetReg) => Number(assetReg.asset.centrifugeId) === spokeCentId)
348
+ .map((assetReg) => {
318
349
  return {
319
- id: new AssetId(asset.id),
320
- address: asset.address,
321
- name: asset.name,
322
- symbol: asset.symbol,
350
+ registeredOnCentrifugeId: hubCentId,
351
+ id: new AssetId(assetReg.id),
352
+ address: assetReg.asset.address,
353
+ name: assetReg.name,
354
+ symbol: assetReg.symbol,
323
355
  };
324
356
  });
325
- }));
357
+ }))));
358
+ }
359
+ /**
360
+ * Register an asset
361
+ * @param originChainId - The chain ID where the asset exists
362
+ * @param registerOnChainId - The chain ID where the asset should be registered
363
+ * @param assetAddress - The address of the asset to register
364
+ * @param tokenId - Optional token ID for ERC6909 assets
365
+ */
366
+ registerAsset(originChainId, registerOnChainId, assetAddress, tokenId = 0) {
367
+ const self = this;
368
+ return this._transactSequence(async function* ({ walletClient, publicClient }) {
369
+ const [addresses, id, estimate] = await Promise.all([
370
+ self._protocolAddresses(originChainId),
371
+ self.id(registerOnChainId),
372
+ self._estimate(originChainId, { chainId: registerOnChainId }),
373
+ ]);
374
+ yield* doTransaction('Register asset', publicClient, () => walletClient.writeContract({
375
+ address: addresses.spoke,
376
+ abi: ABI.Spoke,
377
+ functionName: 'registerAsset',
378
+ args: [id, assetAddress, BigInt(tokenId)],
379
+ value: estimate,
380
+ }));
381
+ }, originChainId);
326
382
  }
327
383
  /**
328
384
  * Get the decimals of asset
@@ -1 +1 @@
1
- {"version":3,"file":"Centrifuge.js","sourceRoot":"","sources":["../src/Centrifuge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Centrifuge.js","sourceRoot":"","sources":["../src/Centrifuge.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ const chainId = 11155111;
12
12
  const poolId = PoolId.from(1, 1);
13
13
  const assetId = AssetId.from(1, 1);
14
14
  const asset = currencies[chainId][0];
15
+ const poolManager = '0x423420Ae467df6e90291fd0252c0A8a637C1e03f';
15
16
  describe('Centrifuge', () => {
16
17
  let clock;
17
18
  beforeEach(() => {
@@ -79,6 +80,15 @@ describe('Centrifuge', () => {
79
80
  expect(currency.address.toLowerCase()).to.equal(asset.toLowerCase());
80
81
  expect(currency.supportsPermit).to.be.true;
81
82
  });
83
+ it('should fetch assets', async () => {
84
+ const assets = await context.centrifuge.assets(chainId);
85
+ expect(assets).to.be.an('array');
86
+ expect(assets.length).to.be.greaterThan(0);
87
+ expect(assets[0].id.centrifugeId).to.equal(1);
88
+ expect(assets[0].registeredOnCentrifugeId).to.equal(1);
89
+ expect(assets[0].name).to.be.a('string');
90
+ expect(assets[0].symbol).to.be.a('string');
91
+ });
82
92
  it('should fetch the asset decimals', async () => {
83
93
  const decimals = await context.centrifuge.assetDecimals(assetId, 11155111);
84
94
  expect(decimals).to.equal(6);
@@ -385,6 +395,76 @@ describe('Centrifuge', () => {
385
395
  ]);
386
396
  });
387
397
  });
398
+ describe('Transactions', () => {
399
+ it('should register an asset', async () => {
400
+ const centrifuge = new Centrifuge({
401
+ environment: 'demo',
402
+ rpcUrls: {
403
+ 11155111: context.tenderlyFork.rpcUrl,
404
+ },
405
+ });
406
+ const assetAddress = '0x86eb50b22dd226fe5d1f0753a40e247fd711ad6e';
407
+ context.tenderlyFork.impersonateAddress = poolManager;
408
+ centrifuge.setSigner(context.tenderlyFork.signer);
409
+ const result = await centrifuge.registerAsset(chainId, chainId, assetAddress);
410
+ expect(result.type).to.equal('TransactionConfirmed');
411
+ });
412
+ it('should create a pool', async () => {
413
+ const centrifugeWithPin = new Centrifuge({
414
+ environment: 'dev',
415
+ pinJson: async () => {
416
+ return 'abc';
417
+ },
418
+ rpcUrls: {
419
+ 11155111: context.tenderlyFork.rpcUrl,
420
+ },
421
+ });
422
+ context.tenderlyFork.impersonateAddress = poolManager;
423
+ centrifugeWithPin.setSigner(context.tenderlyFork.signer);
424
+ const result = await centrifugeWithPin.createPool({
425
+ assetClass: 'Public credit',
426
+ subAssetClass: 'Test Subclass',
427
+ poolName: 'Test Pool',
428
+ poolIcon: { uri: '', mime: '' },
429
+ investorType: 'Retail',
430
+ poolStructure: 'revolving',
431
+ poolType: 'open',
432
+ issuerName: 'Test Issuer',
433
+ issuerRepName: 'Test Rep',
434
+ issuerLogo: { uri: '', mime: '' },
435
+ issuerShortDescription: 'Test Description',
436
+ issuerDescription: 'Test Description',
437
+ website: '',
438
+ forum: '',
439
+ email: '',
440
+ report: null,
441
+ executiveSummary: null,
442
+ details: [],
443
+ issuerCategories: [],
444
+ poolRatings: [],
445
+ listed: false,
446
+ onboardingExperience: 'default',
447
+ shareClasses: [
448
+ {
449
+ tokenName: 'Test Token',
450
+ symbolName: 'TST',
451
+ minInvestment: 1000,
452
+ apyPercentage: 5,
453
+ apy: '5%',
454
+ defaultAccounts: {
455
+ asset: 1000,
456
+ equity: 1001,
457
+ gain: 1001,
458
+ loss: 1001,
459
+ expense: 1002,
460
+ liability: 1001,
461
+ },
462
+ },
463
+ ],
464
+ }, 840, chainId);
465
+ expect(result.type).to.equal('TransactionConfirmed');
466
+ });
467
+ });
388
468
  });
389
469
  function lazy(value, t = 10) {
390
470
  return new Promise((res) => setTimeout(() => res(value), t));