@nucypher/taco 0.7.0-alpha.2 → 0.7.0-dev.viem

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 (297) hide show
  1. package/README.md +149 -0
  2. package/dist/cjs/access-client/client.d.ts +237 -0
  3. package/dist/cjs/access-client/client.js +196 -0
  4. package/dist/cjs/access-client/client.js.map +1 -0
  5. package/dist/cjs/access-client/config-validator.d.ts +92 -0
  6. package/dist/cjs/access-client/config-validator.js +204 -0
  7. package/dist/cjs/access-client/config-validator.js.map +1 -0
  8. package/dist/cjs/access-client/config.d.ts +50 -0
  9. package/dist/cjs/access-client/config.js +27 -0
  10. package/dist/cjs/access-client/config.js.map +1 -0
  11. package/dist/cjs/access-client/index.d.ts +2 -0
  12. package/dist/cjs/access-client/index.js +19 -0
  13. package/dist/cjs/access-client/index.js.map +1 -0
  14. package/dist/cjs/conditions/base/contract.d.ts +4 -4
  15. package/dist/cjs/conditions/base/contract.js +8 -8
  16. package/dist/cjs/conditions/base/contract.js.map +1 -1
  17. package/dist/cjs/conditions/base/index.d.ts +6 -9
  18. package/dist/cjs/conditions/base/index.js +7 -10
  19. package/dist/cjs/conditions/base/index.js.map +1 -1
  20. package/dist/cjs/conditions/base/json-api.d.ts +4 -4
  21. package/dist/cjs/conditions/base/json-api.js +8 -8
  22. package/dist/cjs/conditions/base/json-api.js.map +1 -1
  23. package/dist/cjs/conditions/base/json-rpc.d.ts +4 -4
  24. package/dist/cjs/conditions/base/json-rpc.js +8 -8
  25. package/dist/cjs/conditions/base/json-rpc.js.map +1 -1
  26. package/dist/cjs/conditions/base/jwt.d.ts +4 -4
  27. package/dist/cjs/conditions/base/jwt.js +9 -9
  28. package/dist/cjs/conditions/base/jwt.js.map +1 -1
  29. package/dist/cjs/conditions/base/rpc.d.ts +4 -4
  30. package/dist/cjs/conditions/base/rpc.js +8 -8
  31. package/dist/cjs/conditions/base/rpc.js.map +1 -1
  32. package/dist/cjs/conditions/base/time.d.ts +4 -4
  33. package/dist/cjs/conditions/base/time.js +9 -9
  34. package/dist/cjs/conditions/base/time.js.map +1 -1
  35. package/dist/cjs/conditions/compound-condition.d.ts +4 -4
  36. package/dist/cjs/conditions/compound-condition.js +9 -9
  37. package/dist/cjs/conditions/compound-condition.js.map +1 -1
  38. package/dist/cjs/conditions/condition-expr.d.ts +1 -1
  39. package/dist/cjs/conditions/condition-expr.js +7 -7
  40. package/dist/cjs/conditions/condition-expr.js.map +1 -1
  41. package/dist/cjs/conditions/condition-factory.d.ts +1 -1
  42. package/dist/cjs/conditions/condition-factory.js +27 -38
  43. package/dist/cjs/conditions/condition-factory.js.map +1 -1
  44. package/dist/cjs/conditions/condition.d.ts +1 -1
  45. package/dist/cjs/conditions/condition.js +6 -6
  46. package/dist/cjs/conditions/condition.js.map +1 -1
  47. package/dist/cjs/conditions/context/context.d.ts +2 -6
  48. package/dist/cjs/conditions/context/context.js +16 -41
  49. package/dist/cjs/conditions/context/context.js.map +1 -1
  50. package/dist/cjs/conditions/context/index.d.ts +1 -1
  51. package/dist/cjs/conditions/context/index.js +2 -2
  52. package/dist/cjs/conditions/context/index.js.map +1 -1
  53. package/dist/cjs/conditions/if-then-else-condition.d.ts +4 -4
  54. package/dist/cjs/conditions/if-then-else-condition.js +8 -8
  55. package/dist/cjs/conditions/if-then-else-condition.js.map +1 -1
  56. package/dist/cjs/conditions/index.d.ts +9 -9
  57. package/dist/cjs/conditions/index.js +10 -10
  58. package/dist/cjs/conditions/index.js.map +1 -1
  59. package/dist/cjs/conditions/multi-condition.d.ts +1 -1
  60. package/dist/cjs/conditions/multi-condition.js +8 -8
  61. package/dist/cjs/conditions/multi-condition.js.map +1 -1
  62. package/dist/cjs/conditions/predefined/erc20.d.ts +1 -1
  63. package/dist/cjs/conditions/predefined/erc20.js +3 -3
  64. package/dist/cjs/conditions/predefined/erc20.js.map +1 -1
  65. package/dist/cjs/conditions/predefined/erc721.d.ts +1 -1
  66. package/dist/cjs/conditions/predefined/erc721.js +5 -5
  67. package/dist/cjs/conditions/predefined/erc721.js.map +1 -1
  68. package/dist/cjs/conditions/predefined/index.d.ts +2 -2
  69. package/dist/cjs/conditions/predefined/index.js +2 -2
  70. package/dist/cjs/conditions/predefined/index.js.map +1 -1
  71. package/dist/cjs/conditions/schemas/common.d.ts +0 -2
  72. package/dist/cjs/conditions/schemas/common.js +8 -25
  73. package/dist/cjs/conditions/schemas/common.js.map +1 -1
  74. package/dist/cjs/conditions/schemas/compound.js +6 -6
  75. package/dist/cjs/conditions/schemas/compound.js.map +1 -1
  76. package/dist/cjs/conditions/schemas/context.js +5 -5
  77. package/dist/cjs/conditions/schemas/context.js.map +1 -1
  78. package/dist/cjs/conditions/schemas/contract.d.ts +30 -33
  79. package/dist/cjs/conditions/schemas/contract.js +4 -4
  80. package/dist/cjs/conditions/schemas/contract.js.map +1 -1
  81. package/dist/cjs/conditions/schemas/export-for-zod-doc-gen.d.ts +13 -16
  82. package/dist/cjs/conditions/schemas/export-for-zod-doc-gen.js +13 -17
  83. package/dist/cjs/conditions/schemas/export-for-zod-doc-gen.js.map +1 -1
  84. package/dist/cjs/conditions/schemas/if-then-else.js +10 -10
  85. package/dist/cjs/conditions/schemas/if-then-else.js.map +1 -1
  86. package/dist/cjs/conditions/schemas/json-api.d.ts +14 -47
  87. package/dist/cjs/conditions/schemas/json-api.js +9 -23
  88. package/dist/cjs/conditions/schemas/json-api.js.map +1 -1
  89. package/dist/cjs/conditions/schemas/json-rpc.d.ts +13 -48
  90. package/dist/cjs/conditions/schemas/json-rpc.js +9 -23
  91. package/dist/cjs/conditions/schemas/json-rpc.js.map +1 -1
  92. package/dist/cjs/conditions/schemas/jwt.d.ts +4 -2
  93. package/dist/cjs/conditions/schemas/jwt.js +4 -4
  94. package/dist/cjs/conditions/schemas/jwt.js.map +1 -1
  95. package/dist/cjs/conditions/schemas/return-value-test.d.ts +12 -28
  96. package/dist/cjs/conditions/schemas/return-value-test.js +8 -22
  97. package/dist/cjs/conditions/schemas/return-value-test.js.map +1 -1
  98. package/dist/cjs/conditions/schemas/rpc.d.ts +16 -22
  99. package/dist/cjs/conditions/schemas/rpc.js +8 -8
  100. package/dist/cjs/conditions/schemas/rpc.js.map +1 -1
  101. package/dist/cjs/conditions/schemas/sequential.js +18 -38
  102. package/dist/cjs/conditions/schemas/sequential.js.map +1 -1
  103. package/dist/cjs/conditions/schemas/time.d.ts +10 -18
  104. package/dist/cjs/conditions/schemas/time.js +2 -2
  105. package/dist/cjs/conditions/schemas/time.js.map +1 -1
  106. package/dist/cjs/conditions/schemas/utils.js +18 -25
  107. package/dist/cjs/conditions/schemas/utils.js.map +1 -1
  108. package/dist/cjs/conditions/sequential.d.ts +4 -4
  109. package/dist/cjs/conditions/sequential.js +8 -8
  110. package/dist/cjs/conditions/sequential.js.map +1 -1
  111. package/dist/cjs/conditions/shared.d.ts +2 -2
  112. package/dist/cjs/conditions/shared.js +6 -6
  113. package/dist/cjs/conditions/shared.js.map +1 -1
  114. package/dist/cjs/index.d.ts +3 -3
  115. package/dist/cjs/index.js +8 -9
  116. package/dist/cjs/index.js.map +1 -1
  117. package/dist/cjs/taco.d.ts +82 -43
  118. package/dist/cjs/taco.js +28 -86
  119. package/dist/cjs/taco.js.map +1 -1
  120. package/dist/cjs/tdec.d.ts +2 -2
  121. package/dist/cjs/tdec.js +7 -7
  122. package/dist/cjs/tdec.js.map +1 -1
  123. package/dist/cjs/types.d.ts +0 -1
  124. package/dist/es/access-client/client.d.ts +237 -0
  125. package/dist/es/access-client/client.js +192 -0
  126. package/dist/es/access-client/client.js.map +1 -0
  127. package/dist/es/access-client/config-validator.d.ts +92 -0
  128. package/dist/es/access-client/config-validator.js +200 -0
  129. package/dist/es/access-client/config-validator.js.map +1 -0
  130. package/dist/es/access-client/config.d.ts +50 -0
  131. package/dist/es/access-client/config.js +23 -0
  132. package/dist/es/access-client/config.js.map +1 -0
  133. package/dist/es/access-client/index.d.ts +2 -0
  134. package/dist/es/access-client/index.js +3 -0
  135. package/dist/es/access-client/index.js.map +1 -0
  136. package/dist/es/conditions/base/contract.d.ts +4 -4
  137. package/dist/es/conditions/base/contract.js +3 -3
  138. package/dist/es/conditions/base/contract.js.map +1 -1
  139. package/dist/es/conditions/base/index.d.ts +6 -9
  140. package/dist/es/conditions/base/index.js +6 -9
  141. package/dist/es/conditions/base/index.js.map +1 -1
  142. package/dist/es/conditions/base/json-api.d.ts +4 -4
  143. package/dist/es/conditions/base/json-api.js +3 -3
  144. package/dist/es/conditions/base/json-api.js.map +1 -1
  145. package/dist/es/conditions/base/json-rpc.d.ts +4 -4
  146. package/dist/es/conditions/base/json-rpc.js +3 -3
  147. package/dist/es/conditions/base/json-rpc.js.map +1 -1
  148. package/dist/es/conditions/base/jwt.d.ts +4 -4
  149. package/dist/es/conditions/base/jwt.js +3 -3
  150. package/dist/es/conditions/base/jwt.js.map +1 -1
  151. package/dist/es/conditions/base/rpc.d.ts +4 -4
  152. package/dist/es/conditions/base/rpc.js +3 -3
  153. package/dist/es/conditions/base/rpc.js.map +1 -1
  154. package/dist/es/conditions/base/time.d.ts +4 -4
  155. package/dist/es/conditions/base/time.js +3 -3
  156. package/dist/es/conditions/base/time.js.map +1 -1
  157. package/dist/es/conditions/compound-condition.d.ts +4 -4
  158. package/dist/es/conditions/compound-condition.js +3 -3
  159. package/dist/es/conditions/compound-condition.js.map +1 -1
  160. package/dist/es/conditions/condition-expr.d.ts +1 -1
  161. package/dist/es/conditions/condition-expr.js +2 -2
  162. package/dist/es/conditions/condition-expr.js.map +1 -1
  163. package/dist/es/conditions/condition-factory.d.ts +1 -1
  164. package/dist/es/conditions/condition-factory.js +9 -20
  165. package/dist/es/conditions/condition-factory.js.map +1 -1
  166. package/dist/es/conditions/condition.d.ts +1 -1
  167. package/dist/es/conditions/condition.js +3 -3
  168. package/dist/es/conditions/condition.js.map +1 -1
  169. package/dist/es/conditions/context/context.d.ts +2 -6
  170. package/dist/es/conditions/context/context.js +6 -31
  171. package/dist/es/conditions/context/context.js.map +1 -1
  172. package/dist/es/conditions/context/index.d.ts +1 -1
  173. package/dist/es/conditions/context/index.js +1 -1
  174. package/dist/es/conditions/context/index.js.map +1 -1
  175. package/dist/es/conditions/if-then-else-condition.d.ts +4 -4
  176. package/dist/es/conditions/if-then-else-condition.js +3 -3
  177. package/dist/es/conditions/if-then-else-condition.js.map +1 -1
  178. package/dist/es/conditions/index.d.ts +9 -9
  179. package/dist/es/conditions/index.js +9 -9
  180. package/dist/es/conditions/index.js.map +1 -1
  181. package/dist/es/conditions/multi-condition.d.ts +1 -1
  182. package/dist/es/conditions/multi-condition.js +3 -3
  183. package/dist/es/conditions/multi-condition.js.map +1 -1
  184. package/dist/es/conditions/predefined/erc20.d.ts +1 -1
  185. package/dist/es/conditions/predefined/erc20.js +1 -1
  186. package/dist/es/conditions/predefined/erc20.js.map +1 -1
  187. package/dist/es/conditions/predefined/erc721.d.ts +1 -1
  188. package/dist/es/conditions/predefined/erc721.js +1 -1
  189. package/dist/es/conditions/predefined/erc721.js.map +1 -1
  190. package/dist/es/conditions/predefined/index.d.ts +2 -2
  191. package/dist/es/conditions/predefined/index.js +2 -2
  192. package/dist/es/conditions/predefined/index.js.map +1 -1
  193. package/dist/es/conditions/schemas/common.d.ts +0 -2
  194. package/dist/es/conditions/schemas/common.js +3 -20
  195. package/dist/es/conditions/schemas/common.js.map +1 -1
  196. package/dist/es/conditions/schemas/compound.js +3 -3
  197. package/dist/es/conditions/schemas/compound.js.map +1 -1
  198. package/dist/es/conditions/schemas/context.js +2 -2
  199. package/dist/es/conditions/schemas/context.js.map +1 -1
  200. package/dist/es/conditions/schemas/contract.d.ts +30 -33
  201. package/dist/es/conditions/schemas/contract.js +2 -2
  202. package/dist/es/conditions/schemas/contract.js.map +1 -1
  203. package/dist/es/conditions/schemas/export-for-zod-doc-gen.d.ts +13 -16
  204. package/dist/es/conditions/schemas/export-for-zod-doc-gen.js +13 -17
  205. package/dist/es/conditions/schemas/export-for-zod-doc-gen.js.map +1 -1
  206. package/dist/es/conditions/schemas/if-then-else.js +3 -3
  207. package/dist/es/conditions/schemas/if-then-else.js.map +1 -1
  208. package/dist/es/conditions/schemas/json-api.d.ts +14 -47
  209. package/dist/es/conditions/schemas/json-api.js +5 -19
  210. package/dist/es/conditions/schemas/json-api.js.map +1 -1
  211. package/dist/es/conditions/schemas/json-rpc.d.ts +13 -48
  212. package/dist/es/conditions/schemas/json-rpc.js +5 -19
  213. package/dist/es/conditions/schemas/json-rpc.js.map +1 -1
  214. package/dist/es/conditions/schemas/jwt.d.ts +4 -2
  215. package/dist/es/conditions/schemas/jwt.js +2 -2
  216. package/dist/es/conditions/schemas/jwt.js.map +1 -1
  217. package/dist/es/conditions/schemas/return-value-test.d.ts +12 -28
  218. package/dist/es/conditions/schemas/return-value-test.js +6 -20
  219. package/dist/es/conditions/schemas/return-value-test.js.map +1 -1
  220. package/dist/es/conditions/schemas/rpc.d.ts +16 -22
  221. package/dist/es/conditions/schemas/rpc.js +3 -3
  222. package/dist/es/conditions/schemas/rpc.js.map +1 -1
  223. package/dist/es/conditions/schemas/sequential.js +14 -34
  224. package/dist/es/conditions/schemas/sequential.js.map +1 -1
  225. package/dist/es/conditions/schemas/time.d.ts +10 -18
  226. package/dist/es/conditions/schemas/time.js +1 -1
  227. package/dist/es/conditions/schemas/time.js.map +1 -1
  228. package/dist/es/conditions/schemas/utils.js +10 -17
  229. package/dist/es/conditions/schemas/utils.js.map +1 -1
  230. package/dist/es/conditions/sequential.d.ts +4 -4
  231. package/dist/es/conditions/sequential.js +3 -3
  232. package/dist/es/conditions/sequential.js.map +1 -1
  233. package/dist/es/conditions/shared.d.ts +2 -2
  234. package/dist/es/conditions/shared.js +2 -2
  235. package/dist/es/conditions/shared.js.map +1 -1
  236. package/dist/es/index.d.ts +3 -3
  237. package/dist/es/index.js +3 -3
  238. package/dist/es/index.js.map +1 -1
  239. package/dist/es/package.json +3 -0
  240. package/dist/es/taco.d.ts +82 -43
  241. package/dist/es/taco.js +25 -82
  242. package/dist/es/taco.js.map +1 -1
  243. package/dist/es/tdec.d.ts +2 -2
  244. package/dist/es/tdec.js +5 -5
  245. package/dist/es/tdec.js.map +1 -1
  246. package/dist/es/types.d.ts +0 -1
  247. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  248. package/dist/tsconfig.es.tsbuildinfo +1 -1
  249. package/package.json +12 -8
  250. package/dist/cjs/conditions/base/address-allowlist.d.ts +0 -10
  251. package/dist/cjs/conditions/base/address-allowlist.js +0 -19
  252. package/dist/cjs/conditions/base/address-allowlist.js.map +0 -1
  253. package/dist/cjs/conditions/base/ecdsa.d.ts +0 -7
  254. package/dist/cjs/conditions/base/ecdsa.js +0 -21
  255. package/dist/cjs/conditions/base/ecdsa.js.map +0 -1
  256. package/dist/cjs/conditions/base/signing.d.ts +0 -10
  257. package/dist/cjs/conditions/base/signing.js +0 -32
  258. package/dist/cjs/conditions/base/signing.js.map +0 -1
  259. package/dist/cjs/conditions/schemas/address-allowlist.d.ts +0 -16
  260. package/dist/cjs/conditions/schemas/address-allowlist.js +0 -20
  261. package/dist/cjs/conditions/schemas/address-allowlist.js.map +0 -1
  262. package/dist/cjs/conditions/schemas/ecdsa.d.ts +0 -38
  263. package/dist/cjs/conditions/schemas/ecdsa.js +0 -40
  264. package/dist/cjs/conditions/schemas/ecdsa.js.map +0 -1
  265. package/dist/cjs/conditions/schemas/signing.d.ts +0 -12
  266. package/dist/cjs/conditions/schemas/signing.js +0 -204
  267. package/dist/cjs/conditions/schemas/signing.js.map +0 -1
  268. package/dist/cjs/conditions/zod.d.ts +0 -3
  269. package/dist/cjs/conditions/zod.js +0 -19
  270. package/dist/cjs/conditions/zod.js.map +0 -1
  271. package/dist/cjs/sign.d.ts +0 -26
  272. package/dist/cjs/sign.js +0 -99
  273. package/dist/cjs/sign.js.map +0 -1
  274. package/dist/es/conditions/base/address-allowlist.d.ts +0 -10
  275. package/dist/es/conditions/base/address-allowlist.js +0 -15
  276. package/dist/es/conditions/base/address-allowlist.js.map +0 -1
  277. package/dist/es/conditions/base/ecdsa.d.ts +0 -7
  278. package/dist/es/conditions/base/ecdsa.js +0 -12
  279. package/dist/es/conditions/base/ecdsa.js.map +0 -1
  280. package/dist/es/conditions/base/signing.d.ts +0 -10
  281. package/dist/es/conditions/base/signing.js +0 -20
  282. package/dist/es/conditions/base/signing.js.map +0 -1
  283. package/dist/es/conditions/schemas/address-allowlist.d.ts +0 -16
  284. package/dist/es/conditions/schemas/address-allowlist.js +0 -17
  285. package/dist/es/conditions/schemas/address-allowlist.js.map +0 -1
  286. package/dist/es/conditions/schemas/ecdsa.d.ts +0 -38
  287. package/dist/es/conditions/schemas/ecdsa.js +0 -37
  288. package/dist/es/conditions/schemas/ecdsa.js.map +0 -1
  289. package/dist/es/conditions/schemas/signing.d.ts +0 -12
  290. package/dist/es/conditions/schemas/signing.js +0 -201
  291. package/dist/es/conditions/schemas/signing.js.map +0 -1
  292. package/dist/es/conditions/zod.d.ts +0 -3
  293. package/dist/es/conditions/zod.js +0 -17
  294. package/dist/es/conditions/zod.js.map +0 -1
  295. package/dist/es/sign.d.ts +0 -26
  296. package/dist/es/sign.js +0 -95
  297. package/dist/es/sign.js.map +0 -1
