@tcswap/helpers 4.5.15

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 (139) hide show
  1. package/dist/api/index.cjs +4 -0
  2. package/dist/api/index.cjs.map +16 -0
  3. package/dist/api/index.js +4 -0
  4. package/dist/api/index.js.map +16 -0
  5. package/dist/chunk-pfmeq01a.js +5 -0
  6. package/dist/chunk-pfmeq01a.js.map +9 -0
  7. package/dist/chunk-vb4wtm2w.js +4 -0
  8. package/dist/chunk-vb4wtm2w.js.map +9 -0
  9. package/dist/contracts.cjs +4 -0
  10. package/dist/contracts.cjs.map +10 -0
  11. package/dist/contracts.js +4 -0
  12. package/dist/contracts.js.map +10 -0
  13. package/dist/index.cjs +7 -0
  14. package/dist/index.cjs.map +30 -0
  15. package/dist/index.js +7 -0
  16. package/dist/index.js.map +30 -0
  17. package/dist/tokens.cjs +4 -0
  18. package/dist/tokens.cjs.map +10 -0
  19. package/dist/tokens.js +4 -0
  20. package/dist/tokens.js.map +10 -0
  21. package/dist/types/api/index.d.ts +502 -0
  22. package/dist/types/api/index.d.ts.map +1 -0
  23. package/dist/types/api/memoless/endpoints.d.ts +56 -0
  24. package/dist/types/api/memoless/endpoints.d.ts.map +1 -0
  25. package/dist/types/api/memoless/types.d.ts +85 -0
  26. package/dist/types/api/memoless/types.d.ts.map +1 -0
  27. package/dist/types/api/midgard/endpoints.d.ts +80 -0
  28. package/dist/types/api/midgard/endpoints.d.ts.map +1 -0
  29. package/dist/types/api/midgard/types.d.ts +543 -0
  30. package/dist/types/api/midgard/types.d.ts.map +1 -0
  31. package/dist/types/api/thornode/endpoints.d.ts +34 -0
  32. package/dist/types/api/thornode/endpoints.d.ts.map +1 -0
  33. package/dist/types/api/thornode/types.d.ts +264 -0
  34. package/dist/types/api/thornode/types.d.ts.map +1 -0
  35. package/dist/types/api/uswap/endpoints.d.ts +372 -0
  36. package/dist/types/api/uswap/endpoints.d.ts.map +1 -0
  37. package/dist/types/api/uswap/types.d.ts +1487 -0
  38. package/dist/types/api/uswap/types.d.ts.map +1 -0
  39. package/dist/types/contracts.d.ts +2 -0
  40. package/dist/types/contracts.d.ts.map +1 -0
  41. package/dist/types/index.d.ts +32 -0
  42. package/dist/types/index.d.ts.map +1 -0
  43. package/dist/types/modules/assetValue.d.ts +82 -0
  44. package/dist/types/modules/assetValue.d.ts.map +1 -0
  45. package/dist/types/modules/bigIntArithmetics.d.ts +60 -0
  46. package/dist/types/modules/bigIntArithmetics.d.ts.map +1 -0
  47. package/dist/types/modules/feeMultiplier.d.ts +48 -0
  48. package/dist/types/modules/feeMultiplier.d.ts.map +1 -0
  49. package/dist/types/modules/requestClient.d.ts +33 -0
  50. package/dist/types/modules/requestClient.d.ts.map +1 -0
  51. package/dist/types/modules/uSwapConfig.d.ts +249 -0
  52. package/dist/types/modules/uSwapConfig.d.ts.map +1 -0
  53. package/dist/types/modules/uSwapError.d.ts +879 -0
  54. package/dist/types/modules/uSwapError.d.ts.map +1 -0
  55. package/dist/types/modules/uSwapNumber.d.ts +10 -0
  56. package/dist/types/modules/uSwapNumber.d.ts.map +1 -0
  57. package/dist/types/tokens.d.ts +2 -0
  58. package/dist/types/tokens.d.ts.map +1 -0
  59. package/dist/types/types/commonTypes.d.ts +16 -0
  60. package/dist/types/types/commonTypes.d.ts.map +1 -0
  61. package/dist/types/types/derivationPath.d.ts +4 -0
  62. package/dist/types/types/derivationPath.d.ts.map +1 -0
  63. package/dist/types/types/errors/apiV1.d.ts +2 -0
  64. package/dist/types/types/errors/apiV1.d.ts.map +1 -0
  65. package/dist/types/types/index.d.ts +6 -0
  66. package/dist/types/types/index.d.ts.map +1 -0
  67. package/dist/types/types/quotes.d.ts +180 -0
  68. package/dist/types/types/quotes.d.ts.map +1 -0
  69. package/dist/types/types/sdk.d.ts +35 -0
  70. package/dist/types/types/sdk.d.ts.map +1 -0
  71. package/dist/types/types/wallet.d.ts +130 -0
  72. package/dist/types/types/wallet.d.ts.map +1 -0
  73. package/dist/types/utils/asset.d.ts +37 -0
  74. package/dist/types/utils/asset.d.ts.map +1 -0
  75. package/dist/types/utils/chains.d.ts +13 -0
  76. package/dist/types/utils/chains.d.ts.map +1 -0
  77. package/dist/types/utils/derivationPath.d.ts +21 -0
  78. package/dist/types/utils/derivationPath.d.ts.map +1 -0
  79. package/dist/types/utils/explorerUrls.d.ts +10 -0
  80. package/dist/types/utils/explorerUrls.d.ts.map +1 -0
  81. package/dist/types/utils/liquidity.d.ts +62 -0
  82. package/dist/types/utils/liquidity.d.ts.map +1 -0
  83. package/dist/types/utils/memo.d.ts +65 -0
  84. package/dist/types/utils/memo.d.ts.map +1 -0
  85. package/dist/types/utils/others.d.ts +15 -0
  86. package/dist/types/utils/others.d.ts.map +1 -0
  87. package/dist/types/utils/validators.d.ts +6 -0
  88. package/dist/types/utils/validators.d.ts.map +1 -0
  89. package/dist/types/utils/wallets.d.ts +36 -0
  90. package/dist/types/utils/wallets.d.ts.map +1 -0
  91. package/package.json +67 -0
  92. package/src/api/index.ts +15 -0
  93. package/src/api/memoless/endpoints.ts +62 -0
  94. package/src/api/memoless/types.ts +83 -0
  95. package/src/api/midgard/endpoints.ts +352 -0
  96. package/src/api/midgard/types.ts +515 -0
  97. package/src/api/thornode/endpoints.ts +109 -0
  98. package/src/api/thornode/types.ts +247 -0
  99. package/src/api/uswap/endpoints.ts +252 -0
  100. package/src/api/uswap/types.ts +626 -0
  101. package/src/contracts.ts +1 -0
  102. package/src/index.ts +32 -0
  103. package/src/modules/__tests__/assetValue.test.ts +2452 -0
  104. package/src/modules/__tests__/bigIntArithmetics.test.ts +410 -0
  105. package/src/modules/__tests__/feeMultiplier.test.ts +131 -0
  106. package/src/modules/__tests__/uSwapConfig.test.ts +429 -0
  107. package/src/modules/__tests__/uSwapNumber.test.ts +439 -0
  108. package/src/modules/assetValue.ts +536 -0
  109. package/src/modules/bigIntArithmetics.ts +366 -0
  110. package/src/modules/feeMultiplier.ts +84 -0
  111. package/src/modules/requestClient.ts +116 -0
  112. package/src/modules/uSwapConfig.ts +189 -0
  113. package/src/modules/uSwapError.ts +474 -0
  114. package/src/modules/uSwapNumber.ts +17 -0
  115. package/src/tokens.ts +1 -0
  116. package/src/types/commonTypes.ts +10 -0
  117. package/src/types/derivationPath.ts +11 -0
  118. package/src/types/errors/apiV1.ts +0 -0
  119. package/src/types/index.ts +5 -0
  120. package/src/types/quotes.ts +182 -0
  121. package/src/types/sdk.ts +38 -0
  122. package/src/types/wallet.ts +124 -0
  123. package/src/utils/__tests__/asset.test.ts +186 -0
  124. package/src/utils/__tests__/derivationPath.test.ts +142 -0
  125. package/src/utils/__tests__/explorerUrls.test.ts +59 -0
  126. package/src/utils/__tests__/liquidity.test.ts +302 -0
  127. package/src/utils/__tests__/memo.test.ts +99 -0
  128. package/src/utils/__tests__/others.test.ts +169 -0
  129. package/src/utils/__tests__/validators.test.ts +84 -0
  130. package/src/utils/__tests__/wallets.test.ts +625 -0
  131. package/src/utils/asset.ts +399 -0
  132. package/src/utils/chains.ts +104 -0
  133. package/src/utils/derivationPath.ts +101 -0
  134. package/src/utils/explorerUrls.ts +32 -0
  135. package/src/utils/liquidity.ts +154 -0
  136. package/src/utils/memo.ts +102 -0
  137. package/src/utils/others.ts +64 -0
  138. package/src/utils/validators.ts +36 -0
  139. package/src/utils/wallets.ts +238 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assetValue.d.ts","sourceRoot":"","sources":["../../../src/modules/assetValue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Modifications © 2025 Horizontal Systems.
