@unionlabs/payments 0.2.1 → 0.3.1

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 (144) hide show
  1. package/ChainRegistry/package.json +6 -0
  2. package/README.md +283 -1
  3. package/dist/cjs/Attestor.js +9 -2
  4. package/dist/cjs/Attestor.js.map +1 -1
  5. package/dist/cjs/ChainRegistry.js +24 -0
  6. package/dist/cjs/ChainRegistry.js.map +1 -0
  7. package/dist/cjs/Domain.js +8 -2
  8. package/dist/cjs/Domain.js.map +1 -1
  9. package/dist/cjs/Error.js +1 -1
  10. package/dist/cjs/Error.js.map +1 -1
  11. package/dist/cjs/EvmPublicClient.js +5 -277
  12. package/dist/cjs/EvmPublicClient.js.map +1 -1
  13. package/dist/cjs/EvmWalletClient.js +7 -642
  14. package/dist/cjs/EvmWalletClient.js.map +1 -1
  15. package/dist/cjs/Payment.js +86 -79
  16. package/dist/cjs/Payment.js.map +1 -1
  17. package/dist/cjs/Prover.js +2 -2
  18. package/dist/cjs/Prover.js.map +1 -1
  19. package/dist/cjs/PublicClient.js +2 -2
  20. package/dist/cjs/PublicClient.js.map +1 -1
  21. package/dist/cjs/WalletClient.js +2 -2
  22. package/dist/cjs/WalletClient.js.map +1 -1
  23. package/dist/cjs/constants/ibc-core-registry.js +7 -9
  24. package/dist/cjs/constants/ibc-core-registry.js.map +1 -1
  25. package/dist/cjs/constants/z-asset-registry.js +9 -7
  26. package/dist/cjs/constants/z-asset-registry.js.map +1 -1
  27. package/dist/cjs/internal/evmPublicClient.js +261 -0
  28. package/dist/cjs/internal/evmPublicClient.js.map +1 -0
  29. package/dist/cjs/internal/evmWalletClient.js +650 -0
  30. package/dist/cjs/internal/evmWalletClient.js.map +1 -1
  31. package/dist/cjs/internal/publicClient.js +0 -2
  32. package/dist/cjs/internal/publicClient.js.map +1 -1
  33. package/dist/cjs/promises/Payment.js +4 -3
  34. package/dist/cjs/promises/Payment.js.map +1 -1
  35. package/dist/cjs/promises/PublicClient.js +1 -2
  36. package/dist/cjs/promises/PublicClient.js.map +1 -1
  37. package/dist/cjs/promises/WalletClient.js +0 -1
  38. package/dist/cjs/promises/WalletClient.js.map +1 -1
  39. package/dist/cjs/rpc.js +3 -5
  40. package/dist/cjs/rpc.js.map +1 -1
  41. package/dist/dts/Attestor.d.ts +21 -6
  42. package/dist/dts/Attestor.d.ts.map +1 -1
  43. package/dist/dts/ChainRegistry.d.ts +6 -0
  44. package/dist/dts/ChainRegistry.d.ts.map +1 -0
  45. package/dist/dts/Domain.d.ts +92 -59
  46. package/dist/dts/Domain.d.ts.map +1 -1
  47. package/dist/dts/Error.d.ts +2 -2
  48. package/dist/dts/Error.d.ts.map +1 -1
  49. package/dist/dts/EvmPublicClient.d.ts +7 -19
  50. package/dist/dts/EvmPublicClient.d.ts.map +1 -1
  51. package/dist/dts/EvmWalletClient.d.ts +7 -23
  52. package/dist/dts/EvmWalletClient.d.ts.map +1 -1
  53. package/dist/dts/Payment.d.ts +72 -71
  54. package/dist/dts/Payment.d.ts.map +1 -1
  55. package/dist/dts/Prover.d.ts +6 -0
  56. package/dist/dts/Prover.d.ts.map +1 -1
  57. package/dist/dts/PublicClient.d.ts +11 -15
  58. package/dist/dts/PublicClient.d.ts.map +1 -1
  59. package/dist/dts/WalletClient.d.ts +10 -6
  60. package/dist/dts/WalletClient.d.ts.map +1 -1
  61. package/dist/dts/constants/ibc-core-registry.d.ts +5 -6
  62. package/dist/dts/constants/ibc-core-registry.d.ts.map +1 -1
  63. package/dist/dts/constants/z-asset-registry.d.ts +4 -4
  64. package/dist/dts/constants/z-asset-registry.d.ts.map +1 -1
  65. package/dist/dts/internal/evm.d.ts +3 -3
  66. package/dist/dts/internal/evm.d.ts.map +1 -1
  67. package/dist/dts/internal/evmPublicClient.d.ts +6 -0
  68. package/dist/dts/internal/evmPublicClient.d.ts.map +1 -0
  69. package/dist/dts/promises/Attestor.d.ts +5 -5
  70. package/dist/dts/promises/EvmPublicClient.d.ts +73 -74
  71. package/dist/dts/promises/EvmPublicClient.d.ts.map +1 -1
  72. package/dist/dts/promises/EvmWalletClient.d.ts +4 -5
  73. package/dist/dts/promises/EvmWalletClient.d.ts.map +1 -1
  74. package/dist/dts/promises/Payment.d.ts +39 -17
  75. package/dist/dts/promises/Payment.d.ts.map +1 -1
  76. package/dist/dts/promises/PublicClient.d.ts +3 -4
  77. package/dist/dts/promises/PublicClient.d.ts.map +1 -1
  78. package/dist/dts/promises/WalletClient.d.ts +77 -34
  79. package/dist/dts/promises/WalletClient.d.ts.map +1 -1
  80. package/dist/dts/rpc.d.ts +31 -0
  81. package/dist/dts/rpc.d.ts.map +1 -1
  82. package/dist/esm/Attestor.js +8 -1
  83. package/dist/esm/Attestor.js.map +1 -1
  84. package/dist/esm/ChainRegistry.js +16 -0
  85. package/dist/esm/ChainRegistry.js.map +1 -0
  86. package/dist/esm/Domain.js +7 -1
  87. package/dist/esm/Domain.js.map +1 -1
  88. package/dist/esm/Error.js +1 -1
  89. package/dist/esm/Error.js.map +1 -1
  90. package/dist/esm/EvmPublicClient.js +4 -275
  91. package/dist/esm/EvmPublicClient.js.map +1 -1
  92. package/dist/esm/EvmWalletClient.js +5 -638
  93. package/dist/esm/EvmWalletClient.js.map +1 -1
  94. package/dist/esm/Payment.js +84 -78
  95. package/dist/esm/Payment.js.map +1 -1
  96. package/dist/esm/Prover.js +1 -1
  97. package/dist/esm/Prover.js.map +1 -1
  98. package/dist/esm/PublicClient.js +2 -2
  99. package/dist/esm/PublicClient.js.map +1 -1
  100. package/dist/esm/WalletClient.js +2 -2
  101. package/dist/esm/WalletClient.js.map +1 -1
  102. package/dist/esm/constants/ibc-core-registry.js +5 -6
  103. package/dist/esm/constants/ibc-core-registry.js.map +1 -1
  104. package/dist/esm/constants/z-asset-registry.js +7 -4
  105. package/dist/esm/constants/z-asset-registry.js.map +1 -1
  106. package/dist/esm/internal/evmPublicClient.js +253 -0
  107. package/dist/esm/internal/evmPublicClient.js.map +1 -0
  108. package/dist/esm/internal/evmWalletClient.js +647 -1
  109. package/dist/esm/internal/evmWalletClient.js.map +1 -1
  110. package/dist/esm/internal/publicClient.js +0 -2
  111. package/dist/esm/internal/publicClient.js.map +1 -1
  112. package/dist/esm/promises/Payment.js +2 -2
  113. package/dist/esm/promises/Payment.js.map +1 -1
  114. package/dist/esm/promises/PublicClient.js +2 -3
  115. package/dist/esm/promises/PublicClient.js.map +1 -1
  116. package/dist/esm/promises/WalletClient.js +0 -1
  117. package/dist/esm/promises/WalletClient.js.map +1 -1
  118. package/dist/esm/rpc.js +2 -4
  119. package/dist/esm/rpc.js.map +1 -1
  120. package/package.json +15 -3
  121. package/src/Attestor.ts +12 -3
  122. package/src/ChainRegistry.ts +27 -0
  123. package/src/Domain.ts +30 -9
  124. package/src/Error.ts +1 -0
  125. package/src/EvmPublicClient.ts +9 -488
  126. package/src/EvmWalletClient.ts +21 -973
  127. package/src/Payment.ts +234 -159
  128. package/src/Prover.ts +2 -2
  129. package/src/PublicClient.ts +11 -18
  130. package/src/WalletClient.ts +11 -7
  131. package/src/constants/ibc-core-registry.ts +14 -14
  132. package/src/constants/z-asset-registry.ts +10 -7
  133. package/src/internal/evmPublicClient.ts +459 -0
  134. package/src/internal/evmWalletClient.ts +1008 -0
  135. package/src/internal/publicClient.ts +0 -3
  136. package/src/promises/Payment.ts +26 -25
  137. package/src/promises/PublicClient.ts +2 -3
  138. package/src/promises/WalletClient.ts +0 -1
  139. package/src/rpc.ts +2 -4
  140. package/unionlabs-payments-0.3.1.tgz +0 -0
  141. package/src/tsdoc-metadata.json +0 -11
  142. /package/{constants → Constants}/ibc-core-registry/package.json +0 -0
  143. /package/{constants → Constants}/services/package.json +0 -0
  144. /package/{constants → Constants}/z-asset-registry/package.json +0 -0