@@ -0,0 +1,92 @@
1
+ /**
2
+ * TACo Domain Configuration and Validation
3
+ *
4
+ * This module provides domain configuration management, validation utilities,
5
+ * and configuration processing for TACo operations across different networks.
6
+ */
7
+ import { DomainName, ProviderLike } from '@nucypher/shared';
8
+ import { type AccessClientConfig } from './index.js';
9
+ /**
10
+ * Generic validation result interface
11
+ */
12
+ export interface ValidationResult {
13
+ isValid: boolean;
14
+ errors: string[];
15
+ }
16
+ /**
17
+ * Access Configuration Validator
18
+ *
19
+ * Validates Access client configurations, domains, and provider compatibility.
20
+ * Provides both fast and full validation methods for TACo operations.
21
+ */
22
+ export declare class AccessConfigValidator {
23
+ /**
24
+ * Get all supported TACo domain names
25
+ * @returns {DomainName[]} Array of supported TACo domain names ('lynx', 'tapir', 'mainnet')
26
+ */
27
+ static getSupportedDomains(): DomainName[];
28
+ /**
29
+ * Check if domain is valid
30
+ * @param {DomainName} domain - TACo domain name to check ('lynx', 'tapir', 'mainnet')
31
+ * @returns {boolean} True if domain exists
32
+ */
33
+ static isValidDomain(domain: DomainName): boolean;
34
+ /**
35
+ * Get expected chain ID for domain from DOMAINS configuration
36
+ * @param {DomainName} domain - Domain name to look up
37
+ * @returns {number | undefined} Chain ID for the domain, undefined if not found
38
+ * @private
39
+ */
40
+ private static getExpectedChainId;
41
+ /**
42
+ * Validate ritual ID (basic validation - positive integer or 0)
43
+ * @param {number} ritualId - Ritual ID to validate
44
+ * @returns {boolean} True if valid (positive integer or 0)
45
+ */
46
+ static isValidRitualId(ritualId: number): boolean;
47
+ /**
48
+ * Validate provider compatibility with domain
49
+ * @param {DomainName} domain - Domain name
50
+ * @param {ProviderLike} provider - Provider to validate (ethers Provider or viem PublicClient)
51
+ * @returns {Promise<boolean>} True if provider is valid for domain
52
+ */
53
+ static isValidProvider(domain: DomainName, provider: ProviderLike): Promise<boolean>;
54
+ /**
55
+ * Fast validation (everything except provider network checks)
56
+ *
57
+ * Performs synchronous validation of configuration including:
58
+ * - Domain name validation
59
+ * - Ritual ID validation to ensure it is a positive integer
60
+ * - Provider/signer presence validation
61
+ * - Chain compatibility check (if chain info is available synchronously)
62
+ *
63
+ * @param {TacoClientConfig} config - Configuration to validate
64
+ * @returns {ValidationResult} Validation result with isValid boolean and errors array
65
+ */
66
+ static validateFast(config: AccessClientConfig): ValidationResult;
67
+ /**
68
+ * Synchronous chain compatibility validation
69
+ *
70
+ * Validates provider chain compatibility with domain requirements using
71
+ * synchronously available chain information.
72
+ *
73
+ * @param {TacoClientConfig} config - Configuration to validate
74
+ * @returns {ValidationResult} Validation result
75
+ * @private
76
+ */
77
+ private static validateChainCompatibility;
78
+ /**
79
+ * Full validation including async provider network checks
80
+ *
81
+ * Performs comprehensive validation including:
82
+ * - All fast validation checks
83
+ * - Async network calls to verify provider chain ID matches domain requirements
84
+ *
85
+ * Use this method when you need complete validation including network connectivity checks.
86
+ * For faster validation without network calls, use validateFast().
87
+ *
88
+ * @param {TacoClientConfig} config - Configuration to validate
89
+ * @returns {Promise<ValidationResult>} Promise resolving to validation result with isValid boolean and errors array
90
+ */
91
+ static validate(config: AccessClientConfig): Promise<ValidationResult>;
92
+ }
@@ -0,0 +1,200 @@
1
+ /**
2
+ * TACo Domain Configuration and Validation
3
+ *
4
+ * This module provides domain configuration management, validation utilities,
5
+ * and configuration processing for TACo operations across different networks.
6
+ */
7
+ import { DOMAINS, isViemClient, } from '@nucypher/shared';
8
+ import { isEthersAccessClientConfig, isViemAccessClientConfig, } from './index.js';
9
+ /**
10
+ * Access Configuration Validator
11
+ *
12
+ * Validates Access client configurations, domains, and provider compatibility.
13
+ * Provides both fast and full validation methods for TACo operations.
14
+ */
15
+ export class AccessConfigValidator {
16
+ /**
17
+ * Get all supported TACo domain names
18
+ * @returns {DomainName[]} Array of supported TACo domain names ('lynx', 'tapir', 'mainnet')
19
+ */
20
+ static getSupportedDomains() {
21
+ return Object.values(DOMAINS).map((domain) => domain.domain);
22
+ }
23
+ /**
24
+ * Check if domain is valid
25
+ * @param {DomainName} domain - TACo domain name to check ('lynx', 'tapir', 'mainnet')
26
+ * @returns {boolean} True if domain exists
27
+ */
28
+ static isValidDomain(domain) {
29
+ return !!domain && this.getSupportedDomains().includes(domain);
30
+ }
31
+ /**
32
+ * Get expected chain ID for domain from DOMAINS configuration
33
+ * @param {DomainName} domain - Domain name to look up
34
+ * @returns {number | undefined} Chain ID for the domain, undefined if not found
35
+ * @private
36
+ */
37
+ static getExpectedChainId(domain) {
38
+ const domainEntry = Object.values(DOMAINS).find((domainConfig) => domainConfig.domain === domain);
39
+ return domainEntry?.chainId;
40
+ }
41
+ /**
42
+ * Validate ritual ID (basic validation - positive integer or 0)
43
+ * @param {number} ritualId - Ritual ID to validate
44
+ * @returns {boolean} True if valid (positive integer or 0)
45
+ */
46
+ static isValidRitualId(ritualId) {
47
+ return (typeof ritualId === 'number' &&
48
+ Number.isInteger(ritualId) &&
49
+ ritualId >= 0);
50
+ }
51
+ /**
52
+ * Validate provider compatibility with domain
53
+ * @param {DomainName} domain - Domain name
54
+ * @param {ProviderLike} provider - Provider to validate (ethers Provider or viem PublicClient)
55
+ * @returns {Promise<boolean>} True if provider is valid for domain
56
+ */
57
+ static async isValidProvider(domain, provider) {
58
+ let chainId;
59
+ if (!provider || typeof provider !== 'object') {
60
+ // Invalid provider
61
+ return false;
62
+ }
63
+ // Try to detect provider type and get chain ID safely
64
+ try {
65
+ if (isViemClient(provider)) {
66
+ chainId = await provider.getChainId();
67
+ }
68
+ else {
69
+ const network = await provider.getNetwork();
70
+ chainId = network.chainId;
71
+ }
72
+ }
73
+ catch (error) {
74
+ // Error getting chain ID
75
+ return false;
76
+ }
77
+ // Check if the provider's chain ID matches the domain's expected chain ID
78
+ return (Object.values(DOMAINS).find((domainInfo) => domainInfo.domain === domain && domainInfo.chainId === chainId) !== undefined);
79
+ }
80
+ /**
81
+ * Fast validation (everything except provider network checks)
82
+ *
83
+ * Performs synchronous validation of configuration including:
84
+ * - Domain name validation
85
+ * - Ritual ID validation to ensure it is a positive integer
86
+ * - Provider/signer presence validation
87
+ * - Chain compatibility check (if chain info is available synchronously)
88
+ *
89
+ * @param {TacoClientConfig} config - Configuration to validate
90
+ * @returns {ValidationResult} Validation result with isValid boolean and errors array
91
+ */
92
+ static validateFast(config) {
93
+ const errors = [];
94
+ // Validate domain
95
+ if (!config.domain) {
96
+ errors.push('The property `domain` is required');
97
+ }
98
+ else if (!this.isValidDomain(config.domain)) {
99
+ errors.push(`Invalid domain name: ${config.domain}. Supported domains: ${this.getSupportedDomains().join(', ')}`);
100
+ }
101
+ // Validate ritual ID
102
+ if (!config.ritualId) {
103
+ errors.push('The property `ritualId` is required');
104
+ }
105
+ else if (!this.isValidRitualId(config.ritualId)) {
106
+ errors.push(`Invalid ritual ID: ${config.ritualId} for domain ${config.domain}`);
107
+ }
108
+ // Validate blockchain client configuration
109
+ if (isViemAccessClientConfig(config)) {
110
+ // Viem configuration
111
+ if (!config.viemClient) {
112
+ errors.push('viemClient is required for viem configuration');
113
+ }
114
+ }
115
+ else if (isEthersAccessClientConfig(config)) {
116
+ // Ethers configuration
117
+ if (!config.ethersProvider) {
118
+ errors.push('ethersProvider is required for ethers configuration');
119
+ }
120
+ }
121
+ else {
122
+ errors.push('Configuration must include either viemClient or ethersProvider');
123
+ }
124
+ // Validate chain compatibility (synchronous check)
125
+ const chainValidation = this.validateChainCompatibility(config);
126
+ if (!chainValidation.isValid) {
127
+ errors.push(...chainValidation.errors);
128
+ }
129
+ return { isValid: errors.length === 0, errors };
130
+ }
131
+ /**
132
+ * Synchronous chain compatibility validation
133
+ *
134
+ * Validates provider chain compatibility with domain requirements using
135
+ * synchronously available chain information.
136
+ *
137
+ * @param {TacoClientConfig} config - Configuration to validate
138
+ * @returns {ValidationResult} Validation result
139
+ * @private
140
+ */
141
+ static validateChainCompatibility(config) {
142
+ const errors = [];
143
+ // Get expected chain ID for domain
144
+ const expectedChainId = this.getExpectedChainId(config.domain);
145
+ if (!expectedChainId) {
146
+ errors.push(`Unsupported domain: ${config.domain}`);
147
+ return { isValid: false, errors };
148
+ }
149
+ if (isViemAccessClientConfig(config) && config.viemClient) {
150
+ // Note: If viemClient.chain is undefined, we skip synchronous validation
151
+ // Full validation with validateFull() will perform the network check
152
+ const viemClient = config.viemClient;
153
+ if (viemClient.chain && viemClient.chain.id !== expectedChainId) {
154
+ errors.push(`Provider chain mismatch: viem client chain ID ${viemClient.chain.id} does not match domain '${config.domain}' (expected ${expectedChainId})`);
155
+ }
156
+ } // No need to count for the other cases. The caller methods already handle them.
157
+ return { isValid: errors.length === 0, errors };
158
+ }
159
+ /**
160
+ * Full validation including async provider network checks
161
+ *
162
+ * Performs comprehensive validation including:
163
+ * - All fast validation checks
164
+ * - Async network calls to verify provider chain ID matches domain requirements
165
+ *
166
+ * Use this method when you need complete validation including network connectivity checks.
167
+ * For faster validation without network calls, use validateFast().
168
+ *
169
+ * @param {TacoClientConfig} config - Configuration to validate
170
+ * @returns {Promise<ValidationResult>} Promise resolving to validation result with isValid boolean and errors array
171
+ */
172
+ static async validate(config) {
173
+ // First run fast validation
174
+ const fastResult = this.validateFast(config);
175
+ if (!fastResult.isValid) {
176
+ return fastResult;
177
+ }
178
+ const errors = [];
179
+ // Additional async provider validation
180
+ let provider;
181
+ if (isViemAccessClientConfig(config)) {
182
+ provider = config.viemClient;
183
+ }
184
+ else if (isEthersAccessClientConfig(config)) {
185
+ provider = config.ethersProvider;
186
+ }
187
+ // Validate provider compatibility with domain (if both exist)
188
+ if (provider && config.domain) {
189
+ const isValidProvider = await this.isValidProvider(config.domain, provider);
190
+ if (!isValidProvider) {
191
+ errors.push(`Invalid provider for domain: ${config.domain}. Provider chain ID does not match domain requirements.`);
192
+ }
193
+ }
194
+ return {
195
+ isValid: errors.length === 0,
196
+ errors,
197
+ };
198
+ }
199
+ }
200
+ //# sourceMappingURL=config-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../../src/access-client/config-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * AccessClient configuration types and utilities
3
+ *
4
+ * This module contains all configuration interfaces, type definitions, and utility functions
5
+ * for configuring AccessClient instances with different blockchain client libraries (viem, ethers.js).
6
+ */
7
+ import { DomainName, type PublicClient } from '@nucypher/shared';
8
+ import type { ethers } from 'ethers';
9
+ /**
10
+ * Base configuration for AccessClient
11
+ */
12
+ interface AccessClientBaseConfig {
13
+ /** TACo domain name (e.g., 'lynx', 'tapir', 'mainnet') */
14
+ domain: DomainName;
15
+ /** Ritual ID for the TACo operations */
16
+ ritualId: number;
17
+ /** Optional Porter URIs */
18
+ porterUris?: string[];
19
+ }
20
+ /**
21
+ * Viem configuration for AccessClient
22
+ */
23
+ export interface AccessClientViemConfig extends AccessClientBaseConfig {
24
+ /** Viem PublicClient for blockchain operations */
25
+ viemClient: PublicClient;
26
+ }
27
+ /**
28
+ * Ethers configuration for AccessClient
29
+ */
30
+ export interface AccessClientEthersConfig extends AccessClientBaseConfig {
31
+ /** Ethers Provider for blockchain operations */
32
+ ethersProvider: ethers.providers.Provider;
33
+ }
34
+ /**
35
+ * Union type for AccessClient configuration - supports both viem and ethers.js
36
+ */
37
+ export type AccessClientConfig = AccessClientViemConfig | AccessClientEthersConfig;
38
+ /**
39
+ * Type guard to check if config is viem-based
40
+ * @param config - AccessClient configuration to check
41
+ * @returns true if the configuration is for viem client
42
+ */
43
+ export declare function isViemAccessClientConfig(config: AccessClientConfig): config is AccessClientViemConfig;
44
+ /**
45
+ * Type guard to check if config is ethers-based
46
+ * @param config - AccessClient configuration to check
47
+ * @returns true if the configuration is for ethers client
48
+ */
49
+ export declare function isEthersAccessClientConfig(config: AccessClientConfig): config is AccessClientEthersConfig;
50
+ export {};
@@ -0,0 +1,23 @@
1
+ /**
2
+ * AccessClient configuration types and utilities
3
+ *
4
+ * This module contains all configuration interfaces, type definitions, and utility functions
5
+ * for configuring AccessClient instances with different blockchain client libraries (viem, ethers.js).
6
+ */
7
+ /**
8
+ * Type guard to check if config is viem-based
9
+ * @param config - AccessClient configuration to check
10
+ * @returns true if the configuration is for viem client
11
+ */
12
+ export function isViemAccessClientConfig(config) {
13
+ return 'viemClient' in config;
14
+ }
15
+ /**
16
+ * Type guard to check if config is ethers-based
17
+ * @param config - AccessClient configuration to check
18
+ * @returns true if the configuration is for ethers client
19
+ */
20
+ export function isEthersAccessClientConfig(config) {
21
+ return 'ethersProvider' in config;
22
+ }
23
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/access-client/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAwCH;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAA0B;IAE1B,OAAO,YAAY,IAAI,MAAM,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAA0B;IAE1B,OAAO,gBAAgB,IAAI,MAAM,CAAC;AACpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './client.js';
2
+ export * from './config.js';
@@ -0,0 +1,3 @@
1
+ export * from './client.js';
2
+ export * from './config.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/access-client/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"}
@@ -1,7 +1,7 @@
1
- import { Condition } from '../condition';
2
- import { ContractConditionProps } from '../schemas/contract';
3
- import { OmitConditionType } from '../shared';
4
- export { ContractConditionProps, contractConditionSchema, ContractConditionType, FunctionAbiProps, } from '../schemas/contract';
1
+ import { Condition } from '../condition.js';
2
+ import { ContractConditionProps } from '../schemas/contract.js';
3
+ import { OmitConditionType } from '../shared.js';
4
+ export { ContractConditionProps, contractConditionSchema, ContractConditionType, FunctionAbiProps, } from '../schemas/contract.js';
5
5
  export declare class ContractCondition extends Condition {
6
6
  constructor(value: OmitConditionType<ContractConditionProps>);
7
7
  }