3
+ */
4
+ import type { USwapNumber } from "./uSwapNumber";
5
+ type NumberPrimitivesType = {
6
+ bigint: bigint;
7
+ number: number;
8
+ string: string;
9
+ };
10
+ export type NumberPrimitives = bigint | number | string;
11
+ type InitialisationValueType = NumberPrimitives | BigIntArithmetics | USwapNumber;
12
+ type USwapBigIntParams = InitialisationValueType | {
13
+ decimal?: number;
14
+ value: number | string;
15
+ };
16
+ type AllowedNumberTypes = "bigint" | "number" | "string";
17
+ export declare function formatBigIntToSafeValue({ value, bigIntDecimal, decimal, }: {
18
+ value: bigint;
19
+ bigIntDecimal?: number;
20
+ decimal?: number;
21
+ }): string;
22
+ export declare class BigIntArithmetics {
23
+ #private;
24
+ decimalMultiplier: bigint;
25
+ bigIntValue: bigint;
26
+ decimal?: number;
27
+ static fromBigInt(value: bigint, decimal?: number): BigIntArithmetics;
28
+ static shiftDecimals({ value, from, to }: {
29
+ value: InstanceType<typeof USwapNumber>;
30
+ from: number;
31
+ to: number;
32
+ }): BigIntArithmetics;
33
+ constructor(params: USwapBigIntParams);
34
+ set(value: USwapBigIntParams): this;
35
+ add(...args: InitialisationValueType[]): this;
36
+ sub(...args: InitialisationValueType[]): this;
37
+ mul(...args: InitialisationValueType[]): this;
38
+ div(...args: InitialisationValueType[]): this;
39
+ gt(value: InitialisationValueType): boolean;
40
+ gte(value: InitialisationValueType): boolean;
41
+ lt(value: InitialisationValueType): boolean;
42
+ lte(value: InitialisationValueType): boolean;
43
+ eqValue(value: InitialisationValueType): boolean;
44
+ getValue<T extends AllowedNumberTypes>(type: T, decimal?: number): NumberPrimitivesType[T];
45
+ getBaseValue<T extends AllowedNumberTypes>(type: T, decimal?: number): NumberPrimitivesType[T];
46
+ getBigIntValue(value: InitialisationValueType, decimal?: number): bigint;
47
+ toSignificant(significantDigits?: number): string;
48
+ toFixed(fixedDigits?: number): string;
49
+ toAbbreviation(digits?: number): string;
50
+ toCurrency(currency?: string, { currencyPosition, decimal, decimalSeparator, thousandSeparator, trimTrailingZeros, }?: {
51
+ currencyPosition?: string | undefined;
52
+ decimal?: number | undefined;
53
+ decimalSeparator?: string | undefined;
54
+ thousandSeparator?: string | undefined;
55
+ trimTrailingZeros?: boolean | undefined;
56
+ }): string;
57
+ formatBigIntToSafeValue(value: bigint, decimal?: number): string;
58
+ }
59
+ export {};
60
+ //# sourceMappingURL=bigIntArithmetics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bigIntArithmetics.d.ts","sourceRoot":"","sources":["../../../src/modules/bigIntArithmetics.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,KAAK,oBAAoB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACxD,KAAK,uBAAuB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAElF,KAAK,iBAAiB,GAAG,uBAAuB,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAChG,KAAK,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAKzD,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,aAA+B,EAC/B,OAAyB,GAC1B,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,UAuBA;AAED,qBAAa,iBAAiB;;IAC5B,iBAAiB,EAAE,MAAM,CAAa;IACtC,WAAW,SAAM;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAOjD,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;QAAE,KAAK,EAAE,YAAY,CAAC,OAAO,WAAW,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE;gBAInG,MAAM,EAAE,iBAAiB;IAarC,GAAG,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAQnC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,EAAE,CAAC,KAAK,EAAE,uBAAuB;IAIjC,GAAG,CAAC,KAAK,EAAE,uBAAuB;IAIlC,EAAE,CAAC,KAAK,EAAE,uBAAuB;IAIjC,GAAG,CAAC,KAAK,EAAE,uBAAuB;IAIlC,OAAO,CAAC,KAAK,EAAE,uBAAuB;IAItC,QAAQ,CAAC,CAAC,SAAS,kBAAkB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAyB1F,YAAY,CAAC,CAAC,SAAS,kBAAkB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAU9F,cAAc,CAAC,KAAK,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,MAAM;IAU/D,aAAa,CAAC,iBAAiB,SAAI;IAiBnC,OAAO,CAAC,WAAW,SAAI;IA4BvB,cAAc,CAAC,MAAM,SAAI;IAWzB,UAAU,CACR,QAAQ,SAAM,EACd,EACE,gBAA0B,EAC1B,OAAW,EACX,gBAAsB,EACtB,iBAAuB,EACvB,iBAAwB,GACzB;;;;;;KAAK;IAiBR,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAmFxD"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Modifications © 2025 Horizontal Systems.
3
+ */
4
+ import { FeeOption } from "../types";
5
+ export interface FeeMultiplierConfig {
6
+ [FeeOption.Average]: number;
7
+ [FeeOption.Fast]: number;
8
+ [FeeOption.Fastest]: number;
9
+ }
10
+ declare const DEFAULT_FEE_MULTIPLIERS: FeeMultiplierConfig;
11
+ /**
12
+ * Get fee multiplier for the given fee option.
13
+ * Checks USwapConfig for custom multipliers first, then falls back to defaults.
14
+ *
15
+ * @param feeOption - The fee option (Average, Fast, Fastest)
16
+ * @returns The fee multiplier as a number
17
+ */
18
+ export declare function getFeeMultiplier(feeOption?: FeeOption): number;
19
+ /**
20
+ * Get fee multiplier as BigInt for EVM calculations.
21
+ * Returns numerator and denominator for precise BigInt arithmetic.
22
+ *
23
+ * @param feeOption - The fee option (Average, Fast, Fastest)
24
+ * @returns Object with numerator and denominator for BigInt calculations
25
+ */
26
+ export declare function getFeeMultiplierAsBigInt(feeOption?: FeeOption): {
27
+ numerator: bigint;
28
+ denominator: bigint;
29
+ };
30
+ /**
31
+ * Apply fee multiplier to a BigInt value (for EVM chains).
32
+ *
33
+ * @param value - The base fee value as BigInt
34
+ * @param feeOption - The fee option (Average, Fast, Fastest)
35
+ * @returns The multiplied fee value as BigInt
36
+ */
37
+ export declare function applyFeeMultiplierToBigInt(value: bigint, feeOption?: FeeOption): bigint;
38
+ /**
39
+ * Apply fee multiplier to a number value (for non-EVM chains).
40
+ *
41
+ * @param value - The base fee value as number
42
+ * @param feeOption - The fee option (Average, Fast, Fastest)
43
+ * @param floor - Whether to floor the result (default: false)
44
+ * @returns The multiplied fee value as number
45
+ */
46
+ export declare function applyFeeMultiplier(value: number, feeOption?: FeeOption, floor?: boolean): number;
47
+ export { DEFAULT_FEE_MULTIPLIERS };
48
+ //# sourceMappingURL=feeMultiplier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feeMultiplier.d.ts","sourceRoot":"","sources":["../../../src/modules/feeMultiplier.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrC,MAAM,WAAW,mBAAmB;IAClC,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC5B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACzB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,uBAAuB,EAAE,mBAI9B,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,SAA6B,GAAG,MAAM,CAQjF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,GAAE,SAA6B,GAAG;IAClF,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CASA;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,SAA6B,UAGjG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,SAA6B,EAAE,KAAK,UAAQ,GAAG,MAAM,CAIjH;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Modifications © 2025 Horizontal Systems.
3
+ */
4
+ export type RetryConfig = {
5
+ maxRetries?: number;
6
+ baseDelay?: number;
7
+ maxDelay?: number;
8
+ backoffMultiplier?: number;
9
+ };
10
+ export type RequestOptions = RequestInit & {
11
+ /**
12
+ * @deprecated @V4 Use onSuccess instead - will be removed in next major
13
+ */
14
+ responseHandler?: (response: any) => any;
15
+ json?: unknown;
16
+ onError?: (error: any) => any;
17
+ onSuccess?: (response: any) => any;
18
+ searchParams?: Record<string, string>;
19
+ dynamicHeader?: () => Record<string, string> | {};
20
+ retry?: RetryConfig;
21
+ timeoutMs?: number;
22
+ abortController?: AbortController;
23
+ };
24
+ export declare const RequestClient: {
25
+ extend: (extendOptions: RequestOptions) => {
26
+ extend: (newOptions: RequestOptions) => /*elided*/ any;
27
+ get: <T>(url: string, options?: RequestOptions) => Promise<T>;
28
+ post: <T>(url: string, options?: RequestOptions) => Promise<T>;
29
+ };
30
+ get: <T>(url: string, options?: RequestOptions) => Promise<T>;
31
+ post: <T>(url: string, options?: RequestOptions) => Promise<T>;
32
+ };
33
+ //# sourceMappingURL=requestClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestClient.d.ts","sourceRoot":"","sources":["../../../src/modules/requestClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,MAAM,WAAW,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC9B,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAqFF,eAAO,MAAM,aAAa;4BACA,cAAc;6BACf,cAAc;cApEO,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;eAAzD,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;;UAAzD,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;WAAzD,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;CA0EtG,CAAC"}
@@ -0,0 +1,249 @@
1
+ /**
2
+ * Modifications © 2025 Horizontal Systems.
3
+ */
4
+ import { type Chain } from "@tcswap/types";
5
+ import type { BalanceResponse, QuoteRequest, QuoteResponse, QuoteResponseRoute } from "../api";
6
+ import { WalletOption } from "../types";
7
+ import type { FeeMultiplierConfig } from "./feeMultiplier";
8
+ export type USwapConfigIntegrations = {
9
+ chainflip?: {
10
+ useSDKBroker?: boolean;
11
+ brokerUrl: string;
12
+ };
13
+ coinbase?: {
14
+ appName: string;
15
+ appLogoUrl?: string | null;
16
+ darkMode?: boolean;
17
+ linkAPIUrl?: string;
18
+ overrideIsMetaMask?: boolean;
19
+ overrideIsCoinbaseWallet?: boolean;
20
+ overrideIsCoinbaseBrowser?: boolean;
21
+ headlessMode?: boolean;
22
+ reloadOnDisconnect?: boolean;
23
+ };
24
+ nearWalletSelector?: {
25
+ contractId?: string;
26
+ };
27
+ trezor?: {
28
+ email: string;
29
+ appUrl: string;
30
+ };
31
+ keepKey?: {
32
+ name: string;
33
+ imageUrl: string;
34
+ basePath: string;
35
+ url: string;
36
+ };
37
+ radix: {
38
+ dAppDefinitionAddress: string;
39
+ applicationName: string;
40
+ applicationVersion: string;
41
+ network: {
42
+ networkId: number;
43
+ networkName: string;
44
+ dashboardBase: string;
45
+ };
46
+ };
47
+ };
48
+ export type CustomApiEndpoints = {
49
+ getBalance: ({ chain, address }: {
50
+ chain: Chain;
51
+ address: string;
52
+ }) => Promise<BalanceResponse>;
53
+ getQuote: (json: QuoteRequest) => Promise<QuoteResponse>;
54
+ getRouteWithTx: (json: {
55
+ routeId: string;
56
+ }) => Promise<QuoteResponseRoute>;
57
+ };
58
+ declare const initialState: {
59
+ apiKeys: {
60
+ blockchair: string;
61
+ keepKey: string;
62
+ memoless: string;
63
+ passkeys: string;
64
+ uSwap: string;
65
+ walletConnectProjectId: string;
66
+ xaman: string;
67
+ };
68
+ chains: Chain[];
69
+ endpoints: CustomApiEndpoints;
70
+ envs: {
71
+ apiUrl: string;
72
+ devApiUrl: string;
73
+ experimental_apiKey: string | null;
74
+ experimental_apiUrlQuote: string | null;
75
+ experimental_apiUrlSwap: string | null;
76
+ isDev: boolean;
77
+ isStagenet: boolean;
78
+ memolessApiUrl: string;
79
+ };
80
+ feeMultipliers: FeeMultiplierConfig | undefined;
81
+ integrations: USwapConfigIntegrations;
82
+ requestOptions: {
83
+ retry: {
84
+ backoffMultiplier: number;
85
+ baseDelay: number;
86
+ maxDelay: number;
87
+ maxRetries: number;
88
+ };
89
+ timeoutMs: number;
90
+ };
91
+ rpcUrls: {
92
+ ARB: string[];
93
+ AURORA: string[];
94
+ AVAX: string[];
95
+ BASE: string[];
96
+ BERA: string[];
97
+ BSC: string[];
98
+ BTC: string[];
99
+ BCH: string[];
100
+ BOTANIX: string[];
101
+ ADA: string[];
102
+ FLIP: string[];
103
+ CORE: string[];
104
+ CORN: string[];
105
+ GAIA: string[];
106
+ CRO: string[];
107
+ DASH: string[];
108
+ DOGE: string[];
109
+ ETH: string[];
110
+ GNO: string[];
111
+ HARBOR: string[];
112
+ HYPEREVM: string[];
113
+ KUJI: string[];
114
+ LTC: string[];
115
+ MAYA: string[];
116
+ MEGAETH: string[];
117
+ MONAD: string[];
118
+ NEAR: string[];
119
+ NOBLE: string[];
120
+ OP: string[];
121
+ DOT: string[];
122
+ POL: string[];
123
+ XRD: string[];
124
+ XRP: string[];
125
+ SOL: string[];
126
+ SONIC: string[];
127
+ SUI: string[];
128
+ THOR: string[];
129
+ TON: string[];
130
+ TRON: string[];
131
+ UNI: string[];
132
+ XLAYER: string[];
133
+ ZEC: string[];
134
+ MAYA_HARBOR: string[];
135
+ THOR_STAGENET: string[];
136
+ MAYA_STAGENET: string[];
137
+ };
138
+ wallets: WalletOption[];
139
+ };
140
+ type USwapState = typeof initialState;
141
+ export type USwapConfigState = {
142
+ apiKeys?: Partial<USwapState["apiKeys"]>;
143
+ chains?: USwapState["chains"];
144
+ endpoints?: Partial<CustomApiEndpoints>;
145
+ envs?: Partial<USwapState["envs"]>;
146
+ integrations?: Partial<USwapConfigIntegrations>;
147
+ rpcUrls?: Partial<USwapState["rpcUrls"]>;
148
+ wallets?: USwapState["wallets"];
149
+ feeMultipliers?: FeeMultiplierConfig;
150
+ };
151
+ type USwapConfigStore = USwapState & {
152
+ setApiKey: (key: keyof USwapState["apiKeys"], apiKey: string) => void;
153
+ setConfig: (config: USwapConfigState) => void;
154
+ setEnv: <T extends keyof USwapState["envs"]>(key: T, value: USwapState["envs"][T]) => void;
155
+ setEndpoint: <T extends keyof CustomApiEndpoints>(key: T, endpoint: CustomApiEndpoints[T]) => void;
156
+ setRpcUrl: (chain: keyof USwapState["rpcUrls"], url: string[]) => void;
157
+ setRequestOptions: (options: Partial<USwapState["requestOptions"]>) => void;
158
+ setIntegrationConfig: (integration: keyof USwapState["integrations"], config: USwapConfigIntegrations[keyof USwapConfigIntegrations]) => void;
159
+ setFeeMultipliers: (multipliers: FeeMultiplierConfig) => void;
160
+ };
161
+ export declare const useUSwapStore: import("zustand").UseBoundStore<import("zustand").StoreApi<USwapConfigStore>>;
162
+ export declare const useUSwapConfig: () => {
163
+ apiKeys: {
164
+ blockchair: string;
165
+ keepKey: string;
166
+ memoless: string;
167
+ passkeys: string;
168
+ uSwap: string;
169
+ walletConnectProjectId: string;
170
+ xaman: string;
171
+ };
172
+ chains: Chain[];
173
+ endpoints: CustomApiEndpoints;
174
+ envs: {
175
+ apiUrl: string;
176
+ devApiUrl: string;
177
+ experimental_apiKey: string | null;
178
+ experimental_apiUrlQuote: string | null;
179
+ experimental_apiUrlSwap: string | null;
180
+ isDev: boolean;
181
+ isStagenet: boolean;
182
+ memolessApiUrl: string;
183
+ };
184
+ feeMultipliers: FeeMultiplierConfig | undefined;
185
+ integrations: USwapConfigIntegrations;
186
+ rpcUrls: {
187
+ ARB: string[];
188
+ AURORA: string[];
189
+ AVAX: string[];
190
+ BASE: string[];
191
+ BERA: string[];
192
+ BSC: string[];
193
+ BTC: string[];
194
+ BCH: string[];
195
+ BOTANIX: string[];
196
+ ADA: string[];
197
+ FLIP: string[];
198
+ CORE: string[];
199
+ CORN: string[];
200
+ GAIA: string[];
201
+ CRO: string[];
202
+ DASH: string[];
203
+ DOGE: string[];
204
+ ETH: string[];
205
+ GNO: string[];
206
+ HARBOR: string[];
207
+ HYPEREVM: string[];
208
+ KUJI: string[];
209
+ LTC: string[];
210
+ MAYA: string[];
211
+ MEGAETH: string[];
212
+ MONAD: string[];
213
+ NEAR: string[];
214
+ NOBLE: string[];
215
+ OP: string[];
216
+ DOT: string[];
217
+ POL: string[];
218
+ XRD: string[];
219
+ XRP: string[];
220
+ SOL: string[];
221
+ SONIC: string[];
222
+ SUI: string[];
223
+ THOR: string[];
224
+ TON: string[];
225
+ TRON: string[];
226
+ UNI: string[];
227
+ XLAYER: string[];
228
+ ZEC: string[];
229
+ MAYA_HARBOR: string[];
230
+ THOR_STAGENET: string[];
231
+ MAYA_STAGENET: string[];
232
+ };
233
+ wallets: WalletOption[];
234
+ };
235
+ export declare const USwapConfig: {
236
+ get: <T extends keyof USwapState>(key: T) => USwapConfigStore[T];
237
+ getState: () => USwapConfigStore;
238
+ reinitialize: () => void;
239
+ set: <T extends USwapConfigState>(config: T) => void;
240
+ setApiKey: <T extends keyof USwapState["apiKeys"]>(key: T, apiKey: string) => void;
241
+ setEndpoint: <T extends keyof CustomApiEndpoints>(key: T, endpoint: CustomApiEndpoints[T]) => void;
242
+ setEnv: <T extends keyof USwapState["envs"]>(key: T, value: USwapState["envs"][T]) => void;
243
+ setFeeMultipliers: (multipliers: FeeMultiplierConfig) => void;
244
+ setIntegrationConfig: <T extends keyof USwapState["integrations"]>(integration: T, config: USwapConfigIntegrations[T]) => void;
245
+ setRequestOptions: (options: USwapState["requestOptions"]) => void;
246
+ setRpcUrl: <T extends keyof USwapState["rpcUrls"]>(chain: T, urls: string[]) => void;
247
+ };
248
+ export {};
249
+ //# sourceMappingURL=uSwapConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uSwapConfig.d.ts","sourceRoot":"","sources":["../../../src/modules/uSwapConfig.ts"],"names":[],"mappings":"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"}