@lit-protocol/vincent-ability-sdk 0.0.1-ea

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 (209) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/CONTRIBUTING.md +117 -0
  3. package/README.md +213 -0
  4. package/dist/package.json +44 -0
  5. package/dist/src/index.d.ts +15 -0
  6. package/dist/src/index.d.ts.map +1 -0
  7. package/dist/src/index.js +21 -0
  8. package/dist/src/index.js.map +1 -0
  9. package/dist/src/internal.d.ts +12 -0
  10. package/dist/src/internal.d.ts.map +1 -0
  11. package/dist/src/internal.js +32 -0
  12. package/dist/src/internal.js.map +1 -0
  13. package/dist/src/lib/abilityCore/abilityConfig/context/abilityContext.d.ts +28 -0
  14. package/dist/src/lib/abilityCore/abilityConfig/context/abilityContext.d.ts.map +1 -0
  15. package/dist/src/lib/abilityCore/abilityConfig/context/abilityContext.js +51 -0
  16. package/dist/src/lib/abilityCore/abilityConfig/context/abilityContext.js.map +1 -0
  17. package/dist/src/lib/abilityCore/abilityConfig/context/resultCreators.d.ts +18 -0
  18. package/dist/src/lib/abilityCore/abilityConfig/context/resultCreators.d.ts.map +1 -0
  19. package/dist/src/lib/abilityCore/abilityConfig/context/resultCreators.js +48 -0
  20. package/dist/src/lib/abilityCore/abilityConfig/context/resultCreators.js.map +1 -0
  21. package/dist/src/lib/abilityCore/abilityConfig/context/types.d.ts +31 -0
  22. package/dist/src/lib/abilityCore/abilityConfig/context/types.d.ts.map +1 -0
  23. package/dist/src/lib/abilityCore/abilityConfig/context/types.js +9 -0
  24. package/dist/src/lib/abilityCore/abilityConfig/context/types.js.map +1 -0
  25. package/dist/src/lib/abilityCore/abilityConfig/types.d.ts +20 -0
  26. package/dist/src/lib/abilityCore/abilityConfig/types.d.ts.map +1 -0
  27. package/dist/src/lib/abilityCore/abilityConfig/types.js +4 -0
  28. package/dist/src/lib/abilityCore/abilityConfig/types.js.map +1 -0
  29. package/dist/src/lib/abilityCore/bundledAbility/bundledAbility.d.ts +5 -0
  30. package/dist/src/lib/abilityCore/bundledAbility/bundledAbility.d.ts.map +1 -0
  31. package/dist/src/lib/abilityCore/bundledAbility/bundledAbility.js +21 -0
  32. package/dist/src/lib/abilityCore/bundledAbility/bundledAbility.js.map +1 -0
  33. package/dist/src/lib/abilityCore/bundledAbility/types.d.ts +18 -0
  34. package/dist/src/lib/abilityCore/bundledAbility/types.d.ts.map +1 -0
  35. package/dist/src/lib/abilityCore/bundledAbility/types.js +4 -0
  36. package/dist/src/lib/abilityCore/bundledAbility/types.js.map +1 -0
  37. package/dist/src/lib/abilityCore/helpers/getMappedAbilityPolicyParams.d.ts +5 -0
  38. package/dist/src/lib/abilityCore/helpers/getMappedAbilityPolicyParams.d.ts.map +1 -0
  39. package/dist/src/lib/abilityCore/helpers/getMappedAbilityPolicyParams.js +18 -0
  40. package/dist/src/lib/abilityCore/helpers/getMappedAbilityPolicyParams.js.map +1 -0
  41. package/dist/src/lib/abilityCore/helpers/getPkpInfo.d.ts +10 -0
  42. package/dist/src/lib/abilityCore/helpers/getPkpInfo.d.ts.map +1 -0
  43. package/dist/src/lib/abilityCore/helpers/getPkpInfo.js +26 -0
  44. package/dist/src/lib/abilityCore/helpers/getPkpInfo.js.map +1 -0
  45. package/dist/src/lib/abilityCore/helpers/index.d.ts +5 -0
  46. package/dist/src/lib/abilityCore/helpers/index.d.ts.map +1 -0
  47. package/dist/src/lib/abilityCore/helpers/index.js +12 -0
  48. package/dist/src/lib/abilityCore/helpers/index.js.map +1 -0
  49. package/dist/src/lib/abilityCore/helpers/resultCreators.d.ts +21 -0
  50. package/dist/src/lib/abilityCore/helpers/resultCreators.d.ts.map +1 -0
  51. package/dist/src/lib/abilityCore/helpers/resultCreators.js +48 -0
  52. package/dist/src/lib/abilityCore/helpers/resultCreators.js.map +1 -0
  53. package/dist/src/lib/abilityCore/helpers/supportedPoliciesForAbility.d.ts +55 -0
  54. package/dist/src/lib/abilityCore/helpers/supportedPoliciesForAbility.d.ts.map +1 -0
  55. package/dist/src/lib/abilityCore/helpers/supportedPoliciesForAbility.js +68 -0
  56. package/dist/src/lib/abilityCore/helpers/supportedPoliciesForAbility.js.map +1 -0
  57. package/dist/src/lib/abilityCore/helpers/typeGuards.d.ts +8 -0
  58. package/dist/src/lib/abilityCore/helpers/typeGuards.d.ts.map +1 -0
  59. package/dist/src/lib/abilityCore/helpers/typeGuards.js +28 -0
  60. package/dist/src/lib/abilityCore/helpers/typeGuards.js.map +1 -0
  61. package/dist/src/lib/abilityCore/helpers/validatePolicies.d.ts +24 -0
  62. package/dist/src/lib/abilityCore/helpers/validatePolicies.d.ts.map +1 -0
  63. package/dist/src/lib/abilityCore/helpers/validatePolicies.js +31 -0
  64. package/dist/src/lib/abilityCore/helpers/validatePolicies.js.map +1 -0
  65. package/dist/src/lib/abilityCore/helpers/zod.d.ts +43 -0
  66. package/dist/src/lib/abilityCore/helpers/zod.d.ts.map +1 -0
  67. package/dist/src/lib/abilityCore/helpers/zod.js +70 -0
  68. package/dist/src/lib/abilityCore/helpers/zod.js.map +1 -0
  69. package/dist/src/lib/abilityCore/vincentAbility.d.ts +54 -0
  70. package/dist/src/lib/abilityCore/vincentAbility.d.ts.map +1 -0
  71. package/dist/src/lib/abilityCore/vincentAbility.js +162 -0
  72. package/dist/src/lib/abilityCore/vincentAbility.js.map +1 -0
  73. package/dist/src/lib/assertSupportedAbilityVersion.d.ts +2 -0
  74. package/dist/src/lib/assertSupportedAbilityVersion.d.ts.map +1 -0
  75. package/dist/src/lib/assertSupportedAbilityVersion.js +15 -0
  76. package/dist/src/lib/assertSupportedAbilityVersion.js.map +1 -0
  77. package/dist/src/lib/constants.d.ts +2 -0
  78. package/dist/src/lib/constants.d.ts.map +1 -0
  79. package/dist/src/lib/constants.js +5 -0
  80. package/dist/src/lib/constants.js.map +1 -0
  81. package/dist/src/lib/handlers/constants.d.ts +2 -0
  82. package/dist/src/lib/handlers/constants.d.ts.map +1 -0
  83. package/dist/src/lib/handlers/constants.js +6 -0
  84. package/dist/src/lib/handlers/constants.js.map +1 -0
  85. package/dist/src/lib/handlers/evaluatePolicies.d.ts +11 -0
  86. package/dist/src/lib/handlers/evaluatePolicies.d.ts.map +1 -0
  87. package/dist/src/lib/handlers/evaluatePolicies.js +110 -0
  88. package/dist/src/lib/handlers/evaluatePolicies.js.map +1 -0
  89. package/dist/src/lib/handlers/vincentAbilityHandler.d.ts +15 -0
  90. package/dist/src/lib/handlers/vincentAbilityHandler.d.ts.map +1 -0
  91. package/dist/src/lib/handlers/vincentAbilityHandler.js +160 -0
  92. package/dist/src/lib/handlers/vincentAbilityHandler.js.map +1 -0
  93. package/dist/src/lib/handlers/vincentPolicyHandler.d.ts +13 -0
  94. package/dist/src/lib/handlers/vincentPolicyHandler.d.ts.map +1 -0
  95. package/dist/src/lib/handlers/vincentPolicyHandler.js +70 -0
  96. package/dist/src/lib/handlers/vincentPolicyHandler.js.map +1 -0
  97. package/dist/src/lib/policyCore/bundledPolicy/bundledPolicy.d.ts +5 -0
  98. package/dist/src/lib/policyCore/bundledPolicy/bundledPolicy.d.ts.map +1 -0
  99. package/dist/src/lib/policyCore/bundledPolicy/bundledPolicy.js +21 -0
  100. package/dist/src/lib/policyCore/bundledPolicy/bundledPolicy.js.map +1 -0
  101. package/dist/src/lib/policyCore/bundledPolicy/types.d.ts +17 -0
  102. package/dist/src/lib/policyCore/bundledPolicy/types.d.ts.map +1 -0
  103. package/dist/src/lib/policyCore/bundledPolicy/types.js +4 -0
  104. package/dist/src/lib/policyCore/bundledPolicy/types.js.map +1 -0
  105. package/dist/src/lib/policyCore/helpers/index.d.ts +5 -0
  106. package/dist/src/lib/policyCore/helpers/index.d.ts.map +1 -0
  107. package/dist/src/lib/policyCore/helpers/index.js +16 -0
  108. package/dist/src/lib/policyCore/helpers/index.js.map +1 -0
  109. package/dist/src/lib/policyCore/helpers/resultCreators.d.ts +38 -0
  110. package/dist/src/lib/policyCore/helpers/resultCreators.d.ts.map +1 -0
  111. package/dist/src/lib/policyCore/helpers/resultCreators.js +89 -0
  112. package/dist/src/lib/policyCore/helpers/resultCreators.js.map +1 -0
  113. package/dist/src/lib/policyCore/helpers/typeGuards.d.ts +7 -0
  114. package/dist/src/lib/policyCore/helpers/typeGuards.d.ts.map +1 -0
  115. package/dist/src/lib/policyCore/helpers/typeGuards.js +23 -0
  116. package/dist/src/lib/policyCore/helpers/typeGuards.js.map +1 -0
  117. package/dist/src/lib/policyCore/helpers/zod.d.ts +55 -0
  118. package/dist/src/lib/policyCore/helpers/zod.d.ts.map +1 -0
  119. package/dist/src/lib/policyCore/helpers/zod.js +82 -0
  120. package/dist/src/lib/policyCore/helpers/zod.js.map +1 -0
  121. package/dist/src/lib/policyCore/index.d.ts +3 -0
  122. package/dist/src/lib/policyCore/index.d.ts.map +1 -0
  123. package/dist/src/lib/policyCore/index.js +8 -0
  124. package/dist/src/lib/policyCore/index.js.map +1 -0
  125. package/dist/src/lib/policyCore/policyConfig/context/policyConfigContext.d.ts +12 -0
  126. package/dist/src/lib/policyCore/policyConfig/context/policyConfigContext.d.ts.map +1 -0
  127. package/dist/src/lib/policyCore/policyConfig/context/policyConfigContext.js +20 -0
  128. package/dist/src/lib/policyCore/policyConfig/context/policyConfigContext.js.map +1 -0
  129. package/dist/src/lib/policyCore/policyConfig/context/resultCreators.d.ts +6 -0
  130. package/dist/src/lib/policyCore/policyConfig/context/resultCreators.d.ts.map +1 -0
  131. package/dist/src/lib/policyCore/policyConfig/context/resultCreators.js +30 -0
  132. package/dist/src/lib/policyCore/policyConfig/context/resultCreators.js.map +1 -0
  133. package/dist/src/lib/policyCore/policyConfig/context/types.d.ts +24 -0
  134. package/dist/src/lib/policyCore/policyConfig/context/types.d.ts.map +1 -0
  135. package/dist/src/lib/policyCore/policyConfig/context/types.js +5 -0
  136. package/dist/src/lib/policyCore/policyConfig/context/types.js.map +1 -0
  137. package/dist/src/lib/policyCore/policyConfig/types.d.ts +46 -0
  138. package/dist/src/lib/policyCore/policyConfig/types.d.ts.map +1 -0
  139. package/dist/src/lib/policyCore/policyConfig/types.js +3 -0
  140. package/dist/src/lib/policyCore/policyConfig/types.js.map +1 -0
  141. package/dist/src/lib/policyCore/policyParameters/getOnchainPolicyParams.d.ts +17 -0
  142. package/dist/src/lib/policyCore/policyParameters/getOnchainPolicyParams.d.ts.map +1 -0
  143. package/dist/src/lib/policyCore/policyParameters/getOnchainPolicyParams.js +54 -0
  144. package/dist/src/lib/policyCore/policyParameters/getOnchainPolicyParams.js.map +1 -0
  145. package/dist/src/lib/policyCore/vincentPolicy.d.ts +92 -0
  146. package/dist/src/lib/policyCore/vincentPolicy.d.ts.map +1 -0
  147. package/dist/src/lib/policyCore/vincentPolicy.js +242 -0
  148. package/dist/src/lib/policyCore/vincentPolicy.js.map +1 -0
  149. package/dist/src/lib/types.d.ts +260 -0
  150. package/dist/src/lib/types.d.ts.map +1 -0
  151. package/dist/src/lib/types.js +4 -0
  152. package/dist/src/lib/types.js.map +1 -0
  153. package/dist/src/lib/utils.d.ts +2 -0
  154. package/dist/src/lib/utils.d.ts.map +1 -0
  155. package/dist/src/lib/utils.js +8 -0
  156. package/dist/src/lib/utils.js.map +1 -0
  157. package/dist/src/type-inference-verification/ability-definition-tests.d.ts +702 -0
  158. package/dist/src/type-inference-verification/ability-definition-tests.d.ts.map +1 -0
  159. package/dist/src/type-inference-verification/ability-definition-tests.js +203 -0
  160. package/dist/src/type-inference-verification/ability-definition-tests.js.map +1 -0
  161. package/dist/src/type-inference-verification/ability-lifecycle-inference.d.ts +2 -0
  162. package/dist/src/type-inference-verification/ability-lifecycle-inference.d.ts.map +1 -0
  163. package/dist/src/type-inference-verification/ability-lifecycle-inference.js +109 -0
  164. package/dist/src/type-inference-verification/ability-lifecycle-inference.js.map +1 -0
  165. package/dist/src/type-inference-verification/ability-lifecycle-succeed-fail-tests.d.ts +923 -0
  166. package/dist/src/type-inference-verification/ability-lifecycle-succeed-fail-tests.d.ts.map +1 -0
  167. package/dist/src/type-inference-verification/ability-lifecycle-succeed-fail-tests.js +196 -0
  168. package/dist/src/type-inference-verification/ability-lifecycle-succeed-fail-tests.js.map +1 -0
  169. package/dist/src/type-inference-verification/allow-deny-test-cases-ability.d.ts +4305 -0
  170. package/dist/src/type-inference-verification/allow-deny-test-cases-ability.d.ts.map +1 -0
  171. package/dist/src/type-inference-verification/allow-deny-test-cases-ability.js +644 -0
  172. package/dist/src/type-inference-verification/allow-deny-test-cases-ability.js.map +1 -0
  173. package/dist/src/type-inference-verification/allow-deny-test-cases.d.ts +646 -0
  174. package/dist/src/type-inference-verification/allow-deny-test-cases.d.ts.map +1 -0
  175. package/dist/src/type-inference-verification/allow-deny-test-cases.js +264 -0
  176. package/dist/src/type-inference-verification/allow-deny-test-cases.js.map +1 -0
  177. package/dist/src/type-inference-verification/context-switching-tests.d.ts +637 -0
  178. package/dist/src/type-inference-verification/context-switching-tests.d.ts.map +1 -0
  179. package/dist/src/type-inference-verification/context-switching-tests.js +229 -0
  180. package/dist/src/type-inference-verification/context-switching-tests.js.map +1 -0
  181. package/dist/src/type-inference-verification/create-policy-map-from-tool-policies.d.ts +2 -0
  182. package/dist/src/type-inference-verification/create-policy-map-from-tool-policies.d.ts.map +1 -0
  183. package/dist/src/type-inference-verification/create-policy-map-from-tool-policies.js +56 -0
  184. package/dist/src/type-inference-verification/create-policy-map-from-tool-policies.js.map +1 -0
  185. package/dist/src/type-inference-verification/create-vincent-ability-policy.d.ts +2 -0
  186. package/dist/src/type-inference-verification/create-vincent-ability-policy.d.ts.map +1 -0
  187. package/dist/src/type-inference-verification/create-vincent-ability-policy.js +49 -0
  188. package/dist/src/type-inference-verification/create-vincent-ability-policy.js.map +1 -0
  189. package/dist/src/type-inference-verification/create-vincent-ability.d.ts +250 -0
  190. package/dist/src/type-inference-verification/create-vincent-ability.d.ts.map +1 -0
  191. package/dist/src/type-inference-verification/create-vincent-ability.js +68 -0
  192. package/dist/src/type-inference-verification/create-vincent-ability.js.map +1 -0
  193. package/dist/src/type-inference-verification/parameter-inference-tests-tool.d.ts +1710 -0
  194. package/dist/src/type-inference-verification/parameter-inference-tests-tool.d.ts.map +1 -0
  195. package/dist/src/type-inference-verification/parameter-inference-tests-tool.js +537 -0
  196. package/dist/src/type-inference-verification/parameter-inference-tests-tool.js.map +1 -0
  197. package/dist/src/type-inference-verification/parameter-inference-tests.d.ts +456 -0
  198. package/dist/src/type-inference-verification/parameter-inference-tests.d.ts.map +1 -0
  199. package/dist/src/type-inference-verification/parameter-inference-tests.js +179 -0
  200. package/dist/src/type-inference-verification/parameter-inference-tests.js.map +1 -0
  201. package/dist/src/type-inference-verification/playground.d.ts +1556 -0
  202. package/dist/src/type-inference-verification/playground.d.ts.map +1 -0
  203. package/dist/src/type-inference-verification/playground.js +473 -0
  204. package/dist/src/type-inference-verification/playground.js.map +1 -0
  205. package/dist/src/type-inference-verification/schema-test.d.ts +470 -0
  206. package/dist/src/type-inference-verification/schema-test.d.ts.map +1 -0
  207. package/dist/src/type-inference-verification/schema-test.js +252 -0
  208. package/dist/src/type-inference-verification/schema-test.js.map +1 -0
  209. package/package.json +43 -0
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ // src/type-inference-verification/context-switching-tests.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.testPrecheckEvaluateContextSwitching = testPrecheckEvaluateContextSwitching;
5
+ exports.testEvaluateCommitContextSwitching = testEvaluateCommitContextSwitching;
6
+ exports.testFullPolicyContextSwitching = testFullPolicyContextSwitching;
7
+ /**
8
+ * Context Switching Tests
9
+ *
10
+ * This file contains test cases for verifying that the type constraints are
11
+ * properly enforced when switching between different policy function contexts
12
+ * (precheck, evaluate, commit) which may have different schemas.
13
+ */
14
+ const zod_1 = require("zod");
15
+ const bundledPolicy_1 = require("../lib/policyCore/bundledPolicy/bundledPolicy");
16
+ const vincentPolicy_1 = require("../lib/policyCore/vincentPolicy");
17
+ // Base ability schema for all tests
18
+ const baseAbilitySchema = zod_1.z.object({
19
+ action: zod_1.z.string(),
20
+ target: zod_1.z.string(),
21
+ amount: zod_1.z.number(),
22
+ });
23
+ /**
24
+ * Test Case 1: Verify different schemas between precheck and evaluate
25
+ */
26
+ function testPrecheckEvaluateContextSwitching() {
27
+ // Different schemas for precheck and evaluate
28
+ const precheckAllowSchema = zod_1.z.object({ prelimStatus: zod_1.z.string() });
29
+ const precheckDenySchema = zod_1.z.object({ prelimReason: zod_1.z.string() });
30
+ const evalAllowSchema = zod_1.z.object({ finalStatus: zod_1.z.string() });
31
+ const evalDenySchema = zod_1.z.object({ finalReason: zod_1.z.string() });
32
+ const precheckEvalContextSwitchPolicy = (0, vincentPolicy_1.createVincentPolicy)({
33
+ packageName: '@lit-protocol/test-policy@1.2.3',
34
+ abilityParamsSchema: zod_1.z.object({ actionType: zod_1.z.string() }),
35
+ // Different schemas for each context
36
+ precheckAllowResultSchema: precheckAllowSchema,
37
+ precheckDenyResultSchema: precheckDenySchema,
38
+ evalAllowResultSchema: evalAllowSchema,
39
+ evalDenyResultSchema: evalDenySchema,
40
+ precheck: async (params, context) => {
41
+ // Test TypeScript errors first
42
+ // @ts-expect-error - Using eval schema in precheck context
43
+ context.allow({ finalStatus: 'wrong-context' });
44
+ // @ts-expect-error - Using eval schema in precheck context
45
+ context.deny({ finalReason: 'wrong-context' });
46
+ // Valid for precheck context
47
+ if (Math.random() > 0.5) {
48
+ return context.allow({ prelimStatus: 'valid' });
49
+ }
50
+ else {
51
+ return context.deny({ prelimReason: 'invalid-prelim' });
52
+ }
53
+ },
54
+ evaluate: async (params, context) => {
55
+ // Test TypeScript errors first
56
+ // @ts-expect-error - Using precheck schema in evaluate context
57
+ context.allow({ prelimStatus: 'wrong-context' });
58
+ // @ts-expect-error - Using precheck schema in evaluate context
59
+ context.deny({ prelimReason: 'wrong-context' });
60
+ // Valid for evaluate context
61
+ if (Math.random() > 0.5) {
62
+ return context.allow({ finalStatus: 'approved' });
63
+ }
64
+ else {
65
+ return context.deny({ finalReason: 'denied-final' });
66
+ }
67
+ },
68
+ });
69
+ return (0, vincentPolicy_1.createVincentAbilityPolicy)({
70
+ abilityParamsSchema: baseAbilitySchema,
71
+ bundledVincentPolicy: (0, bundledPolicy_1.asBundledVincentPolicy)(precheckEvalContextSwitchPolicy, '02u3kjwdsnfs2890hf'),
72
+ abilityParameterMappings: {
73
+ action: 'actionType',
74
+ },
75
+ });
76
+ }
77
+ /**
78
+ * Test Case 2: Verify different schemas between evaluate and commit
79
+ */
80
+ function testEvaluateCommitContextSwitching() {
81
+ // Different schemas for evaluate and commit
82
+ const evalAllowSchema = zod_1.z.object({ approvalId: zod_1.z.string() });
83
+ const evalDenySchema = zod_1.z.object({ rejectionReason: zod_1.z.string() });
84
+ const commitParamsSchema = zod_1.z.object({ confirmationId: zod_1.z.string() });
85
+ const commitAllowSchema = zod_1.z.object({ transactionHash: zod_1.z.string() });
86
+ const commitDenySchema = zod_1.z.object({ failureCode: zod_1.z.number() });
87
+ const evalCommitContextSwitchPolicy = (0, vincentPolicy_1.createVincentPolicy)({
88
+ packageName: '@lit-protocol/test-policy@1.23.1',
89
+ abilityParamsSchema: zod_1.z.object({ actionType: zod_1.z.string() }),
90
+ // Different schemas for each context
91
+ evalAllowResultSchema: evalAllowSchema,
92
+ evalDenyResultSchema: evalDenySchema,
93
+ commitParamsSchema: commitParamsSchema,
94
+ commitAllowResultSchema: commitAllowSchema,
95
+ commitDenyResultSchema: commitDenySchema,
96
+ evaluate: async (params, context) => {
97
+ // Test TypeScript errors first
98
+ // @ts-expect-error - Using commit schema in evaluate context
99
+ context.allow({ transactionHash: 'wrong-context' });
100
+ // @ts-expect-error - Using commit schema in evaluate context
101
+ context.deny({ failureCode: 400 });
102
+ // Valid for evaluate context
103
+ if (Math.random() > 0.5) {
104
+ return context.allow({ approvalId: 'approved-123' });
105
+ }
106
+ else {
107
+ return context.deny({ rejectionReason: 'policy-violation' });
108
+ }
109
+ },
110
+ commit: async (params, context) => {
111
+ // Confirm params inference works
112
+ const confId = params.confirmationId;
113
+ // Test TypeScript errors first
114
+ // @ts-expect-error - Using evaluate schema in commit context
115
+ context.allow({ approvalId: 'wrong-context' });
116
+ // @ts-expect-error - Using evaluate schema in commit context
117
+ context.deny({ rejectionReason: 'wrong-context' });
118
+ // Valid for commit context
119
+ if (confId.startsWith('valid')) {
120
+ return context.allow({ transactionHash: `hash-${confId}` });
121
+ }
122
+ else {
123
+ return context.deny({ failureCode: 500 }, 'Transaction failed');
124
+ }
125
+ },
126
+ });
127
+ return (0, vincentPolicy_1.createVincentAbilityPolicy)({
128
+ abilityParamsSchema: baseAbilitySchema,
129
+ bundledVincentPolicy: (0, bundledPolicy_1.asBundledVincentPolicy)(evalCommitContextSwitchPolicy, '048oifjnwfoij3208h'),
130
+ abilityParameterMappings: {
131
+ action: 'actionType',
132
+ },
133
+ });
134
+ }
135
+ /**
136
+ * Test Case 3: Full policy with all three contexts having different schemas
137
+ */
138
+ function testFullPolicyContextSwitching() {
139
+ // Different schemas for each context
140
+ const precheckAllowSchema = zod_1.z.object({ check: zod_1.z.boolean() });
141
+ const precheckDenySchema = zod_1.z.object({ checkFailed: zod_1.z.boolean() });
142
+ const evalAllowSchema = zod_1.z.object({ granted: zod_1.z.boolean() });
143
+ const evalDenySchema = zod_1.z.object({ denied: zod_1.z.boolean() });
144
+ const commitParamsSchema = zod_1.z.object({ txId: zod_1.z.string() });
145
+ const commitAllowSchema = zod_1.z.object({ completed: zod_1.z.boolean() });
146
+ const commitDenySchema = zod_1.z.object({ aborted: zod_1.z.boolean() });
147
+ const fullPolicyContext = (0, vincentPolicy_1.createVincentPolicy)({
148
+ packageName: '@lit-protocol/testpolicyawesome@12.1.10',
149
+ abilityParamsSchema: zod_1.z.object({
150
+ actionType: zod_1.z.string(),
151
+ amount: zod_1.z.number(),
152
+ }),
153
+ userParamsSchema: zod_1.z.object({
154
+ limit: zod_1.z.number(),
155
+ }),
156
+ // All different schemas
157
+ precheckAllowResultSchema: precheckAllowSchema,
158
+ precheckDenyResultSchema: precheckDenySchema,
159
+ evalAllowResultSchema: evalAllowSchema,
160
+ evalDenyResultSchema: evalDenySchema,
161
+ commitParamsSchema: commitParamsSchema,
162
+ commitAllowResultSchema: commitAllowSchema,
163
+ commitDenyResultSchema: commitDenySchema,
164
+ precheck: async ({ abilityParams, userParams }, context) => {
165
+ // Test TypeScript errors first
166
+ // @ts-expect-error - Using eval schema in precheck
167
+ context.allow({ granted: true });
168
+ // @ts-expect-error - Using commit schema in precheck
169
+ context.allow({ completed: true });
170
+ // @ts-expect-error - Using eval schema in precheck
171
+ context.deny({ denied: true });
172
+ // @ts-expect-error - Using commit schema in precheck
173
+ context.deny({ aborted: true });
174
+ // Valid for precheck
175
+ if (abilityParams.amount <= userParams.limit) {
176
+ return context.allow({ check: true });
177
+ }
178
+ else {
179
+ return context.deny({ checkFailed: true });
180
+ }
181
+ },
182
+ evaluate: async ({ abilityParams, userParams }, context) => {
183
+ // Test TypeScript errors first
184
+ // @ts-expect-error - Using precheck schema in eval
185
+ context.allow({ check: true });
186
+ // @ts-expect-error - Using commit schema in eval
187
+ context.allow({ completed: true });
188
+ // @ts-expect-error - Using precheck schema in eval
189
+ context.deny({ checkFailed: true });
190
+ // @ts-expect-error - Using commit schema in eval
191
+ context.deny({ aborted: true });
192
+ // Valid for eval
193
+ if (abilityParams.amount <= userParams.limit) {
194
+ return context.allow({ granted: true });
195
+ }
196
+ else {
197
+ return context.deny({ denied: true });
198
+ }
199
+ },
200
+ commit: async (params, context) => {
201
+ const id = params.txId;
202
+ // Test TypeScript errors first
203
+ // @ts-expect-error - Using precheck schema in commit
204
+ context.allow({ check: true });
205
+ // @ts-expect-error - Using eval schema in commit
206
+ context.allow({ granted: true });
207
+ // @ts-expect-error - Using precheck schema in commit
208
+ context.deny({ checkFailed: true });
209
+ // @ts-expect-error - Using eval schema in commit
210
+ context.deny({ denied: true });
211
+ // Valid for commit
212
+ if (id.startsWith('valid')) {
213
+ return context.allow({ completed: true });
214
+ }
215
+ else {
216
+ return context.deny({ aborted: true });
217
+ }
218
+ },
219
+ });
220
+ return (0, vincentPolicy_1.createVincentAbilityPolicy)({
221
+ abilityParamsSchema: baseAbilitySchema,
222
+ bundledVincentPolicy: (0, bundledPolicy_1.asBundledVincentPolicy)(fullPolicyContext, '908joiun2f928q1hjbfn'),
223
+ abilityParameterMappings: {
224
+ action: 'actionType',
225
+ amount: 'amount',
226
+ },
227
+ });
228
+ }
229
+ //# sourceMappingURL=context-switching-tests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-switching-tests.js","sourceRoot":"","sources":["../../../src/type-inference-verification/context-switching-tests.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-policy-map-from-tool-policies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-policy-map-from-tool-policies.d.ts","sourceRoot":"","sources":["../../../src/type-inference-verification/create-policy-map-from-tool-policies.ts"],"names":[],"mappings":"AAoEA,OAAO,EAAE,CAAC"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ // src/type-inference-verification/create-policy-map-from-ability-policies.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ /* eslint-disable @typescript-eslint/no-unused-vars */
5
+ const zod_1 = require("zod");
6
+ const helpers_1 = require("../lib/abilityCore/helpers");
7
+ const bundledPolicy_1 = require("../lib/policyCore/bundledPolicy/bundledPolicy");
8
+ const vincentPolicy_1 = require("../lib/policyCore/vincentPolicy");
9
+ const PolicyConfig1 = (0, vincentPolicy_1.createVincentPolicy)({
10
+ packageName: 'example-policy-1',
11
+ abilityParamsSchema: zod_1.z.object({ x: zod_1.z.string() }),
12
+ evalAllowResultSchema: zod_1.z.object({ pass: zod_1.z.boolean() }),
13
+ evalDenyResultSchema: zod_1.z.object({ error: zod_1.z.string() }),
14
+ evaluate: async ({ abilityParams }, ctx) => {
15
+ return ctx.allow({ pass: true });
16
+ },
17
+ });
18
+ const PolicyConfig2 = (0, vincentPolicy_1.createVincentPolicy)({
19
+ packageName: 'example-policy-2',
20
+ abilityParamsSchema: zod_1.z.object({ y: zod_1.z.number() }),
21
+ evalAllowResultSchema: zod_1.z.object({ pass: zod_1.z.literal(true) }),
22
+ evalDenyResultSchema: zod_1.z.object({ code: zod_1.z.number() }),
23
+ evaluate: async ({ abilityParams }, ctx) => {
24
+ return ctx.deny({ code: 403 });
25
+ },
26
+ });
27
+ const bundled1 = (0, bundledPolicy_1.asBundledVincentPolicy)(PolicyConfig1, 'QmCID1');
28
+ const bundled2 = (0, bundledPolicy_1.asBundledVincentPolicy)(PolicyConfig2, 'QmCID2');
29
+ const policy1 = (0, vincentPolicy_1.createVincentAbilityPolicy)({
30
+ abilityParamsSchema: zod_1.z.object({ x: zod_1.z.string() }),
31
+ bundledVincentPolicy: bundled1,
32
+ abilityParameterMappings: {
33
+ x: 'x',
34
+ },
35
+ });
36
+ const policy2 = (0, vincentPolicy_1.createVincentAbilityPolicy)({
37
+ abilityParamsSchema: zod_1.z.object({ y: zod_1.z.number() }),
38
+ bundledVincentPolicy: bundled2,
39
+ abilityParameterMappings: {
40
+ y: 'y',
41
+ },
42
+ });
43
+ const result = (0, helpers_1.supportedPoliciesForAbility)([policy1, policy2]);
44
+ // ✅ Known package names — should succeed
45
+ const p1 = result.policyByPackageName['example-policy-1'];
46
+ const p2 = result.policyByPackageName['example-policy-2'];
47
+ console.log(p1, p2);
48
+ // ✅ Known CIDs — should succeed
49
+ const c1 = result.policyByIpfsCid['QmCID1'];
50
+ const c2 = result.policyByIpfsCid['QmCID2'];
51
+ console.log(c1, c2);
52
+ // @ts-expect-error should error: unknown package name
53
+ const failPkg = result.policyByPackageName['not-a-real-policy'];
54
+ // @ts-expect-error should error: unknown ipfsCid
55
+ const failCid = result.policyByIpfsCid['QmInvalidCID'];
56
+ //# sourceMappingURL=create-policy-map-from-tool-policies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-policy-map-from-tool-policies.js","sourceRoot":"","sources":["../../../src/type-inference-verification/create-policy-map-from-tool-policies.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-vincent-ability-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-vincent-ability-policy.d.ts","sourceRoot":"","sources":["../../../src/type-inference-verification/create-vincent-ability-policy.ts"],"names":[],"mappings":"AAwEA,OAAO,EAAE,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ // src/type-inference-verification/create-vincent-ability-policy.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const zod_1 = require("zod");
5
+ const bundledPolicy_1 = require("../lib/policyCore/bundledPolicy/bundledPolicy");
6
+ const vincentPolicy_1 = require("../lib/policyCore/vincentPolicy");
7
+ const abilityParamsSchema = zod_1.z.object({
8
+ x: zod_1.z.string(),
9
+ });
10
+ const policyParamsSchema = zod_1.z.object({
11
+ message: zod_1.z.string(),
12
+ });
13
+ const evalAllow = zod_1.z.object({ allowed: zod_1.z.boolean() });
14
+ const evalDeny = zod_1.z.object({ reason: zod_1.z.string() });
15
+ const PolicyConfig = (0, vincentPolicy_1.createVincentPolicy)({
16
+ packageName: 'my-policy',
17
+ abilityParamsSchema: policyParamsSchema,
18
+ evalAllowResultSchema: evalAllow,
19
+ evalDenyResultSchema: evalDeny,
20
+ evaluate: async ({ abilityParams }, ctx) => {
21
+ return ctx.allow({ allowed: true });
22
+ },
23
+ });
24
+ const bundled = (0, bundledPolicy_1.asBundledVincentPolicy)(PolicyConfig, 'QmCID12345');
25
+ const abilityPolicy = (0, vincentPolicy_1.createVincentAbilityPolicy)({
26
+ abilityParamsSchema,
27
+ bundledVincentPolicy: bundled,
28
+ abilityParameterMappings: {
29
+ x: 'message',
30
+ },
31
+ });
32
+ const cid = true;
33
+ console.log(cid);
34
+ // ✅ Infere nce: ipfsCid should be literal
35
+ // type Cid = typeof abilityPolicy.ipfsCid;
36
+ // ^? "QmCID12345"
37
+ // ✅ Inference: packageName should be literal
38
+ // type Package = typeof abilityPolicy.vincentPolicy.packageName;
39
+ // ^? "my-policy"
40
+ // ✅ Inference: schema accessors should be accurate
41
+ // type AllowSchema = typeof abilityPolicy.__schemaTypes.evalAllowResultSchema;
42
+ // ^? z.ZodObject<{ allowed: z.ZodBoolean }>
43
+ // ✅ Function types inferred
44
+ // type EvaluateFn = typeof abilityPolicy.__schemaTypes.evaluate;
45
+ // ^? (input: ..., context: ...) => Promise<...>
46
+ // ❌ Invalid schema field — should error
47
+ // @ts-expect-error invalid schema key
48
+ console.log(abilityPolicy.__schemaTypes.notARealSchema);
49
+ //# sourceMappingURL=create-vincent-ability-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-vincent-ability-policy.js","sourceRoot":"","sources":["../../../src/type-inference-verification/create-vincent-ability-policy.ts"],"names":[],"mappings":";AAAA,mEAAmE;;AAEnE,6BAAwB;AAExB,iFAAuF;AACvF,mEAAkG;AAElG,MAAM,mBAAmB,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC,CAAC,EAAE,OAAC,CAAC,MAAM,EAAE;CACd,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAClC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACrD,MAAM,QAAQ,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAElD,MAAM,YAAY,GAAG,IAAA,mCAAmB,EAAC;IACvC,WAAW,EAAE,WAAoB;IACjC,mBAAmB,EAAE,kBAAkB;IACvC,qBAAqB,EAAE,SAAS;IAChC,oBAAoB,EAAE,QAAQ;IAC9B,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE;QACzC,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG,IAAA,sCAAsB,EAAC,YAAY,EAAE,YAAqB,CAAC,CAAC;AAE5E,MAAM,aAAa,GAAG,IAAA,0CAA0B,EAAC;IAC/C,mBAAmB;IACnB,oBAAoB,EAAE,OAAO;IAC7B,wBAAwB,EAAE;QACxB,CAAC,EAAE,SAAS;KACb;CACF,CAAC,CAAC;AAaH,MAAM,GAAG,GAAiB,IAAI,CAAC;AAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEjB,0CAA0C;AAC1C,2CAA2C;AAC3C,qBAAqB;AAErB,6CAA6C;AAC7C,iEAAiE;AACjE,oBAAoB;AAEpB,mDAAmD;AACnD,+EAA+E;AAC/E,+CAA+C;AAE/C,4BAA4B;AAC5B,iEAAiE;AACjE,mDAAmD;AAEnD,wCAAwC;AACxC,sCAAsC;AACtC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC"}
@@ -0,0 +1,250 @@
1
+ import { z } from 'zod';
2
+ export declare const ability: import("..").VincentAbility<z.ZodObject<{
3
+ action: z.ZodString;
4
+ count: z.ZodNumber;
5
+ }, "strip", z.ZodTypeAny, {
6
+ action: string;
7
+ count: number;
8
+ }, {
9
+ action: string;
10
+ count: number;
11
+ }>, string, import("../lib/abilityCore/helpers").AbilityPolicyMap<readonly [{
12
+ vincentPolicy: import("../internal").VincentPolicy<"limit-check", z.ZodObject<{
13
+ count: z.ZodNumber;
14
+ }, "strip", z.ZodTypeAny, {
15
+ count: number;
16
+ }, {
17
+ count: number;
18
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
19
+ ok: z.ZodBoolean;
20
+ }, "strip", z.ZodTypeAny, {
21
+ ok: boolean;
22
+ }, {
23
+ ok: boolean;
24
+ }>, z.ZodObject<{
25
+ reason: z.ZodString;
26
+ }, "strip", z.ZodTypeAny, {
27
+ reason: string;
28
+ }, {
29
+ reason: string;
30
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
31
+ count: z.ZodNumber;
32
+ }, "strip", z.ZodTypeAny, {
33
+ count: number;
34
+ }, {
35
+ count: number;
36
+ }>, z.ZodUndefined, z.ZodObject<{
37
+ ok: z.ZodBoolean;
38
+ }, "strip", z.ZodTypeAny, {
39
+ ok: boolean;
40
+ }, {
41
+ ok: boolean;
42
+ }>, z.ZodObject<{
43
+ reason: z.ZodString;
44
+ }, "strip", z.ZodTypeAny, {
45
+ reason: string;
46
+ }, {
47
+ reason: string;
48
+ }>>, import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
49
+ count: z.ZodNumber;
50
+ }, "strip", z.ZodTypeAny, {
51
+ count: number;
52
+ }, {
53
+ count: number;
54
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined>, import("../lib/types").CommitLifecycleFunction<z.ZodUndefined, z.ZodUndefined, z.ZodUndefined>>;
55
+ ipfsCid: "QmCID123";
56
+ abilityParameterMappings: Partial<{
57
+ action: "count";
58
+ count: "count";
59
+ }>;
60
+ vincentAbilityApiVersion: string;
61
+ __schemaTypes: {
62
+ policyAbilityParamsSchema: z.ZodObject<{
63
+ count: z.ZodNumber;
64
+ }, "strip", z.ZodTypeAny, {
65
+ count: number;
66
+ }, {
67
+ count: number;
68
+ }>;
69
+ userParamsSchema: z.ZodUndefined;
70
+ evalAllowResultSchema: z.ZodObject<{
71
+ ok: z.ZodBoolean;
72
+ }, "strip", z.ZodTypeAny, {
73
+ ok: boolean;
74
+ }, {
75
+ ok: boolean;
76
+ }>;
77
+ evalDenyResultSchema: z.ZodObject<{
78
+ reason: z.ZodString;
79
+ }, "strip", z.ZodTypeAny, {
80
+ reason: string;
81
+ }, {
82
+ reason: string;
83
+ }>;
84
+ precheckAllowResultSchema: z.ZodUndefined;
85
+ precheckDenyResultSchema: z.ZodUndefined;
86
+ commitParamsSchema: z.ZodUndefined;
87
+ commitAllowResultSchema: z.ZodUndefined;
88
+ commitDenyResultSchema: z.ZodUndefined;
89
+ evaluate: import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
90
+ count: z.ZodNumber;
91
+ }, "strip", z.ZodTypeAny, {
92
+ count: number;
93
+ }, {
94
+ count: number;
95
+ }>, z.ZodUndefined, z.ZodObject<{
96
+ ok: z.ZodBoolean;
97
+ }, "strip", z.ZodTypeAny, {
98
+ ok: boolean;
99
+ }, {
100
+ ok: boolean;
101
+ }>, z.ZodObject<{
102
+ reason: z.ZodString;
103
+ }, "strip", z.ZodTypeAny, {
104
+ reason: string;
105
+ }, {
106
+ reason: string;
107
+ }>>;
108
+ precheck: import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
109
+ count: z.ZodNumber;
110
+ }, "strip", z.ZodTypeAny, {
111
+ count: number;
112
+ }, {
113
+ count: number;
114
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined> | undefined;
115
+ commit: import("../lib/types").CommitLifecycleFunction<z.ZodUndefined, z.ZodUndefined, z.ZodUndefined> | undefined;
116
+ };
117
+ }], "limit-check">, {
118
+ "limit-check": {
119
+ vincentPolicy: import("../internal").VincentPolicy<"limit-check", z.ZodObject<{
120
+ count: z.ZodNumber;
121
+ }, "strip", z.ZodTypeAny, {
122
+ count: number;
123
+ }, {
124
+ count: number;
125
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
126
+ ok: z.ZodBoolean;
127
+ }, "strip", z.ZodTypeAny, {
128
+ ok: boolean;
129
+ }, {
130
+ ok: boolean;
131
+ }>, z.ZodObject<{
132
+ reason: z.ZodString;
133
+ }, "strip", z.ZodTypeAny, {
134
+ reason: string;
135
+ }, {
136
+ reason: string;
137
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
138
+ count: z.ZodNumber;
139
+ }, "strip", z.ZodTypeAny, {
140
+ count: number;
141
+ }, {
142
+ count: number;
143
+ }>, z.ZodUndefined, z.ZodObject<{
144
+ ok: z.ZodBoolean;
145
+ }, "strip", z.ZodTypeAny, {
146
+ ok: boolean;
147
+ }, {
148
+ ok: boolean;
149
+ }>, z.ZodObject<{
150
+ reason: z.ZodString;
151
+ }, "strip", z.ZodTypeAny, {
152
+ reason: string;
153
+ }, {
154
+ reason: string;
155
+ }>>, import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
156
+ count: z.ZodNumber;
157
+ }, "strip", z.ZodTypeAny, {
158
+ count: number;
159
+ }, {
160
+ count: number;
161
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined>, import("../lib/types").CommitLifecycleFunction<z.ZodUndefined, z.ZodUndefined, z.ZodUndefined>>;
162
+ ipfsCid: "QmCID123";
163
+ abilityParameterMappings: Partial<{
164
+ action: "count";
165
+ count: "count";
166
+ }>;
167
+ vincentAbilityApiVersion: string;
168
+ __schemaTypes: {
169
+ policyAbilityParamsSchema: z.ZodObject<{
170
+ count: z.ZodNumber;
171
+ }, "strip", z.ZodTypeAny, {
172
+ count: number;
173
+ }, {
174
+ count: number;
175
+ }>;
176
+ userParamsSchema: z.ZodUndefined;
177
+ evalAllowResultSchema: z.ZodObject<{
178
+ ok: z.ZodBoolean;
179
+ }, "strip", z.ZodTypeAny, {
180
+ ok: boolean;
181
+ }, {
182
+ ok: boolean;
183
+ }>;
184
+ evalDenyResultSchema: z.ZodObject<{
185
+ reason: z.ZodString;
186
+ }, "strip", z.ZodTypeAny, {
187
+ reason: string;
188
+ }, {
189
+ reason: string;
190
+ }>;
191
+ precheckAllowResultSchema: z.ZodUndefined;
192
+ precheckDenyResultSchema: z.ZodUndefined;
193
+ commitParamsSchema: z.ZodUndefined;
194
+ commitAllowResultSchema: z.ZodUndefined;
195
+ commitDenyResultSchema: z.ZodUndefined;
196
+ evaluate: import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
197
+ count: z.ZodNumber;
198
+ }, "strip", z.ZodTypeAny, {
199
+ count: number;
200
+ }, {
201
+ count: number;
202
+ }>, z.ZodUndefined, z.ZodObject<{
203
+ ok: z.ZodBoolean;
204
+ }, "strip", z.ZodTypeAny, {
205
+ ok: boolean;
206
+ }, {
207
+ ok: boolean;
208
+ }>, z.ZodObject<{
209
+ reason: z.ZodString;
210
+ }, "strip", z.ZodTypeAny, {
211
+ reason: string;
212
+ }, {
213
+ reason: string;
214
+ }>>;
215
+ precheck: import("../lib/types").PolicyLifecycleFunction<z.ZodObject<{
216
+ count: z.ZodNumber;
217
+ }, "strip", z.ZodTypeAny, {
218
+ count: number;
219
+ }, {
220
+ count: number;
221
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodUndefined> | undefined;
222
+ commit: import("../lib/types").CommitLifecycleFunction<z.ZodUndefined, z.ZodUndefined, z.ZodUndefined> | undefined;
223
+ };
224
+ };
225
+ }, z.ZodObject<{
226
+ status: z.ZodString;
227
+ }, "strip", z.ZodTypeAny, {
228
+ status: string;
229
+ }, {
230
+ status: string;
231
+ }>, z.ZodObject<{
232
+ error: z.ZodString;
233
+ }, "strip", z.ZodTypeAny, {
234
+ error: string;
235
+ }, {
236
+ error: string;
237
+ }>, z.ZodObject<{
238
+ passed: z.ZodBoolean;
239
+ }, "strip", z.ZodTypeAny, {
240
+ passed: boolean;
241
+ }, {
242
+ passed: boolean;
243
+ }>, z.ZodObject<{
244
+ failCode: z.ZodLiteral<"POLICY_FAIL">;
245
+ }, "strip", z.ZodTypeAny, {
246
+ failCode: "POLICY_FAIL";
247
+ }, {
248
+ failCode: "POLICY_FAIL";
249
+ }>>;
250
+ //# sourceMappingURL=create-vincent-ability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-vincent-ability.d.ts","sourceRoot":"","sources":["../../../src/type-inference-verification/create-vincent-ability.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0CxB,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoClB,CAAC"}