@@ -3,124 +3,153 @@ import type * as A from "effect/Array";
3
3
  import * as Data from "effect/Data";
4
4
  import * as S from "effect/Schema";
5
5
  import type * as Viem from "viem";
6
- export type RequestKind = "approval" | "deposit" | "transfer";
6
+ export declare const UniversalChainId: S.brand<S.filter<typeof S.String>, "UniversalChainId">;
7
+ export type UniversalChainId = typeof UniversalChainId.Type;
7
8
  export type PreparedRequest = Data.TaggedEnum<{
8
- viem: {
9
- kind: RequestKind;
10
- request: Viem.PrepareTransactionRequestReturnType;
9
+ PreparedEvm: {
10
+ kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
11
+ universalChainId: UniversalChainId;
12
+ contractAddress: Erc20Address;
13
+ abi: Viem.Abi;
14
+ functionName: string;
15
+ args: ReadonlyArray<unknown>;
11
16
  };
12
17
  }>;
13
18
  export declare const PreparedRequest: {
14
- readonly viem: Data.Case.Constructor<{
15
- readonly _tag: "viem";
16
- readonly kind: RequestKind;
17
- readonly request: Viem.PrepareTransactionRequestReturnType;
19
+ readonly PreparedEvm: Data.Case.Constructor<{
20
+ readonly _tag: "PreparedEvm";
21
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
22
+ readonly universalChainId: UniversalChainId;
23
+ readonly contractAddress: Erc20Address;
24
+ readonly abi: Viem.Abi;
25
+ readonly functionName: string;
26
+ readonly args: ReadonlyArray<unknown>;
18
27
  }, "_tag">;
19
- readonly $is: <Tag extends "viem">(tag: Tag) => (u: unknown) => u is Extract<{
20
- readonly _tag: "viem";
21
- readonly kind: RequestKind;
22
- readonly request: Viem.PrepareTransactionRequestReturnType;
28
+ readonly $is: <Tag extends "PreparedEvm">(tag: Tag) => (u: unknown) => u is Extract<{
29
+ readonly _tag: "PreparedEvm";
30
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
31
+ readonly universalChainId: UniversalChainId;
32
+ readonly contractAddress: Erc20Address;
33
+ readonly abi: Viem.Abi;
34
+ readonly functionName: string;
35
+ readonly args: ReadonlyArray<unknown>;
23
36
  }, {
24
37
  readonly _tag: Tag;
25
38
  }>;
26
39
  readonly $match: {
27
40
  <const Cases extends {
28
- readonly viem: (args: {
29
- readonly _tag: "viem";
30
- readonly kind: RequestKind;
31
- readonly request: Viem.PrepareTransactionRequestReturnType;
41
+ readonly PreparedEvm: (args: {
42
+ readonly _tag: "PreparedEvm";
43
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
44
+ readonly universalChainId: UniversalChainId;
45
+ readonly contractAddress: Erc20Address;
46
+ readonly abi: Viem.Abi;
47
+ readonly functionName: string;
48
+ readonly args: ReadonlyArray<unknown>;
32
49
  }) => any;
33
- }>(cases: Cases & { [K in Exclude<keyof Cases, "viem">]: never; }): (value: {
34
- readonly _tag: "viem";
35
- readonly kind: RequestKind;
36
- readonly request: Viem.PrepareTransactionRequestReturnType;
37
- }) => import("effect/Unify").Unify<ReturnType<Cases["viem"]>>;
50
+ }>(cases: Cases & { [K in Exclude<keyof Cases, "PreparedEvm">]: never; }): (value: {
51
+ readonly _tag: "PreparedEvm";
52
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
53
+ readonly universalChainId: UniversalChainId;
54
+ readonly contractAddress: Erc20Address;
55
+ readonly abi: Viem.Abi;
56
+ readonly functionName: string;
57
+ readonly args: ReadonlyArray<unknown>;
58
+ }) => import("effect/Unify").Unify<ReturnType<Cases["PreparedEvm"]>>;
38
59
  <const Cases extends {
39
- readonly viem: (args: {
40
- readonly _tag: "viem";
41
- readonly kind: RequestKind;
42
- readonly request: Viem.PrepareTransactionRequestReturnType;
60
+ readonly PreparedEvm: (args: {
61
+ readonly _tag: "PreparedEvm";
62
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
63
+ readonly universalChainId: UniversalChainId;
64
+ readonly contractAddress: Erc20Address;
65
+ readonly abi: Viem.Abi;
66
+ readonly functionName: string;
67
+ readonly args: ReadonlyArray<unknown>;
43
68
  }) => any;
44
69
  }>(value: {
45
- readonly _tag: "viem";
46
- readonly kind: RequestKind;
47
- readonly request: Viem.PrepareTransactionRequestReturnType;
48
- }, cases: Cases & { [K in Exclude<keyof Cases, "viem">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["viem"]>>;
70
+ readonly _tag: "PreparedEvm";
71
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
72
+ readonly universalChainId: UniversalChainId;
73
+ readonly contractAddress: Erc20Address;
74
+ readonly abi: Viem.Abi;
75
+ readonly functionName: string;
76
+ readonly args: ReadonlyArray<unknown>;
77
+ }, cases: Cases & { [K in Exclude<keyof Cases, "PreparedEvm">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["PreparedEvm"]>>;
49
78
  };
50
79
  };
51
80
  export type PreparedRequests = A.NonEmptyReadonlyArray<PreparedRequest>;
52
81
  export type SignedRequest = Data.TaggedEnum<{
53
- viem: {
82
+ SignedEvm: {
54
83
  value: Viem.SignTransactionReturnType;
55
84
  };
56
85
  }>;
57
86
  export declare const SignedRequest: {
58
- readonly viem: Data.Case.Constructor<{
59
- readonly _tag: "viem";
87
+ readonly SignedEvm: Data.Case.Constructor<{
88
+ readonly _tag: "SignedEvm";
60
89
  readonly value: Viem.SignTransactionReturnType;
61
90
  }, "_tag">;
62
- readonly $is: <Tag extends "viem">(tag: Tag) => (u: unknown) => u is Extract<{
63
- readonly _tag: "viem";
91
+ readonly $is: <Tag extends "SignedEvm">(tag: Tag) => (u: unknown) => u is Extract<{
92
+ readonly _tag: "SignedEvm";
64
93
  readonly value: Viem.SignTransactionReturnType;
65
94
  }, {
66
95
  readonly _tag: Tag;
67
96
  }>;
68
97
  readonly $match: {
69
98
  <const Cases extends {
70
- readonly viem: (args: {
71
- readonly _tag: "viem";
99
+ readonly SignedEvm: (args: {
100
+ readonly _tag: "SignedEvm";
72
101
  readonly value: Viem.SignTransactionReturnType;
73
102
  }) => any;
74
- }>(cases: Cases & { [K in Exclude<keyof Cases, "viem">]: never; }): (value: {
75
- readonly _tag: "viem";
103
+ }>(cases: Cases & { [K in Exclude<keyof Cases, "SignedEvm">]: never; }): (value: {
104
+ readonly _tag: "SignedEvm";
76
105
  readonly value: Viem.SignTransactionReturnType;
77
- }) => import("effect/Unify").Unify<ReturnType<Cases["viem"]>>;
106
+ }) => import("effect/Unify").Unify<ReturnType<Cases["SignedEvm"]>>;
78
107
  <const Cases extends {
79
- readonly viem: (args: {
80
- readonly _tag: "viem";
108
+ readonly SignedEvm: (args: {
109
+ readonly _tag: "SignedEvm";
81
110
  readonly value: Viem.SignTransactionReturnType;
82
111
  }) => any;
83
112
  }>(value: {
84
- readonly _tag: "viem";
113
+ readonly _tag: "SignedEvm";
85
114
  readonly value: Viem.SignTransactionReturnType;
86
- }, cases: Cases & { [K in Exclude<keyof Cases, "viem">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["viem"]>>;
115
+ }, cases: Cases & { [K in Exclude<keyof Cases, "SignedEvm">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["SignedEvm"]>>;
87
116
  };
88
117
  };
89
118
  export type SubmissionResult = Data.TaggedEnum<{
90
- viemWriteContract: {
119
+ SubmissionEvm: {
91
120
  hash: TxHash;
92
121
  };
93
122
  }>;
94
123
  export declare const SubmissionResult: {
95
- readonly viemWriteContract: Data.Case.Constructor<{
96
- readonly _tag: "viemWriteContract";
124
+ readonly SubmissionEvm: Data.Case.Constructor<{
125
+ readonly _tag: "SubmissionEvm";
97
126
  readonly hash: TxHash;
98
127
  }, "_tag">;
99
- readonly $is: <Tag extends "viemWriteContract">(tag: Tag) => (u: unknown) => u is Extract<{
100
- readonly _tag: "viemWriteContract";
128
+ readonly $is: <Tag extends "SubmissionEvm">(tag: Tag) => (u: unknown) => u is Extract<{
129
+ readonly _tag: "SubmissionEvm";
101
130
  readonly hash: TxHash;
102
131
  }, {
103
132
  readonly _tag: Tag;
104
133
  }>;
105
134
  readonly $match: {
106
135
  <const Cases extends {
107
- readonly viemWriteContract: (args: {
108
- readonly _tag: "viemWriteContract";
136
+ readonly SubmissionEvm: (args: {
137
+ readonly _tag: "SubmissionEvm";
109
138
  readonly hash: TxHash;
110
139
  }) => any;
111
- }>(cases: Cases & { [K in Exclude<keyof Cases, "viemWriteContract">]: never; }): (value: {
112
- readonly _tag: "viemWriteContract";
140
+ }>(cases: Cases & { [K in Exclude<keyof Cases, "SubmissionEvm">]: never; }): (value: {
141
+ readonly _tag: "SubmissionEvm";
113
142
  readonly hash: TxHash;
114
- }) => import("effect/Unify").Unify<ReturnType<Cases["viemWriteContract"]>>;
143
+ }) => import("effect/Unify").Unify<ReturnType<Cases["SubmissionEvm"]>>;
115
144
  <const Cases extends {
116
- readonly viemWriteContract: (args: {
117
- readonly _tag: "viemWriteContract";
145
+ readonly SubmissionEvm: (args: {
146
+ readonly _tag: "SubmissionEvm";
118
147
  readonly hash: TxHash;
119
148
  }) => any;
120
149
  }>(value: {
121
- readonly _tag: "viemWriteContract";
150
+ readonly _tag: "SubmissionEvm";
122
151
  readonly hash: TxHash;
123
- }, cases: Cases & { [K in Exclude<keyof Cases, "viemWriteContract">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["viemWriteContract"]>>;
152
+ }, cases: Cases & { [K in Exclude<keyof Cases, "SubmissionEvm">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["SubmissionEvm"]>>;
124
153
  };
125
154
  };
126
155
  export declare const CounterpartyInfo: S.Struct<{
@@ -130,12 +159,16 @@ export declare const CounterpartyInfo: S.Struct<{
130
159
  export type CounterpartyInfo = typeof CounterpartyInfo.Type;
131
160
  export type Erc20Address = `0x${string}` & Brand.Brand<"Erc20Address">;
132
161
  export declare const Erc20Address: Brand.Brand.Constructor<Erc20Address>;
133
- export type IbcHandlerAddress = `0x${string}` & Brand.Brand<"IbcHandlerAddress">;
134
- export declare const IbcHandlerAddress: Brand.Brand.Constructor<IbcHandlerAddress>;
162
+ export type IbcCoreAddress = `0x${string}` & Brand.Brand<"IbcCoreAddress">;
163
+ export declare const IbcCoreAddress: Brand.Brand.Constructor<IbcCoreAddress>;
135
164
  export type LightClientAddress = `0x${string}` & Brand.Brand<"LightClientAddress">;
136
165
  export declare const LightClientAddress: Brand.Brand.Constructor<LightClientAddress>;
137
166
  export type TxHash = `0x${string}` & Brand.Brand<"TxHash">;
138
167
  export declare const TxHash: Brand.Brand.Constructor<TxHash>;
139
168
  export type ZAssetAddress = `0x${string}` & Brand.Brand<"ZAssetAddress">;
140
169
  export declare const ZAssetAddress: Brand.Brand.Constructor<ZAssetAddress>;
170
+ export type PaymentKey = `0x${string}` & Brand.Brand<"PaymentKey">;
171
+ export declare const PaymentKey: Brand.Brand.Constructor<PaymentKey>;
172
+ export type Nullifier = bigint & Brand.Brand<"Nullifier">;
173
+ export declare const Nullifier: Brand.Brand.Constructor<Nullifier>;
141
174
  //# sourceMappingURL=Domain.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Domain.d.ts","sourceRoot":"","sources":["../../src/Domain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,CAAC,MAAM,eAAe,CAAC;AACnC,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAGlC,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC;IAC5C,IAAI,EAAE;QACJ,IAAI,EAAE,WAAW,CAAC;QAClB,OAAO,EAAE,IAAI,CAAC,mCAAmC,CAAC;KACnD,CAAC;CACH,CAAC,CAAC;AACH,eAAO,MAAM,eAAe;;;uBAJlB,WAAW;0BACR,IAAI,CAAC,mCAAmC;;;;uBAD3C,WAAW;;;;;;;;;+BAAX,WAAW;;;;;2BAAX,WAAW;;;;;;+BAAX,WAAW;;;;;2BAAX,WAAW;;;;CAI4C,CAAC;AAElE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAExE,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC;IAC1C,IAAI,EAAE;QACJ,KAAK,EAAE,IAAI,CAAC,yBAAyB,CAAC;KACvC,CAAC;CACH,CAAC,CAAC;AACH,eAAO,MAAM,aAAa;;;wBAHf,IAAI,CAAC,yBAAyB;;;;wBAA9B,IAAI,CAAC,yBAAyB;;;;;;;;gCAA9B,IAAI,CAAC,yBAAyB;;;;4BAA9B,IAAI,CAAC,yBAAyB;;;;;gCAA9B,IAAI,CAAC,yBAAyB;;;;4BAA9B,IAAI,CAAC,yBAAyB;;;CAGoB,CAAC;AAE9D,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC;IAC7C,iBAAiB,EAAE;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;uBAJnB,MAAM;;;;uBAAN,MAAM;;;;;;;;+BAAN,MAAM;;;;2BAAN,MAAM;;;;;+BAAN,MAAM;;;;2BAAN,MAAM;;;CAImD,CAAC;AAEpE,eAAO,MAAM,gBAAgB;;;EAG3B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAC;AAE5D,MAAM,MAAM,YAAY,GAAG,KAAK,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AACvE,eAAO,MAAM,YAAY,uCAAgC,CAAC;AAC1D,MAAM,MAAM,iBAAiB,GAAG,KAAK,MAAM,EAAE,GAC3C,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AACnC,eAAO,MAAM,iBAAiB,4CAAqC,CAAC;AACpE,MAAM,MAAM,kBAAkB,GAAG,KAAK,MAAM,EAAE,GAC5C,KAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;AACpC,eAAO,MAAM,kBAAkB,6CAAsC,CAAC;AACtE,MAAM,MAAM,MAAM,GAAG,KAAK,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC3D,eAAO,MAAM,MAAM,iCAA0B,CAAC;AAC9C,MAAM,MAAM,aAAa,GAAG,KAAK,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACzE,eAAO,MAAM,aAAa,wCAAiC,CAAC"}
1
+ {"version":3,"file":"Domain.d.ts","sourceRoot":"","sources":["../../src/Domain.ts"],"names":[],"mappings":"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"}
@@ -57,7 +57,7 @@ export declare class BadArgument extends BadArgument_base {
57
57
  * @since 1.0.0
58
58
  * @category Model
59
59
  */
60
- export declare const SystemErrorReason: Schema.Literal<["DynamicImport", "ReadContract", "InvalidData", "SimulateCalls"]>;
60
+ export declare const SystemErrorReason: Schema.Literal<["DynamicImport", "ReadContract", "InvalidData", "SimulateCalls", "Crypto"]>;
61
61
  /**
62
62
  * @since 1.0.0
63
63
  * @category Model
@@ -66,7 +66,7 @@ export type SystemErrorReason = typeof SystemErrorReason.Type;
66
66
  declare const SystemError_base: Schema.TaggedErrorClass<SystemError, "SystemError", {
67
67
  readonly _tag: Schema.tag<"SystemError">;
68
68
  } & {
69
- reason: Schema.Literal<["DynamicImport", "ReadContract", "InvalidData", "SimulateCalls"]>;
69
+ reason: Schema.Literal<["DynamicImport", "ReadContract", "InvalidData", "SimulateCalls", "Crypto"]>;
70
70
  module: Schema.Literal<["EvmWalletClient", "EvmPublicClient", "PaymentClient", "Prover", "Attestor", "IbcCoreRegistry"]>;
71
71
  method: typeof Schema.String;
72
72
  description: Schema.optional<typeof Schema.String>;
@@ -1 +1 @@
1
- {"version":3,"file":"Error.d.ts","sourceRoot":"","sources":["../../src/Error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAgD,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,QACX,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,CAAC,MAAM,SAAS,MAAM,EAC3B,KAAK,CAAC,GAAG,SAAS,MAAM,EAExB,QAAQ,MAAM,EACd,KAAK,GAAG,KACP,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KACd,KAAK,CAAC,cAAc,GACvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;CAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAO9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,kHAclB,CAAC;;;;;;;;;AAEF;;;GAGG;AACH,qBAAa,WAAY,SAAQ,gBAO/B;IACA;;OAEG;IACH,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAU;IAE1C;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,mFAc7B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAC;;;;;;;;;;;;AAE9D;;;GAGG;AACH,qBAAa,WAAY,SAAQ,gBAU/B;IACA;;OAEG;IACH,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAU;IAE1C;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAIpB;CACF;AAED;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,WAAW,EAAE,OAAO,WAAW,CAAC,CACpC,CAAC"}
1
+ {"version":3,"file":"Error.d.ts","sourceRoot":"","sources":["../../src/Error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAgD,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,QACX,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,CAAC,MAAM,SAAS,MAAM,EAC3B,KAAK,CAAC,GAAG,SAAS,MAAM,EAExB,QAAQ,MAAM,EACd,KAAK,GAAG,KACP,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KACd,KAAK,CAAC,cAAc,GACvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;CAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAO9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,kHAclB,CAAC;;;;;;;;;AAEF;;;GAGG;AACH,qBAAa,WAAY,SAAQ,gBAO/B;IACA;;OAEG;IACH,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAU;IAE1C;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,6FAe7B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAC;;;;;;;;;;;;AAE9D;;;GAGG;AACH,qBAAa,WAAY,SAAQ,gBAU/B;IACA;;OAEG;IACH,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAU;IAE1C;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAIpB;CACF;AAED;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,WAAW,EAAE,OAAO,WAAW,CAAC,CACpC,CAAC"}
@@ -2,26 +2,26 @@ import * as Context from "effect/Context";
2
2
  import * as Effect from "effect/Effect";
3
3
  import * as Layer from "effect/Layer";
4
4
  import type * as Viem from "viem";
5
- import type { TxHash } from "./Domain.js";
6
- import * as Error from "./Error.js";
5
+ import type * as Domain from "./Domain.js";
6
+ import type * as Error from "./Error.js";
7
7
  import * as Client from "./PublicClient.js";
8
8
  /**
9
+ * @since 0.0.0
9
10
  * @category type ids
10
- * @since 1.0.0
11
11
  */
12
- export declare const TypeId: TypeId;
12
+ export declare const TypeId: unique symbol;
13
13
  /**
14
+ * @since 0.0.0
14
15
  * @category type ids
15
- * @since 1.0.0
16
16
  */
17
- export type TypeId = "@unionlabs/payments/EvmPublicClient";
17
+ export type TypeId = typeof TypeId;
18
18
  /**
19
19
  * @category models
20
20
  * @since 1.0.0
21
21
  */
22
22
  export interface EvmPublicClient extends Client.PublicClient {
23
23
  readonly [TypeId]: TypeId;
24
- readonly waitForTransactionReceipt: (hash: TxHash) => Effect.Effect<Viem.TransactionReceipt, Error.SdkError, never>;
24
+ readonly waitForTransactionReceipt: (hash: Domain.TxHash) => Effect.Effect<Viem.TransactionReceipt, Error.SdkError, never>;
25
25
  readonly simulateCalls: (params: {
26
26
  calls: Array<{
27
27
  to: `0x${string}`;
@@ -41,18 +41,6 @@ export declare const EvmPublicClient: Context.Tag<EvmPublicClient, EvmPublicClie
41
41
  * @since 1.0.0
42
42
  */
43
43
  export type EvmPublicClientConfig = {};
44
- /**
45
- * A type-safe wrapper around viem's writeContract that handles error cases
46
- * and returns an Effect with proper type inference. Extracts all error info
47
- *
48
- * @param client - The viem PublicClient to use for the contract transaction
49
- * @param params - The parameters for the contract transaction
50
- * @returns An Effect that resolves to the transaction hash
51
- *
52
- * @category utils
53
- * @since 0.0.0
54
- */
55
- export declare const makeViem: (client: Viem.PublicClient) => Effect.Effect<EvmPublicClient, Error.SdkError, never>;
56
44
  /**
57
45
  * @category layers
58
46
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"EvmPublicClient.d.ts","sourceRoot":"","sources":["../../src/EvmPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAE1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAIlC,OAAO,KAAK,EAGV,MAAM,EACP,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAG5C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAA8C,CAAC;AAEpE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,qCAAqC,CAAC;AAE3D;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,MAAM,CAAC,YAAY;IAC1D,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,yBAAyB,EAAE,CAClC,IAAI,EAAE,MAAM,KACT,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEnE,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE;QAC/B,KAAK,EAAE,KAAK,CAAC;YACX,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;YAClB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SAC5B,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;KACzB,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACjD;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,+CAE3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAgBvC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,QAAQ,GACnB,QAAQ,IAAI,CAAC,YAAY,KACxB,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAubnD,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,QAAQ,IAAI,CAAC,YAAY,KACxB,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAOjE,CAAC"}
1
+ {"version":3,"file":"EvmPublicClient.d.ts","sourceRoot":"","sources":["../../src/EvmPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAC;AAEzC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAwB,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,MAAM,CAAC,YAAY;IAC1D,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,yBAAyB,EAAE,CAClC,IAAI,EAAE,MAAM,CAAC,MAAM,KAChB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEnE,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE;QAC/B,KAAK,EAAE,KAAK,CAAC;YACX,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;YAClB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SAC5B,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;KACzB,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACjD;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,+CAE3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEvC;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,QAAQ,IAAI,CAAC,YAAY,KACxB,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAOjE,CAAC"}
@@ -2,32 +2,28 @@ import * as Context from "effect/Context";
2
2
  import * as Effect from "effect/Effect";
3
3
  import * as Layer from "effect/Layer";
4
4
  import type * as P from "effect/Predicate";
5
- import type * as Scope from "effect/Scope";
6
5
  import type * as Mipd from "mipd";
7
6
  import type * as Viem from "viem";
8
- import * as Error from "./Error.js";
7
+ import type * as Domain from "./Domain.js";
8
+ import type * as Error from "./Error.js";
9
9
  import * as Client from "./WalletClient.js";
10
10
  /**
11
+ * @since 0.0.0
11
12
  * @category type ids
12
- * @since 1.0.0
13
13
  */
14
- export declare const TypeId: TypeId;
14
+ export declare const TypeId: unique symbol;
15
15
  /**
16
+ * @since 0.0.0
16
17
  * @category type ids
17
- * @since 1.0.0
18
18
  */
19
- export type TypeId = "@unionlabs/payments/EvmWalletClient";
19
+ export type TypeId = typeof TypeId;
20
20
  /**
21
21
  * @category models
22
22
  * @since 1.0.0
23
23
  */
24
24
  export interface EvmWalletClient extends Client.WalletClient {
25
25
  readonly [TypeId]: TypeId;
26
- readonly prepareBatchTransactionRequest: (calls: Array<{
27
- to: `0x${string}`;
28
- data: `0x${string}`;
29
- value?: bigint;
30
- }>) => Effect.Effect<Array<any>, Error.SdkError, never>;
26
+ readonly prepareBatchTransactionRequest: (requests: ReadonlyArray<Domain.PreparedRequest>) => Effect.Effect<ReadonlyArray<Viem.PrepareTransactionRequestReturnType>, Error.SdkError, never>;
31
27
  }
32
28
  /**
33
29
  * @category tags
@@ -39,18 +35,6 @@ export declare const EvmWalletClient: Context.Tag<EvmWalletClient, EvmWalletClie
39
35
  * @since 1.0.0
40
36
  */
41
37
  export type EvmWalletClientConfig = {};
42
- /**
43
- * A type-safe wrapper around viem's writeContract that handles error cases
44
- * and returns an Effect with proper type inference. Extracts all error info
45
- *
46
- * @param client - The viem WalletClient to use for the contract transaction
47
- * @param params - The parameters for the contract transaction
48
- * @returns An Effect that resolves to the transaction hash
49
- *
50
- * @category utils
51
- * @since 0.0.0
52
- */
53
- export declare const makeViem: <transport extends Viem.Transport = Viem.Transport, chain extends Viem.Chain | undefined = Viem.Chain | undefined, account extends Viem.Account | undefined = Viem.Account | undefined, rpcSchema extends Viem.RpcSchema | undefined = undefined>(wallet: Viem.WalletClient<transport, chain, account, rpcSchema>) => Effect.Effect<EvmWalletClient, Error.SdkError, Scope.Scope>;
54
38
  /**
55
39
  * @category layers
56
40
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"EvmWalletClient.d.ts","sourceRoot":"","sources":["../../src/EvmWalletClient.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,KAAK,CAAC,MAAM,kBAAkB,CAAC;AAE3C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAKlC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAEpC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAA8C,CAAC;AAEpE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,qCAAqC,CAAC;AAE3D;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,MAAM,CAAC,YAAY;IAC1D,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,8BAA8B,EAAE,CACvC,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;QAClB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,KACC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACvD;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,+CAE3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEvC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,QAAQ,GACnB,SAAS,SAAS,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EACjD,KAAK,SAAS,IAAI,CAAC,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,GAAG,SAAS,EAC7D,OAAO,SAAS,IAAI,CAAC,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,SAAS,EACnE,SAAS,SAAS,IAAI,CAAC,SAAS,GAAG,SAAS,GAAG,SAAS,EAExD,QAAQ,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,KAC9D,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAqyBzD,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,QAAQ,IAAI,CAAC,YAAY,KACxB,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAOjE,CAAC;AA6HJ;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS;IACxC,iBAAiB,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC3D,gBAAgB,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;CAC9C,KAAG,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAC3B,CAAC"}
1
+ {"version":3,"file":"EvmWalletClient.d.ts","sourceRoot":"","sources":["../../src/EvmWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,CAAC,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAC;AAEzC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAwB,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,MAAM,CAAC,YAAY;IAC1D,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,8BAA8B,EAAE,CACvC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,KAC5C,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,IAAI,CAAC,mCAAmC,CAAC,EACvD,KAAK,CAAC,QAAQ,EACd,KAAK,CACN,CAAC;CACH;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,+CAE3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEvC;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,QAAQ,IAAI,CAAC,YAAY,KACxB,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAOjE,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS;IACxC,iBAAiB,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC3D,gBAAgB,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;CAC9C,KAAG,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAOlE,CAAC"}
@@ -3,9 +3,9 @@
3
3
  * - for redemptions you need wallet on dest chain
4
4
  */
5
5
  import { Effect } from "effect";
6
+ import * as Layer from "effect/Layer";
6
7
  import { type Address } from "viem";
7
- import * as Attestor from "./Attestor.js";
8
- import type { Erc20Address } from "./Domain.js";
8
+ import type * as Attestor from "./Attestor.js";
9
9
  import * as Domain from "./Domain.js";
10
10
  import * as Error from "./Error.js";
11
11
  import * as Prover from "./Prover.js";
@@ -17,15 +17,11 @@ import * as WalletClient from "./WalletClient.js";
17
17
  * @public
18
18
  */
19
19
  export interface DepositOptions {
20
- /** The 32-byte secret payment key as a hex string */
21
- readonly paymentKey: PS.Hex;
22
- /** Array of 0-4 beneficiary addresses*/
23
- readonly beneficiaries: ReadonlyArray<Address>;
20
+ readonly depositAddress: DepositAddress;
24
21
  /** Amount to deposit (in underlying token's smallest unit) */
25
22
  readonly amount: bigint;
26
- readonly destinationChainId: bigint;
27
- readonly sourceChainId: bigint;
28
23
  readonly srcErc20Address: Domain.Erc20Address;
24
+ readonly destinationChainId: Domain.UniversalChainId;
29
25
  }
30
26
  /**
31
27
  * @public
@@ -46,8 +42,29 @@ export interface RedeemOptions {
46
42
  /** Auto unwrap */
47
43
  unwrap?: boolean | undefined;
48
44
  }
49
- export declare const getDepositAddress: (secret: `0x${string}`, beneficiaries: readonly `0x${string}`[], destinationChainId: bigint) => Effect.Effect<Domain.ZAssetAddress, Error.SystemError, never>;
50
- export declare const getNullifier: (secret: `0x${string}`, destinationChainId: bigint) => Effect.Effect<bigint, Error.SystemError, never>;
45
+ export interface DepositAddress {
46
+ readonly beneficiaries: [
47
+ Domain.Erc20Address,
48
+ Domain.Erc20Address,
49
+ Domain.Erc20Address,
50
+ Domain.Erc20Address
51
+ ];
52
+ readonly zAssetAddress: Domain.ZAssetAddress;
53
+ readonly destinationChainId: Domain.UniversalChainId;
54
+ }
55
+ export declare const getDepositAddress: (options: {
56
+ paymentKey: Domain.PaymentKey;
57
+ beneficiaries: ReadonlyArray<Domain.Erc20Address>;
58
+ destinationChainId: Domain.UniversalChainId;
59
+ }) => Effect.Effect<{
60
+ beneficiaries: [Domain.Erc20Address, Domain.Erc20Address, Domain.Erc20Address, Domain.Erc20Address];
61
+ zAssetAddress: Domain.ZAssetAddress;
62
+ destinationChainId: string & import("effect/Brand").Brand<"UniversalChainId">;
63
+ }, Error.SdkError, never>;
64
+ export declare const getNullifier: (options: {
65
+ paymentKey: Domain.PaymentKey;
66
+ destinationChainId: Domain.UniversalChainId;
67
+ }) => Effect.Effect<Domain.Nullifier, Error.SdkError, never>;
51
68
  /**
52
69
  * Deterministically shuffle light clients using the secret as seed.
53
70
  * Same secret always produces the same ordering for privacy.
@@ -55,74 +72,58 @@ export declare const getNullifier: (secret: `0x${string}`, destinationChainId: b
55
72
  */
56
73
  export declare function deterministicShuffleClients(clients: LightClientData[], secret: PS.Hex): LightClientData[];
57
74
  export declare const computeStorageSlot: (address: `0x${string}`, mappingSlot: bigint) => Effect.Effect<`0x${string}`, never, never>;
58
- export declare const generateProof: (options: {
59
- secret: PS.Hex;
60
- beneficiaries: Address[];
61
- beneficiary: Address;
62
- amount: bigint;
63
- clientIds: number[];
64
- selectedClientId: number;
65
- srcChainId: bigint;
66
- dstChainId: bigint;
67
- srcErc20Address: Erc20Address;
68
- dstErc20Address: Erc20Address;
69
- }) => Effect.Effect<{
70
- readonly proof: {
71
- readonly proof: readonly [string, string, string, string, string, string, string, string];
72
- readonly commitments: readonly [string, string];
73
- readonly commitmentPok: readonly [string, string];
74
- readonly publicInputs: readonly string[];
75
- };
76
- readonly metadata: {
77
- readonly depositAddress: Domain.ZAssetAddress;
78
- readonly beneficiary: `0x${string}`;
79
- readonly value: bigint;
80
- readonly lightClients: LightClientData[];
81
- readonly nullifier: bigint;
82
- };
83
- }, Error.SdkError | {
84
- proof: {
85
- success: boolean;
86
- error: string;
75
+ export interface Proof {
76
+ proof: Prover.Proof;
77
+ metadata: {
78
+ depositAddress: Domain.ZAssetAddress;
79
+ beneficiary: Domain.Erc20Address;
80
+ value: bigint;
81
+ lightClients: LightClientData[];
82
+ nullifier: Domain.Nullifier;
87
83
  };
88
- }, PublicClient.PublicClient | PublicClient.SourcePublicClient | PublicClient.DestinationPublicClient | Prover.Prover>;
89
- export declare const prepareRedemption: (options: {
90
- /** The 32-byte secret payment key as a hex string */
91
- paymentKey: PS.Hex;
92
- /** Array of 0-4 beneficiary addresses */
93
- beneficiaries: Address[];
94
- /** The beneficiary address to redeem to */
95
- beneficiary: Address;
96
- /** Amount to redeem */
84
+ }
85
+ export declare const generateProof: (options: {
86
+ paymentKey: Domain.PaymentKey;
87
+ beneficiary: Domain.Erc20Address;
97
88
  amount: bigint;
98
- /** Light client IDs to include in the proof (for anonymity set) */
99
89
  clientIds: number[];
100
- /** The specific light client ID to use for the proof */
101
90
  selectedClientId: number;
102
- srcChainId: bigint;
103
- dstChainId: bigint;
91
+ nullifier: Domain.Nullifier;
92
+ depositAddress: DepositAddress;
93
+ srcChainId: Domain.UniversalChainId;
104
94
  srcErc20Address: Domain.Erc20Address;
105
95
  dstErc20Address: Domain.Erc20Address;
106
- /** Auto unwrap */
107
- unwrap?: boolean | undefined;
108
- }) => Effect.Effect<{
109
- readonly _tag: "viem";
110
- readonly kind: Domain.RequestKind;
111
- readonly request: import("viem").PrepareTransactionRequestReturnType;
112
- }, Error.SdkError | {
113
- proof: {
114
- success: boolean;
115
- error: string;
116
- };
117
- }, Attestor.Attestor | PublicClient.PublicClient | PublicClient.SourcePublicClient | PublicClient.DestinationPublicClient | WalletClient.DestinationWalletClient | Prover.Prover>;
118
- export declare const generateKey: Effect.Effect<`0x${string}`, never, never>;
96
+ }) => Effect.Effect<Proof, Error.SdkError, PublicClient.SourcePublicClient | PublicClient.DestinationPublicClient | PublicClient.PublicClient | Prover.Prover>;
97
+ export declare const prepareRedemption: (options: {
98
+ universalChainId: Domain.UniversalChainId;
99
+ dstErc20Address: Domain.Erc20Address;
100
+ attestation: Attestor.Attestation;
101
+ proof: Proof;
102
+ }) => Effect.Effect<Domain.PreparedRequest, Error.SdkError, WalletClient.DestinationWalletClient>;
103
+ export declare const generateKey: Effect.Effect<Domain.PaymentKey, Error.SdkError>;
119
104
  export declare const prepareDeposit: (options: DepositOptions) => Effect.Effect<readonly [{
120
- readonly _tag: "viem";
121
- readonly kind: Domain.RequestKind;
122
- readonly request: import("viem").PrepareTransactionRequestReturnType;
105
+ readonly _tag: "PreparedEvm";
106
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
107
+ readonly universalChainId: Domain.UniversalChainId;
108
+ readonly contractAddress: Domain.Erc20Address;
109
+ readonly abi: import("viem").Abi;
110
+ readonly functionName: string;
111
+ readonly args: ReadonlyArray<unknown>;
123
112
  }, ...{
124
- readonly _tag: "viem";
125
- readonly kind: Domain.RequestKind;
126
- readonly request: import("viem").PrepareTransactionRequestReturnType;
113
+ readonly _tag: "PreparedEvm";
114
+ readonly kind: "Erc20.Approve" | "Erc20.Wrap" | "ZAsset.Transfer" | "LoopbackClient.Update";
115
+ readonly universalChainId: Domain.UniversalChainId;
116
+ readonly contractAddress: Domain.Erc20Address;
117
+ readonly abi: import("viem").Abi;
118
+ readonly functionName: string;
119
+ readonly args: ReadonlyArray<unknown>;
127
120
  }[]], Error.SdkError, WalletClient.SourceWalletClient>;
121
+ /**
122
+ * @category layers
123
+ * @since 1.0.0
124
+ */
125
+ export declare const layerSingleChain: <E1, E2, R1 = never, R2 = never>(options: {
126
+ walletClient: Layer.Layer<WalletClient.WalletClient, E1, R1>;
127
+ publicClient: Layer.Layer<PublicClient.PublicClient, E2, R2>;
128
+ }) => Layer.Layer<WalletClient.SourceWalletClient | WalletClient.DestinationWalletClient | WalletClient.WalletClient | PublicClient.SourcePublicClient | PublicClient.DestinationPublicClient | PublicClient.PublicClient, E1 | E2 | Error.SdkError, R1 | R2>;
128
129
  //# sourceMappingURL=Payment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Payment.d.ts","sourceRoot":"","sources":["../../src/Payment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAC;AAEtC,OAAO,EACL,KAAK,OAAO,EAQb,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAG1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAMlD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC;IAC5B,wCAAwC;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/C,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,YAAY,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qDAAqD;IACrD,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC;IACnB,yCAAyC;IACzC,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,2CAA2C;IAC3C,WAAW,EAAE,OAAO,CAAC;IACrB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,wDAAwD;IACxD,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB;IAClB,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,eAAO,MAAM,iBAAiB,+JAgB7B,CAAC;AAuBF,eAAO,MAAM,YAAY,wGAYxB,CAAC;AACF;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,EAAE,EAC1B,MAAM,EAAE,EAAE,CAAC,GAAG,GACb,eAAe,EAAE,CA8BnB;AAED,eAAO,MAAM,kBAAkB,6FAW7B,CAAC;AAoCH,eAAO,MAAM,aAAa;YAChB,EAAE,CAAC,GAAG;mBACC,OAAO,EAAE;iBACX,OAAO;YACZ,MAAM;eACH,MAAM,EAAE;sBACD,MAAM;gBACZ,MAAM;gBACN,MAAM;qBACD,YAAY;qBACZ,YAAY;;;;;;;;;;;;;;;;;;;;sHA4J7B,CAAC;AAqCH,eAAO,MAAM,iBAAiB;IAC5B,qDAAqD;gBACzC,EAAE,CAAC,GAAG;IAClB,yCAAyC;mBAC1B,OAAO,EAAE;IACxB,2CAA2C;iBAC9B,OAAO;IACpB,uBAAuB;YACf,MAAM;IACd,mEAAmE;eACxD,MAAM,EAAE;IACnB,wDAAwD;sBACtC,MAAM;gBACZ,MAAM;gBACN,MAAM;qBACD,MAAM,CAAC,YAAY;qBACnB,MAAM,CAAC,YAAY;IACpC,kBAAkB;aACT,OAAO,GAAG,SAAS;;;;;;;;;;iLAqD5B,CAAC;AAEH,eAAO,MAAM,WAAW,4CAiBtB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;sDAmB1B,CAAC"}
1
+ {"version":3,"file":"Payment.d.ts","sourceRoot":"","sources":["../../src/Payment.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,12 @@ import type * as Domain from "./Domain.js";
6
6
  import * as Error from "./Error.js";
7
7
  import * as GenProver from "./gen/prover_pb.js";
8
8
  import type { LightClientData, MptProofData } from "./types.js";
9
+ export declare const Options: S.Struct<{
10
+ proverUrl: S.optionalWith<S.Union<[typeof S.URLFromSelf, typeof S.URL]>, {
11
+ default: () => URL;
12
+ }>;
13
+ }>;
14
+ export type Options = typeof Options.Type;
9
15
  /**
10
16
  * Result from the prover server after proof generation.
11
17
  * @public