@@ -1,6 +1,6 @@
1
- import { Condition } from '../condition';
2
- import { contractConditionSchema, ContractConditionType, } from '../schemas/contract';
3
- export { contractConditionSchema, ContractConditionType, } from '../schemas/contract';
1
+ import { Condition } from '../condition.js';
2
+ import { contractConditionSchema, ContractConditionType, } from '../schemas/contract.js';
3
+ export { contractConditionSchema, ContractConditionType, } from '../schemas/contract.js';
4
4
  export class ContractCondition extends Condition {
5
5
  constructor(value) {
6
6
  super(contractConditionSchema, {
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../src/conditions/base/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAEL,uBAAuB,EACvB,qBAAqB,GAEtB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,KAAgD;QAC1D,KAAK,CAAC,uBAAuB,EAAE;YAC7B,aAAa,EAAE,qBAAqB;YACpC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../src/conditions/base/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAEL,uBAAuB,EACvB,qBAAqB,GAEtB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,KAAgD;QAC1D,KAAK,CAAC,uBAAuB,EAAE;YAC7B,aAAa,EAAE,qBAAqB;YACpC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,9 +1,6 @@
1
- export * as addressAllowlist from './address-allowlist';
2
- export * as contract from './contract';
3
- export * as ecdsa from './ecdsa';
4
- export * as jsonApi from './json-api';
5
- export * as jsonRpc from './json-rpc';
6
- export * as jwt from './jwt';
7
- export * as rpc from './rpc';
8
- export * as signing from './signing';
9
- export * as time from './time';
1
+ export * as contract from './contract.js';
2
+ export * as jsonApi from './json-api.js';
3
+ export * as jsonRpc from './json-rpc.js';
4
+ export * as jwt from './jwt.js';
5
+ export * as rpc from './rpc.js';
6
+ export * as time from './time.js';
@@ -1,12 +1,9 @@
1
1
  // Exporting classes here instead of their respective schema files to
2
2
  // avoid circular dependency on Condition class.
3
- export * as addressAllowlist from './address-allowlist';
4
- export * as contract from './contract';
5
- export * as ecdsa from './ecdsa';
6
- export * as jsonApi from './json-api';
7
- export * as jsonRpc from './json-rpc';
8
- export * as jwt from './jwt';
9
- export * as rpc from './rpc';
10
- export * as signing from './signing';
11
- export * as time from './time';
3
+ export * as contract from './contract.js';
4
+ export * as jsonApi from './json-api.js';
5
+ export * as jsonRpc from './json-rpc.js';
6
+ export * as jwt from './jwt.js';
7
+ export * as rpc from './rpc.js';
8
+ export * as time from './time.js';
12
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/conditions/base/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,gDAAgD;AAEhD,OAAO,KAAK,gBAAgB,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/conditions/base/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,gDAAgD;AAEhD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC"}
@@ -1,7 +1,7 @@
1
- import { Condition } from '../condition';
2
- import { JsonApiConditionProps } from '../schemas/json-api';
3
- import { OmitConditionType } from '../shared';
4
- export { JsonApiConditionProps, jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api';
1
+ import { Condition } from '../condition.js';
2
+ import { JsonApiConditionProps } from '../schemas/json-api.js';
3
+ import { OmitConditionType } from '../shared.js';
4
+ export { JsonApiConditionProps, jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api.js';
5
5
  export declare class JsonApiCondition extends Condition {
6
6
  constructor(value: OmitConditionType<JsonApiConditionProps>);
7
7
  }
@@ -1,6 +1,6 @@
1
- import { Condition } from '../condition';
2
- import { jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api';
3
- export { jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api';
1
+ import { Condition } from '../condition.js';
2
+ import { jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api.js';
3
+ export { jsonApiConditionSchema, JsonApiConditionType, } from '../schemas/json-api.js';
4
4
  export class JsonApiCondition extends Condition {
5
5
  constructor(value) {
6
6
  super(jsonApiConditionSchema, {
@@ -1 +1 @@
1
- {"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,KAA+C;QACzD,KAAK,CAAC,sBAAsB,EAAE;YAC5B,aAAa,EAAE,oBAAoB;YACnC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,KAA+C;QACzD,KAAK,CAAC,sBAAsB,EAAE;YAC5B,aAAa,EAAE,oBAAoB;YACnC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import { Condition } from '../condition';
2
- import { JsonRpcConditionProps } from '../schemas/json-rpc';
3
- import { OmitConditionType } from '../shared';
4
- export { JsonRpcConditionProps, jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc';
1
+ import { Condition } from '../condition.js';
2
+ import { JsonRpcConditionProps } from '../schemas/json-rpc.js';
3
+ import { OmitConditionType } from '../shared.js';
4
+ export { JsonRpcConditionProps, jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc.js';
5
5
  export declare class JsonRpcCondition extends Condition {
6
6
  constructor(value: OmitConditionType<JsonRpcConditionProps>);
7
7
  }
@@ -1,6 +1,6 @@
1
- import { Condition } from '../condition';
2
- import { jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc';
3
- export { jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc';
1
+ import { Condition } from '../condition.js';
2
+ import { jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc.js';
3
+ export { jsonRpcConditionSchema, JsonRpcConditionType, } from '../schemas/json-rpc.js';
4
4
  export class JsonRpcCondition extends Condition {
5
5
  constructor(value) {
6
6
  super(jsonRpcConditionSchema, {
@@ -1 +1 @@
1
- {"version":3,"file":"json-rpc.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,KAA+C;QACzD,KAAK,CAAC,sBAAsB,EAAE;YAC5B,aAAa,EAAE,oBAAoB;YACnC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"json-rpc.js","sourceRoot":"","sources":["../../../../src/conditions/base/json-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,KAA+C;QACzD,KAAK,CAAC,sBAAsB,EAAE;YAC5B,aAAa,EAAE,oBAAoB;YACnC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import { Condition } from '../condition';
2
- import { JWTConditionProps } from '../schemas/jwt';
3
- import { OmitConditionType } from '../shared';
4
- export { JWT_PARAM_DEFAULT, JWTConditionProps, jwtConditionSchema, JWTConditionType, } from '../schemas/jwt';
1
+ import { Condition } from '../condition.js';
2
+ import { JWTConditionProps } from '../schemas/jwt.js';
3
+ import { OmitConditionType } from '../shared.js';
4
+ export { JWT_PARAM_DEFAULT, JWTConditionProps, jwtConditionSchema, JWTConditionType, } from '../schemas/jwt.js';
5
5
  export declare class JWTCondition extends Condition {
6
6
  constructor(value: OmitConditionType<JWTConditionProps>);
7
7
  }
@@ -1,6 +1,6 @@
1
- import { Condition } from '../condition';
2
- import { jwtConditionSchema, JWTConditionType, } from '../schemas/jwt';
3
- export { JWT_PARAM_DEFAULT, jwtConditionSchema, JWTConditionType, } from '../schemas/jwt';
1
+ import { Condition } from '../condition.js';
2
+ import { jwtConditionSchema, JWTConditionType, } from '../schemas/jwt.js';
3
+ export { JWT_PARAM_DEFAULT, jwtConditionSchema, JWTConditionType, } from '../schemas/jwt.js';
4
4
  export class JWTCondition extends Condition {
5
5
  constructor(value) {
6
6
  super(jwtConditionSchema, {
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../../../src/conditions/base/jwt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,iBAAiB,EAEjB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAExB,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,KAA2C;QACrD,KAAK,CAAC,kBAAkB,EAAE;YACxB,aAAa,EAAE,gBAAgB;YAC/B,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../../../src/conditions/base/jwt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,iBAAiB,EAEjB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,KAA2C;QACrD,KAAK,CAAC,kBAAkB,EAAE;YACxB,aAAa,EAAE,gBAAgB;YAC/B,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import { Condition } from '../condition';
2
- import { RpcConditionProps } from '../schemas/rpc';
3
- import { OmitConditionType } from '../shared';
4
- export { RpcConditionProps, rpcConditionSchema, RpcConditionType, } from '../schemas/rpc';
1
+ import { Condition } from '../condition.js';
2
+ import { RpcConditionProps } from '../schemas/rpc.js';
3
+ import { OmitConditionType } from '../shared.js';
4
+ export { RpcConditionProps, rpcConditionSchema, RpcConditionType, } from '../schemas/rpc.js';
5
5
  export declare class RpcCondition extends Condition {
6
6
  constructor(value: OmitConditionType<RpcConditionProps>);
7
7
  }
@@ -1,6 +1,6 @@
1
- import { Condition } from '../condition';
2
- import { rpcConditionSchema, RpcConditionType, } from '../schemas/rpc';
3
- export { rpcConditionSchema, RpcConditionType, } from '../schemas/rpc';
1
+ import { Condition } from '../condition.js';
2
+ import { rpcConditionSchema, RpcConditionType, } from '../schemas/rpc.js';
3
+ export { rpcConditionSchema, RpcConditionType, } from '../schemas/rpc.js';
4
4
  export class RpcCondition extends Condition {
5
5
  constructor(value) {
6
6
  super(rpcConditionSchema, {
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../../src/conditions/base/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAExB,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,KAA2C;QACrD,KAAK,CAAC,kBAAkB,EAAE;YACxB,aAAa,EAAE,gBAAgB;YAC/B,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../../src/conditions/base/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,KAA2C;QACrD,KAAK,CAAC,kBAAkB,EAAE;YACxB,aAAa,EAAE,gBAAgB;YAC/B,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import { Condition } from '../condition';
2
- import { TimeConditionProps } from '../schemas/time';
3
- import { OmitConditionType } from '../shared';
4
- export { TimeConditionMethod, TimeConditionProps, timeConditionSchema, TimeConditionType, } from '../schemas/time';
1
+ import { Condition } from '../condition.js';
2
+ import { TimeConditionProps } from '../schemas/time.js';
3
+ import { OmitConditionType } from '../shared.js';
4
+ export { TimeConditionMethod, TimeConditionProps, timeConditionSchema, TimeConditionType, } from '../schemas/time.js';
5
5
  export declare class TimeCondition extends Condition {
6
6
  constructor(value: OmitConditionType<TimeConditionProps>);
7
7
  }
@@ -1,6 +1,6 @@
1
- import { Condition } from '../condition';
2
- import { timeConditionSchema, TimeConditionType, } from '../schemas/time';
3
- export { TimeConditionMethod, timeConditionSchema, TimeConditionType, } from '../schemas/time';
1
+ import { Condition } from '../condition.js';
2
+ import { timeConditionSchema, TimeConditionType, } from '../schemas/time.js';
3
+ export { TimeConditionMethod, timeConditionSchema, TimeConditionType, } from '../schemas/time.js';
4
4
  export class TimeCondition extends Condition {
5
5
  constructor(value) {
6
6
  super(timeConditionSchema, {
@@ -1 +1 @@
1
- {"version":3,"file":"time.js","sourceRoot":"","sources":["../../../../src/conditions/base/time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,mBAAmB,EAEnB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,KAA4C;QACtD,KAAK,CAAC,mBAAmB,EAAE;YACzB,aAAa,EAAE,iBAAiB;YAChC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../../../../src/conditions/base/time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,mBAAmB,EAEnB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,KAA4C;QACtD,KAAK,CAAC,mBAAmB,EAAE;YACzB,aAAa,EAAE,iBAAiB;YAChC,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import { Condition, ConditionProps } from './condition';
2
- import { CompoundConditionProps } from './schemas/compound';
3
- import { OmitConditionType } from './shared';
4
- export { CompoundConditionProps, compoundConditionSchema, CompoundConditionType, } from './schemas/compound';
1
+ import { Condition, ConditionProps } from './condition.js';
2
+ import { CompoundConditionProps } from './schemas/compound.js';
3
+ import { OmitConditionType } from './shared.js';
4
+ export { CompoundConditionProps, compoundConditionSchema, CompoundConditionType, } from './schemas/compound.js';
5
5
  export type ConditionOrProps = Condition | ConditionProps;
6
6
  export declare class CompoundCondition extends Condition {
7
7
  constructor(value: OmitConditionType<CompoundConditionProps>);