@tinkerlandai/indiana-sdk 0.9.2 → 0.9.5

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 (63) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +60 -4
  3. package/README.zh-CN.md +26 -3
  4. package/dist/{ai-usage-DMNKvCiq.d.ts → ai-usage-CUTIHAU0.d.ts} +5 -5
  5. package/dist/{api--Zf0gxfj.d.ts → api-BXu6TAoB.d.ts} +274 -127
  6. package/dist/{chunk-65TBYVCS.js → chunk-4C3HUZ3B.js} +1 -1
  7. package/dist/chunk-5ZWSFE2C.js +1 -0
  8. package/dist/chunk-6ZZUNGNE.js +1 -0
  9. package/dist/chunk-AOGPGUWE.js +1 -0
  10. package/dist/chunk-BOCKPUCM.js +2 -0
  11. package/dist/chunk-CLXORAOK.js +1 -0
  12. package/dist/chunk-HEGNIATD.js +1 -0
  13. package/dist/{chunk-WSVH6IQA.js → chunk-LMO3FXRT.js} +1 -1
  14. package/dist/chunk-M7JWCLYX.js +173 -0
  15. package/dist/chunk-MKV726FV.js +1 -0
  16. package/dist/chunk-QYECMZJJ.js +1 -0
  17. package/dist/chunk-UBMPFTGE.js +1 -0
  18. package/dist/chunk-UWFYBRM2.js +6 -0
  19. package/dist/chunk-XRXI3DMZ.js +1 -0
  20. package/dist/chunk-XSOEA4A5.js +4 -0
  21. package/dist/{configuration-sync-E98CqVwh.d.ts → configuration-sync-DuJl4SbM.d.ts} +64 -11
  22. package/dist/content-PQJYLAGQ.js +1 -0
  23. package/dist/coupon-fA1QujHt.d.ts +184 -0
  24. package/dist/{customer-page-9B97Qdt_.d.ts → customer-page-km5f1PJZ.d.ts} +86 -182
  25. package/dist/{funnel-local-client-BjPwXlQb.d.ts → funnel-local-client-BhHdi5_V.d.ts} +2843 -1187
  26. package/dist/funnel-node-evaluation-DuPmqIo1.d.ts +998 -0
  27. package/dist/funnel-resource-client-BoIhL_my.d.ts +9674 -0
  28. package/dist/funnel-runtime-host-3YUGXD3Y.js +1 -0
  29. package/dist/index.d.ts +1292 -9349
  30. package/dist/index.js +1 -1
  31. package/dist/native-shell.js +1 -1
  32. package/dist/openrouter.d.ts +3 -3
  33. package/dist/openrouter.js +1 -1
  34. package/dist/page.d.ts +3 -3
  35. package/dist/page.js +1 -1
  36. package/dist/paywall-CSAGKPCP.js +1 -0
  37. package/dist/popup.d.ts +7 -5
  38. package/dist/popup.js +1 -1
  39. package/dist/react-native.d.ts +23680 -173
  40. package/dist/react-native.js +1 -1
  41. package/dist/{screen-BITZ11jn.d.ts → screen-CvfI_L41.d.ts} +157 -4
  42. package/dist/{screen-renderer-A6VYE2QL.js → screen-renderer-VAMWY7ID.js} +1 -1
  43. package/dist/server.d.ts +355 -95
  44. package/dist/server.js +1 -1
  45. package/dist/visual-dom-OFB7BFFB.js +1 -0
  46. package/dist/visual.d.ts +1 -1
  47. package/dist/visual.js +1 -1
  48. package/package.json +1 -1
  49. package/dist/chunk-5O667MKA.js +0 -1
  50. package/dist/chunk-67A7I6MB.js +0 -1
  51. package/dist/chunk-CCQHYQ4P.js +0 -1
  52. package/dist/chunk-CPLLMISZ.js +0 -1
  53. package/dist/chunk-G23YNWWI.js +0 -1
  54. package/dist/chunk-L7LKE3MG.js +0 -173
  55. package/dist/chunk-NH2PTTNK.js +0 -2
  56. package/dist/chunk-PK5HYUHD.js +0 -1
  57. package/dist/chunk-SEW4YVR7.js +0 -1
  58. package/dist/chunk-UYSOTMY3.js +0 -1
  59. package/dist/chunk-YZSQDZXW.js +0 -4
  60. package/dist/content-3LOJVYQO.js +0 -1
  61. package/dist/errors-0TSUIbUi.d.ts +0 -115
  62. package/dist/funnel-runtime-host-NYHKQT6T.js +0 -1
  63. package/dist/paywall-ISCYOGPZ.js +0 -1
@@ -0,0 +1,998 @@
1
+ import { z } from 'zod';
2
+ import { E as EvaluationContext, J as JsonValue } from './growth-rules-B4YYy64R.js';
3
+
4
+ declare const merchantBridgeCommandSchema: z.ZodEnum<{
5
+ "session.create": "session.create";
6
+ "catalog.read": "catalog.read";
7
+ "customer.commerce.read": "customer.commerce.read";
8
+ "presentation.resolve": "presentation.resolve";
9
+ "presentation.report": "presentation.report";
10
+ "purchase.execute": "purchase.execute";
11
+ "operation.read": "operation.read";
12
+ "subscription.change": "subscription.change";
13
+ "refund.execute": "refund.execute";
14
+ "bridge.ping": "bridge.ping";
15
+ "bridge.describe": "bridge.describe";
16
+ }>;
17
+ type MerchantBridgeCommand = z.infer<typeof merchantBridgeCommandSchema>;
18
+ declare const merchantBridgeManifestSchema: z.ZodObject<{
19
+ bridgeVersion: z.ZodLiteral<2>;
20
+ projectId: z.ZodUUID;
21
+ environmentId: z.ZodUUID;
22
+ environment: z.ZodEnum<{
23
+ sandbox: "sandbox";
24
+ live: "live";
25
+ }>;
26
+ accountId: z.ZodOptional<z.ZodString>;
27
+ capabilities: z.ZodArray<z.ZodEnum<{
28
+ session: "session";
29
+ catalog: "catalog";
30
+ customer_commerce: "customer_commerce";
31
+ presentation: "presentation";
32
+ presentation_events: "presentation_events";
33
+ purchases: "purchases";
34
+ operation_status: "operation_status";
35
+ billing_records: "billing_records";
36
+ subscription_changes: "subscription_changes";
37
+ refunds: "refunds";
38
+ }>>;
39
+ catalog: z.ZodEnum<{
40
+ endpoint: "endpoint";
41
+ static: "static";
42
+ none: "none";
43
+ }>;
44
+ billingEvents: z.ZodArray<z.ZodEnum<{
45
+ "checkout.session.completed": "checkout.session.completed";
46
+ "checkout.session.expired": "checkout.session.expired";
47
+ "checkout.session.async_payment_succeeded": "checkout.session.async_payment_succeeded";
48
+ "checkout.session.async_payment_failed": "checkout.session.async_payment_failed";
49
+ "customer.subscription.created": "customer.subscription.created";
50
+ "customer.subscription.updated": "customer.subscription.updated";
51
+ "customer.subscription.deleted": "customer.subscription.deleted";
52
+ "customer.subscription.paused": "customer.subscription.paused";
53
+ "customer.subscription.resumed": "customer.subscription.resumed";
54
+ "invoice.created": "invoice.created";
55
+ "invoice.paid": "invoice.paid";
56
+ "customer.discount.created": "customer.discount.created";
57
+ "customer.discount.updated": "customer.discount.updated";
58
+ "refund.created": "refund.created";
59
+ "refund.updated": "refund.updated";
60
+ "refund.failed": "refund.failed";
61
+ "charge.refunded": "charge.refunded";
62
+ }>>;
63
+ }, z.core.$strict>;
64
+ type MerchantBridgeManifest = z.infer<typeof merchantBridgeManifestSchema>;
65
+ declare const merchantBridgeCommandInputs: {
66
+ readonly "bridge.ping": z.ZodObject<{
67
+ challenge: z.ZodUUID;
68
+ }, z.core.$strict>;
69
+ readonly "bridge.describe": z.ZodObject<{}, z.core.$strict>;
70
+ readonly "session.create": z.ZodObject<{}, z.core.$strict>;
71
+ readonly "catalog.read": z.ZodObject<{}, z.core.$strict>;
72
+ readonly "customer.commerce.read": z.ZodObject<{}, z.core.$strict>;
73
+ readonly "presentation.resolve": z.ZodObject<{}, z.core.$strict>;
74
+ readonly "presentation.report": z.ZodObject<{
75
+ decisionId: z.ZodUUID;
76
+ eventId: z.ZodUUID;
77
+ }, z.core.$strict>;
78
+ readonly "purchase.execute": z.ZodObject<{
79
+ operationId: z.ZodUUID;
80
+ }, z.core.$strict>;
81
+ readonly "operation.read": z.ZodObject<{
82
+ operationId: z.ZodUUID;
83
+ }, z.core.$strict>;
84
+ readonly "subscription.change": z.ZodObject<{
85
+ operationId: z.ZodUUID;
86
+ }, z.core.$strict>;
87
+ readonly "refund.execute": z.ZodObject<{
88
+ operationId: z.ZodUUID;
89
+ }, z.core.$strict>;
90
+ };
91
+ declare const merchantBridgeCommandOutputs: {
92
+ readonly "bridge.ping": z.ZodObject<{
93
+ challenge: z.ZodUUID;
94
+ }, z.core.$strict>;
95
+ readonly "bridge.describe": z.ZodObject<{
96
+ bridgeVersion: z.ZodLiteral<2>;
97
+ projectId: z.ZodUUID;
98
+ environmentId: z.ZodUUID;
99
+ environment: z.ZodEnum<{
100
+ sandbox: "sandbox";
101
+ live: "live";
102
+ }>;
103
+ accountId: z.ZodOptional<z.ZodString>;
104
+ capabilities: z.ZodArray<z.ZodEnum<{
105
+ session: "session";
106
+ catalog: "catalog";
107
+ customer_commerce: "customer_commerce";
108
+ presentation: "presentation";
109
+ presentation_events: "presentation_events";
110
+ purchases: "purchases";
111
+ operation_status: "operation_status";
112
+ billing_records: "billing_records";
113
+ subscription_changes: "subscription_changes";
114
+ refunds: "refunds";
115
+ }>>;
116
+ catalog: z.ZodEnum<{
117
+ endpoint: "endpoint";
118
+ static: "static";
119
+ none: "none";
120
+ }>;
121
+ billingEvents: z.ZodArray<z.ZodEnum<{
122
+ "checkout.session.completed": "checkout.session.completed";
123
+ "checkout.session.expired": "checkout.session.expired";
124
+ "checkout.session.async_payment_succeeded": "checkout.session.async_payment_succeeded";
125
+ "checkout.session.async_payment_failed": "checkout.session.async_payment_failed";
126
+ "customer.subscription.created": "customer.subscription.created";
127
+ "customer.subscription.updated": "customer.subscription.updated";
128
+ "customer.subscription.deleted": "customer.subscription.deleted";
129
+ "customer.subscription.paused": "customer.subscription.paused";
130
+ "customer.subscription.resumed": "customer.subscription.resumed";
131
+ "invoice.created": "invoice.created";
132
+ "invoice.paid": "invoice.paid";
133
+ "customer.discount.created": "customer.discount.created";
134
+ "customer.discount.updated": "customer.discount.updated";
135
+ "refund.created": "refund.created";
136
+ "refund.updated": "refund.updated";
137
+ "refund.failed": "refund.failed";
138
+ "charge.refunded": "charge.refunded";
139
+ }>>;
140
+ }, z.core.$strict>;
141
+ readonly "session.create": z.ZodObject<{
142
+ nativeUserId: z.ZodString;
143
+ session: z.ZodObject<{
144
+ customerId: z.ZodUUID;
145
+ sessionId: z.ZodUUID;
146
+ accessToken: z.ZodString;
147
+ refreshToken: z.ZodString;
148
+ expiresAt: z.ZodISODateTime;
149
+ refreshExpiresAt: z.ZodISODateTime;
150
+ }, z.core.$strict>;
151
+ }, z.core.$strict>;
152
+ readonly "catalog.read": z.ZodObject<{
153
+ revision: z.ZodString;
154
+ updatedAt: z.ZodISODateTime;
155
+ provider: z.ZodLiteral<"stripe">;
156
+ accountId: z.ZodString;
157
+ items: z.ZodArray<z.ZodObject<{
158
+ merchantProductId: z.ZodString;
159
+ productVersionId: z.ZodUUID;
160
+ name: z.ZodString;
161
+ kind: z.ZodEnum<{
162
+ subscription: "subscription";
163
+ credit_pack: "credit_pack";
164
+ }>;
165
+ stripePriceId: z.ZodString;
166
+ currency: z.ZodString;
167
+ amountMinor: z.ZodNumber;
168
+ interval: z.ZodEnum<{
169
+ month: "month";
170
+ year: "year";
171
+ one_time: "one_time";
172
+ }>;
173
+ intervalCount: z.ZodLiteral<1>;
174
+ includedCredits: z.ZodString;
175
+ creditReset: z.ZodEnum<{
176
+ month: "month";
177
+ none: "none";
178
+ }>;
179
+ creditPolicyId: z.ZodString;
180
+ available: z.ZodBoolean;
181
+ }, z.core.$strict>>;
182
+ }, z.core.$strict>;
183
+ readonly "customer.commerce.read": z.ZodObject<{
184
+ customerId: z.ZodUUID;
185
+ revision: z.ZodString;
186
+ observedAt: z.ZodISODateTime;
187
+ subscriptions: z.ZodArray<z.ZodObject<{
188
+ merchantSubscriptionId: z.ZodString;
189
+ merchantProductId: z.ZodString;
190
+ productVersionId: z.ZodNullable<z.ZodUUID>;
191
+ status: z.ZodEnum<{
192
+ active: "active";
193
+ expired: "expired";
194
+ cancelled: "cancelled";
195
+ trialing: "trialing";
196
+ past_due: "past_due";
197
+ }>;
198
+ currentPeriodStartsAt: z.ZodNullable<z.ZodISODateTime>;
199
+ currentPeriodEndsAt: z.ZodNullable<z.ZodISODateTime>;
200
+ cancelAtPeriodEnd: z.ZodBoolean;
201
+ scheduledChange: z.ZodNullable<z.ZodObject<{
202
+ effectiveAt: z.ZodISODateTime;
203
+ merchantProductId: z.ZodString;
204
+ }, z.core.$strict>>;
205
+ }, z.core.$strict>>;
206
+ purchaseHistory: z.ZodObject<{
207
+ complete: z.ZodBoolean;
208
+ hasPaidPurchase: z.ZodBoolean;
209
+ lastPaidAt: z.ZodNullable<z.ZodISODateTime>;
210
+ }, z.core.$strict>;
211
+ balances: z.ZodArray<z.ZodObject<{
212
+ bucketId: z.ZodString;
213
+ key: z.ZodString;
214
+ available: z.ZodString;
215
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
216
+ nextResetAt: z.ZodNullable<z.ZodISODateTime>;
217
+ }, z.core.$strict>>;
218
+ }, z.core.$strict>;
219
+ readonly "presentation.resolve": z.ZodObject<{
220
+ nativeUserId: z.ZodString;
221
+ presentation: z.ZodNullable<z.ZodObject<{
222
+ customerId: z.ZodUUID;
223
+ decisionId: z.ZodUUID;
224
+ offeringVersionId: z.ZodUUID;
225
+ paywallVersionId: z.ZodUUID;
226
+ variant: z.ZodString;
227
+ }, z.core.$strict>>;
228
+ }, z.core.$strict>;
229
+ readonly "presentation.report": z.ZodObject<{
230
+ queued: z.ZodLiteral<true>;
231
+ }, z.core.$strict>;
232
+ readonly "purchase.execute": z.ZodObject<{
233
+ operationId: z.ZodUUID;
234
+ customerId: z.ZodUUID;
235
+ merchantExecutionId: z.ZodString;
236
+ merchantOrderId: z.ZodNullable<z.ZodString>;
237
+ providerSessionId: z.ZodNullable<z.ZodString>;
238
+ paymentStatus: z.ZodEnum<{
239
+ unknown: "unknown";
240
+ failed: "failed";
241
+ not_started: "not_started";
242
+ pending: "pending";
243
+ succeeded: "succeeded";
244
+ expired: "expired";
245
+ }>;
246
+ fulfillmentStatus: z.ZodEnum<{
247
+ failed: "failed";
248
+ not_started: "not_started";
249
+ pending: "pending";
250
+ applied: "applied";
251
+ not_applicable: "not_applicable";
252
+ }>;
253
+ recordingStatus: z.ZodEnum<{
254
+ failed: "failed";
255
+ pending: "pending";
256
+ not_ready: "not_ready";
257
+ accepted: "accepted";
258
+ }>;
259
+ indianaStatus: z.ZodNullable<z.ZodEnum<{
260
+ failed: "failed";
261
+ pending: "pending";
262
+ complete: "complete";
263
+ cancelled: "cancelled";
264
+ }>>;
265
+ checkoutUrl: z.ZodNullable<z.ZodURL>;
266
+ checkoutExpiresAt: z.ZodNullable<z.ZodISODateTime>;
267
+ updatedAt: z.ZodISODateTime;
268
+ pollAfterMs: z.ZodNullable<z.ZodNumber>;
269
+ }, z.core.$strict>;
270
+ readonly "operation.read": z.ZodObject<{
271
+ operationId: z.ZodUUID;
272
+ customerId: z.ZodUUID;
273
+ merchantExecutionId: z.ZodString;
274
+ merchantOrderId: z.ZodNullable<z.ZodString>;
275
+ providerSessionId: z.ZodNullable<z.ZodString>;
276
+ paymentStatus: z.ZodEnum<{
277
+ unknown: "unknown";
278
+ failed: "failed";
279
+ not_started: "not_started";
280
+ pending: "pending";
281
+ succeeded: "succeeded";
282
+ expired: "expired";
283
+ }>;
284
+ fulfillmentStatus: z.ZodEnum<{
285
+ failed: "failed";
286
+ not_started: "not_started";
287
+ pending: "pending";
288
+ applied: "applied";
289
+ not_applicable: "not_applicable";
290
+ }>;
291
+ recordingStatus: z.ZodEnum<{
292
+ failed: "failed";
293
+ pending: "pending";
294
+ not_ready: "not_ready";
295
+ accepted: "accepted";
296
+ }>;
297
+ indianaStatus: z.ZodNullable<z.ZodEnum<{
298
+ failed: "failed";
299
+ pending: "pending";
300
+ complete: "complete";
301
+ cancelled: "cancelled";
302
+ }>>;
303
+ checkoutUrl: z.ZodNullable<z.ZodURL>;
304
+ checkoutExpiresAt: z.ZodNullable<z.ZodISODateTime>;
305
+ updatedAt: z.ZodISODateTime;
306
+ pollAfterMs: z.ZodNullable<z.ZodNumber>;
307
+ }, z.core.$strict>;
308
+ readonly "subscription.change": z.ZodObject<{
309
+ operationId: z.ZodUUID;
310
+ customerId: z.ZodUUID;
311
+ merchantExecutionId: z.ZodString;
312
+ merchantOrderId: z.ZodNullable<z.ZodString>;
313
+ providerSessionId: z.ZodNullable<z.ZodString>;
314
+ paymentStatus: z.ZodEnum<{
315
+ unknown: "unknown";
316
+ failed: "failed";
317
+ not_started: "not_started";
318
+ pending: "pending";
319
+ succeeded: "succeeded";
320
+ expired: "expired";
321
+ }>;
322
+ fulfillmentStatus: z.ZodEnum<{
323
+ failed: "failed";
324
+ not_started: "not_started";
325
+ pending: "pending";
326
+ applied: "applied";
327
+ not_applicable: "not_applicable";
328
+ }>;
329
+ recordingStatus: z.ZodEnum<{
330
+ failed: "failed";
331
+ pending: "pending";
332
+ not_ready: "not_ready";
333
+ accepted: "accepted";
334
+ }>;
335
+ indianaStatus: z.ZodNullable<z.ZodEnum<{
336
+ failed: "failed";
337
+ pending: "pending";
338
+ complete: "complete";
339
+ cancelled: "cancelled";
340
+ }>>;
341
+ checkoutUrl: z.ZodNullable<z.ZodURL>;
342
+ checkoutExpiresAt: z.ZodNullable<z.ZodISODateTime>;
343
+ updatedAt: z.ZodISODateTime;
344
+ pollAfterMs: z.ZodNullable<z.ZodNumber>;
345
+ }, z.core.$strict>;
346
+ readonly "refund.execute": z.ZodObject<{
347
+ operationId: z.ZodUUID;
348
+ customerId: z.ZodUUID;
349
+ merchantExecutionId: z.ZodString;
350
+ merchantOrderId: z.ZodNullable<z.ZodString>;
351
+ providerSessionId: z.ZodNullable<z.ZodString>;
352
+ paymentStatus: z.ZodEnum<{
353
+ unknown: "unknown";
354
+ failed: "failed";
355
+ not_started: "not_started";
356
+ pending: "pending";
357
+ succeeded: "succeeded";
358
+ expired: "expired";
359
+ }>;
360
+ fulfillmentStatus: z.ZodEnum<{
361
+ failed: "failed";
362
+ not_started: "not_started";
363
+ pending: "pending";
364
+ applied: "applied";
365
+ not_applicable: "not_applicable";
366
+ }>;
367
+ recordingStatus: z.ZodEnum<{
368
+ failed: "failed";
369
+ pending: "pending";
370
+ not_ready: "not_ready";
371
+ accepted: "accepted";
372
+ }>;
373
+ indianaStatus: z.ZodNullable<z.ZodEnum<{
374
+ failed: "failed";
375
+ pending: "pending";
376
+ complete: "complete";
377
+ cancelled: "cancelled";
378
+ }>>;
379
+ checkoutUrl: z.ZodNullable<z.ZodURL>;
380
+ checkoutExpiresAt: z.ZodNullable<z.ZodISODateTime>;
381
+ updatedAt: z.ZodISODateTime;
382
+ pollAfterMs: z.ZodNullable<z.ZodNumber>;
383
+ }, z.core.$strict>;
384
+ };
385
+ declare const merchantBridgeRequestSchema: z.ZodObject<{
386
+ bridgeVersion: z.ZodLiteral<2>;
387
+ requestId: z.ZodUUID;
388
+ scope: z.ZodObject<{
389
+ projectId: z.ZodUUID;
390
+ environmentId: z.ZodUUID;
391
+ accountId: z.ZodOptional<z.ZodString>;
392
+ environment: z.ZodEnum<{
393
+ sandbox: "sandbox";
394
+ live: "live";
395
+ }>;
396
+ }, z.core.$strict>;
397
+ command: z.ZodEnum<{
398
+ "session.create": "session.create";
399
+ "catalog.read": "catalog.read";
400
+ "customer.commerce.read": "customer.commerce.read";
401
+ "presentation.resolve": "presentation.resolve";
402
+ "presentation.report": "presentation.report";
403
+ "purchase.execute": "purchase.execute";
404
+ "operation.read": "operation.read";
405
+ "subscription.change": "subscription.change";
406
+ "refund.execute": "refund.execute";
407
+ "bridge.ping": "bridge.ping";
408
+ "bridge.describe": "bridge.describe";
409
+ }>;
410
+ data: z.ZodUnknown;
411
+ }, z.core.$strict>;
412
+ type MerchantBridgeRequest = z.infer<typeof merchantBridgeRequestSchema>;
413
+
414
+ declare const funnelConfigurationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
415
+ evaluationMode: z.ZodLiteral<"local">;
416
+ growth: z.ZodObject<{
417
+ scope: z.ZodObject<{
418
+ projectId: z.ZodString;
419
+ environment: z.ZodEnum<{
420
+ sandbox: "sandbox";
421
+ live: "live";
422
+ }>;
423
+ }, z.core.$strict>;
424
+ generation: z.ZodString;
425
+ evaluatedAt: z.ZodISODateTime;
426
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
427
+ features: z.ZodRecord<z.ZodString, z.ZodObject<{
428
+ defaultValue: z.ZodOptional<z.ZodJSONSchema>;
429
+ rules: z.ZodOptional<z.ZodArray<z.ZodObject<{
430
+ id: z.ZodOptional<z.ZodString>;
431
+ force: z.ZodOptional<z.ZodJSONSchema>;
432
+ variations: z.ZodOptional<z.ZodArray<z.ZodJSONSchema>>;
433
+ key: z.ZodOptional<z.ZodString>;
434
+ range: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
435
+ tracks: z.ZodOptional<z.ZodArray<z.ZodObject<{
436
+ experiment: z.ZodObject<{
437
+ key: z.ZodString;
438
+ variations: z.ZodTuple<[z.ZodJSONSchema, z.ZodJSONSchema], z.ZodJSONSchema>;
439
+ urlPatterns: z.ZodOptional<z.ZodArray<z.ZodObject<{
440
+ include: z.ZodBoolean;
441
+ type: z.ZodEnum<{
442
+ regex: "regex";
443
+ simple: "simple";
444
+ }>;
445
+ pattern: z.ZodString;
446
+ }, z.core.$strict>>>;
447
+ force: z.ZodOptional<z.ZodNumber>;
448
+ active: z.ZodOptional<z.ZodBoolean>;
449
+ persistQueryString: z.ZodOptional<z.ZodBoolean>;
450
+ condition: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
451
+ parentConditions: z.ZodOptional<z.ZodArray<z.ZodObject<{
452
+ id: z.ZodString;
453
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
454
+ gate: z.ZodOptional<z.ZodBoolean>;
455
+ }, z.core.$strict>>>;
456
+ weights: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
457
+ coverage: z.ZodOptional<z.ZodNumber>;
458
+ hashAttribute: z.ZodOptional<z.ZodString>;
459
+ fallbackAttribute: z.ZodOptional<z.ZodString>;
460
+ hashVersion: z.ZodOptional<z.ZodLiteral<2>>;
461
+ disableStickyBucketing: z.ZodOptional<z.ZodBoolean>;
462
+ bucketVersion: z.ZodOptional<z.ZodNumber>;
463
+ minBucketVersion: z.ZodOptional<z.ZodNumber>;
464
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
465
+ attribute: z.ZodOptional<z.ZodString>;
466
+ seed: z.ZodString;
467
+ hashVersion: z.ZodLiteral<2>;
468
+ ranges: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
469
+ }, z.core.$strict>>>;
470
+ ranges: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
471
+ meta: z.ZodOptional<z.ZodArray<z.ZodObject<{
472
+ key: z.ZodOptional<z.ZodString>;
473
+ name: z.ZodOptional<z.ZodString>;
474
+ passthrough: z.ZodOptional<z.ZodBoolean>;
475
+ }, z.core.$strict>>>;
476
+ seed: z.ZodOptional<z.ZodString>;
477
+ name: z.ZodOptional<z.ZodString>;
478
+ phase: z.ZodOptional<z.ZodString>;
479
+ }, z.core.$strict>;
480
+ result: z.ZodObject<{
481
+ value: z.ZodJSONSchema;
482
+ variationId: z.ZodNumber;
483
+ key: z.ZodString;
484
+ name: z.ZodOptional<z.ZodString>;
485
+ bucket: z.ZodOptional<z.ZodNumber>;
486
+ passthrough: z.ZodOptional<z.ZodBoolean>;
487
+ inExperiment: z.ZodBoolean;
488
+ hashUsed: z.ZodOptional<z.ZodBoolean>;
489
+ hashAttribute: z.ZodString;
490
+ hashValue: z.ZodString;
491
+ featureId: z.ZodNullable<z.ZodString>;
492
+ stickyBucketUsed: z.ZodOptional<z.ZodBoolean>;
493
+ }, z.core.$strict>;
494
+ }, z.core.$strict>>>;
495
+ condition: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
496
+ parentConditions: z.ZodOptional<z.ZodArray<z.ZodObject<{
497
+ id: z.ZodString;
498
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
499
+ gate: z.ZodOptional<z.ZodBoolean>;
500
+ }, z.core.$strict>>>;
501
+ weights: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
502
+ coverage: z.ZodOptional<z.ZodNumber>;
503
+ hashAttribute: z.ZodOptional<z.ZodString>;
504
+ fallbackAttribute: z.ZodOptional<z.ZodString>;
505
+ hashVersion: z.ZodOptional<z.ZodLiteral<2>>;
506
+ disableStickyBucketing: z.ZodOptional<z.ZodBoolean>;
507
+ bucketVersion: z.ZodOptional<z.ZodNumber>;
508
+ minBucketVersion: z.ZodOptional<z.ZodNumber>;
509
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
510
+ attribute: z.ZodOptional<z.ZodString>;
511
+ seed: z.ZodString;
512
+ hashVersion: z.ZodLiteral<2>;
513
+ ranges: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
514
+ }, z.core.$strict>>>;
515
+ ranges: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
516
+ meta: z.ZodOptional<z.ZodArray<z.ZodObject<{
517
+ key: z.ZodOptional<z.ZodString>;
518
+ name: z.ZodOptional<z.ZodString>;
519
+ passthrough: z.ZodOptional<z.ZodBoolean>;
520
+ }, z.core.$strict>>>;
521
+ seed: z.ZodOptional<z.ZodString>;
522
+ name: z.ZodOptional<z.ZodString>;
523
+ phase: z.ZodOptional<z.ZodString>;
524
+ }, z.core.$strict>>>;
525
+ }, z.core.$strict>>;
526
+ savedGroups: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
527
+ type: z.ZodLiteral<"hashed">;
528
+ attributeKey: z.ZodString;
529
+ values: z.ZodArray<z.ZodString>;
530
+ }, z.core.$strict>, z.ZodObject<{
531
+ type: z.ZodLiteral<"list">;
532
+ attributeKey: z.ZodString;
533
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
534
+ }, z.core.$strict>, z.ZodObject<{
535
+ type: z.ZodLiteral<"condition">;
536
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
537
+ }, z.core.$strict>]>>;
538
+ experiments: z.ZodRecord<z.ZodUUID, z.ZodObject<{
539
+ key: z.ZodString;
540
+ variations: z.ZodTuple<[z.ZodJSONSchema, z.ZodJSONSchema], z.ZodJSONSchema>;
541
+ urlPatterns: z.ZodOptional<z.ZodArray<z.ZodObject<{
542
+ include: z.ZodBoolean;
543
+ type: z.ZodEnum<{
544
+ regex: "regex";
545
+ simple: "simple";
546
+ }>;
547
+ pattern: z.ZodString;
548
+ }, z.core.$strict>>>;
549
+ force: z.ZodOptional<z.ZodNumber>;
550
+ active: z.ZodOptional<z.ZodBoolean>;
551
+ persistQueryString: z.ZodOptional<z.ZodBoolean>;
552
+ condition: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
553
+ parentConditions: z.ZodOptional<z.ZodArray<z.ZodObject<{
554
+ id: z.ZodString;
555
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
556
+ gate: z.ZodOptional<z.ZodBoolean>;
557
+ }, z.core.$strict>>>;
558
+ weights: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
559
+ coverage: z.ZodOptional<z.ZodNumber>;
560
+ hashAttribute: z.ZodOptional<z.ZodString>;
561
+ fallbackAttribute: z.ZodOptional<z.ZodString>;
562
+ hashVersion: z.ZodOptional<z.ZodLiteral<2>>;
563
+ disableStickyBucketing: z.ZodOptional<z.ZodBoolean>;
564
+ bucketVersion: z.ZodOptional<z.ZodNumber>;
565
+ minBucketVersion: z.ZodOptional<z.ZodNumber>;
566
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
567
+ attribute: z.ZodOptional<z.ZodString>;
568
+ seed: z.ZodString;
569
+ hashVersion: z.ZodLiteral<2>;
570
+ ranges: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
571
+ }, z.core.$strict>>>;
572
+ ranges: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
573
+ meta: z.ZodOptional<z.ZodArray<z.ZodObject<{
574
+ key: z.ZodOptional<z.ZodString>;
575
+ name: z.ZodOptional<z.ZodString>;
576
+ passthrough: z.ZodOptional<z.ZodBoolean>;
577
+ }, z.core.$strict>>>;
578
+ seed: z.ZodOptional<z.ZodString>;
579
+ name: z.ZodOptional<z.ZodString>;
580
+ phase: z.ZodOptional<z.ZodString>;
581
+ }, z.core.$strict>>;
582
+ }, z.core.$strict>;
583
+ conditions: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
584
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
585
+ port: z.ZodString;
586
+ }, z.core.$strict>>>;
587
+ scope: z.ZodObject<{
588
+ projectId: z.ZodString;
589
+ environment: z.ZodEnum<{
590
+ sandbox: "sandbox";
591
+ live: "live";
592
+ }>;
593
+ }, z.core.$strict>;
594
+ funnelId: z.ZodUUID;
595
+ versionId: z.ZodUUID;
596
+ evaluationRevision: z.ZodNumber;
597
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
598
+ topology: z.ZodObject<{
599
+ entry: z.ZodString;
600
+ nodes: z.ZodArray<z.ZodObject<{
601
+ id: z.ZodString;
602
+ type: z.ZodEnum<{
603
+ output: "output";
604
+ action: "action";
605
+ split: "split";
606
+ feature: "feature";
607
+ condition: "condition";
608
+ entry: "entry";
609
+ coupon: "coupon";
610
+ end: "end";
611
+ screen: "screen";
612
+ offering: "offering";
613
+ coupons: "coupons";
614
+ external_page: "external_page";
615
+ wait: "wait";
616
+ }>;
617
+ outputs: z.ZodRecord<z.ZodString, z.ZodString>;
618
+ writes: z.ZodRecord<z.ZodString, z.ZodString>;
619
+ resources: z.ZodObject<{
620
+ screenId: z.ZodOptional<z.ZodString>;
621
+ paywallVersionId: z.ZodOptional<z.ZodUUID>;
622
+ couponId: z.ZodOptional<z.ZodUUID>;
623
+ couponIds: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
624
+ experimentId: z.ZodOptional<z.ZodUUID>;
625
+ featureKey: z.ZodOptional<z.ZodString>;
626
+ offeringVersionId: z.ZodOptional<z.ZodUUID>;
627
+ }, z.core.$strict>;
628
+ }, z.core.$strict>>;
629
+ }, z.core.$strict>;
630
+ }, z.core.$strict>, z.ZodObject<{
631
+ evaluationMode: z.ZodLiteral<"remote">;
632
+ scope: z.ZodObject<{
633
+ projectId: z.ZodString;
634
+ environment: z.ZodEnum<{
635
+ sandbox: "sandbox";
636
+ live: "live";
637
+ }>;
638
+ }, z.core.$strict>;
639
+ funnelId: z.ZodUUID;
640
+ versionId: z.ZodUUID;
641
+ evaluationRevision: z.ZodNumber;
642
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
643
+ topology: z.ZodObject<{
644
+ entry: z.ZodString;
645
+ nodes: z.ZodArray<z.ZodObject<{
646
+ id: z.ZodString;
647
+ type: z.ZodEnum<{
648
+ output: "output";
649
+ action: "action";
650
+ split: "split";
651
+ feature: "feature";
652
+ condition: "condition";
653
+ entry: "entry";
654
+ coupon: "coupon";
655
+ end: "end";
656
+ screen: "screen";
657
+ offering: "offering";
658
+ coupons: "coupons";
659
+ external_page: "external_page";
660
+ wait: "wait";
661
+ }>;
662
+ outputs: z.ZodRecord<z.ZodString, z.ZodString>;
663
+ writes: z.ZodRecord<z.ZodString, z.ZodString>;
664
+ resources: z.ZodObject<{
665
+ screenId: z.ZodOptional<z.ZodString>;
666
+ paywallVersionId: z.ZodOptional<z.ZodUUID>;
667
+ couponId: z.ZodOptional<z.ZodUUID>;
668
+ couponIds: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
669
+ experimentId: z.ZodOptional<z.ZodUUID>;
670
+ featureKey: z.ZodOptional<z.ZodString>;
671
+ offeringVersionId: z.ZodOptional<z.ZodUUID>;
672
+ }, z.core.$strict>;
673
+ }, z.core.$strict>>;
674
+ }, z.core.$strict>;
675
+ }, z.core.$strict>], "evaluationMode">;
676
+ type FunnelConfiguration = z.infer<typeof funnelConfigurationSchema>;
677
+ /** Dedicated pure-evaluation delivery; existing configuration responses retain their exact contract. */
678
+ declare const funnelLocalConfigurationSchema: z.ZodObject<{
679
+ evaluationMode: z.ZodLiteral<"local">;
680
+ growth: z.ZodObject<{
681
+ scope: z.ZodObject<{
682
+ projectId: z.ZodString;
683
+ environment: z.ZodEnum<{
684
+ sandbox: "sandbox";
685
+ live: "live";
686
+ }>;
687
+ }, z.core.$strict>;
688
+ generation: z.ZodString;
689
+ evaluatedAt: z.ZodISODateTime;
690
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
691
+ features: z.ZodRecord<z.ZodString, z.ZodObject<{
692
+ defaultValue: z.ZodOptional<z.ZodJSONSchema>;
693
+ rules: z.ZodOptional<z.ZodArray<z.ZodObject<{
694
+ id: z.ZodOptional<z.ZodString>;
695
+ force: z.ZodOptional<z.ZodJSONSchema>;
696
+ variations: z.ZodOptional<z.ZodArray<z.ZodJSONSchema>>;
697
+ key: z.ZodOptional<z.ZodString>;
698
+ range: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
699
+ tracks: z.ZodOptional<z.ZodArray<z.ZodObject<{
700
+ experiment: z.ZodObject<{
701
+ key: z.ZodString;
702
+ variations: z.ZodTuple<[z.ZodJSONSchema, z.ZodJSONSchema], z.ZodJSONSchema>;
703
+ urlPatterns: z.ZodOptional<z.ZodArray<z.ZodObject<{
704
+ include: z.ZodBoolean;
705
+ type: z.ZodEnum<{
706
+ regex: "regex";
707
+ simple: "simple";
708
+ }>;
709
+ pattern: z.ZodString;
710
+ }, z.core.$strict>>>;
711
+ force: z.ZodOptional<z.ZodNumber>;
712
+ active: z.ZodOptional<z.ZodBoolean>;
713
+ persistQueryString: z.ZodOptional<z.ZodBoolean>;
714
+ condition: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
715
+ parentConditions: z.ZodOptional<z.ZodArray<z.ZodObject<{
716
+ id: z.ZodString;
717
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
718
+ gate: z.ZodOptional<z.ZodBoolean>;
719
+ }, z.core.$strict>>>;
720
+ weights: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
721
+ coverage: z.ZodOptional<z.ZodNumber>;
722
+ hashAttribute: z.ZodOptional<z.ZodString>;
723
+ fallbackAttribute: z.ZodOptional<z.ZodString>;
724
+ hashVersion: z.ZodOptional<z.ZodLiteral<2>>;
725
+ disableStickyBucketing: z.ZodOptional<z.ZodBoolean>;
726
+ bucketVersion: z.ZodOptional<z.ZodNumber>;
727
+ minBucketVersion: z.ZodOptional<z.ZodNumber>;
728
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
729
+ attribute: z.ZodOptional<z.ZodString>;
730
+ seed: z.ZodString;
731
+ hashVersion: z.ZodLiteral<2>;
732
+ ranges: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
733
+ }, z.core.$strict>>>;
734
+ ranges: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
735
+ meta: z.ZodOptional<z.ZodArray<z.ZodObject<{
736
+ key: z.ZodOptional<z.ZodString>;
737
+ name: z.ZodOptional<z.ZodString>;
738
+ passthrough: z.ZodOptional<z.ZodBoolean>;
739
+ }, z.core.$strict>>>;
740
+ seed: z.ZodOptional<z.ZodString>;
741
+ name: z.ZodOptional<z.ZodString>;
742
+ phase: z.ZodOptional<z.ZodString>;
743
+ }, z.core.$strict>;
744
+ result: z.ZodObject<{
745
+ value: z.ZodJSONSchema;
746
+ variationId: z.ZodNumber;
747
+ key: z.ZodString;
748
+ name: z.ZodOptional<z.ZodString>;
749
+ bucket: z.ZodOptional<z.ZodNumber>;
750
+ passthrough: z.ZodOptional<z.ZodBoolean>;
751
+ inExperiment: z.ZodBoolean;
752
+ hashUsed: z.ZodOptional<z.ZodBoolean>;
753
+ hashAttribute: z.ZodString;
754
+ hashValue: z.ZodString;
755
+ featureId: z.ZodNullable<z.ZodString>;
756
+ stickyBucketUsed: z.ZodOptional<z.ZodBoolean>;
757
+ }, z.core.$strict>;
758
+ }, z.core.$strict>>>;
759
+ condition: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
760
+ parentConditions: z.ZodOptional<z.ZodArray<z.ZodObject<{
761
+ id: z.ZodString;
762
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
763
+ gate: z.ZodOptional<z.ZodBoolean>;
764
+ }, z.core.$strict>>>;
765
+ weights: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
766
+ coverage: z.ZodOptional<z.ZodNumber>;
767
+ hashAttribute: z.ZodOptional<z.ZodString>;
768
+ fallbackAttribute: z.ZodOptional<z.ZodString>;
769
+ hashVersion: z.ZodOptional<z.ZodLiteral<2>>;
770
+ disableStickyBucketing: z.ZodOptional<z.ZodBoolean>;
771
+ bucketVersion: z.ZodOptional<z.ZodNumber>;
772
+ minBucketVersion: z.ZodOptional<z.ZodNumber>;
773
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
774
+ attribute: z.ZodOptional<z.ZodString>;
775
+ seed: z.ZodString;
776
+ hashVersion: z.ZodLiteral<2>;
777
+ ranges: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
778
+ }, z.core.$strict>>>;
779
+ ranges: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
780
+ meta: z.ZodOptional<z.ZodArray<z.ZodObject<{
781
+ key: z.ZodOptional<z.ZodString>;
782
+ name: z.ZodOptional<z.ZodString>;
783
+ passthrough: z.ZodOptional<z.ZodBoolean>;
784
+ }, z.core.$strict>>>;
785
+ seed: z.ZodOptional<z.ZodString>;
786
+ name: z.ZodOptional<z.ZodString>;
787
+ phase: z.ZodOptional<z.ZodString>;
788
+ }, z.core.$strict>>>;
789
+ }, z.core.$strict>>;
790
+ savedGroups: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
791
+ type: z.ZodLiteral<"hashed">;
792
+ attributeKey: z.ZodString;
793
+ values: z.ZodArray<z.ZodString>;
794
+ }, z.core.$strict>, z.ZodObject<{
795
+ type: z.ZodLiteral<"list">;
796
+ attributeKey: z.ZodString;
797
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
798
+ }, z.core.$strict>, z.ZodObject<{
799
+ type: z.ZodLiteral<"condition">;
800
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
801
+ }, z.core.$strict>]>>;
802
+ experiments: z.ZodRecord<z.ZodUUID, z.ZodObject<{
803
+ key: z.ZodString;
804
+ variations: z.ZodTuple<[z.ZodJSONSchema, z.ZodJSONSchema], z.ZodJSONSchema>;
805
+ urlPatterns: z.ZodOptional<z.ZodArray<z.ZodObject<{
806
+ include: z.ZodBoolean;
807
+ type: z.ZodEnum<{
808
+ regex: "regex";
809
+ simple: "simple";
810
+ }>;
811
+ pattern: z.ZodString;
812
+ }, z.core.$strict>>>;
813
+ force: z.ZodOptional<z.ZodNumber>;
814
+ active: z.ZodOptional<z.ZodBoolean>;
815
+ persistQueryString: z.ZodOptional<z.ZodBoolean>;
816
+ condition: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
817
+ parentConditions: z.ZodOptional<z.ZodArray<z.ZodObject<{
818
+ id: z.ZodString;
819
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
820
+ gate: z.ZodOptional<z.ZodBoolean>;
821
+ }, z.core.$strict>>>;
822
+ weights: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
823
+ coverage: z.ZodOptional<z.ZodNumber>;
824
+ hashAttribute: z.ZodOptional<z.ZodString>;
825
+ fallbackAttribute: z.ZodOptional<z.ZodString>;
826
+ hashVersion: z.ZodOptional<z.ZodLiteral<2>>;
827
+ disableStickyBucketing: z.ZodOptional<z.ZodBoolean>;
828
+ bucketVersion: z.ZodOptional<z.ZodNumber>;
829
+ minBucketVersion: z.ZodOptional<z.ZodNumber>;
830
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
831
+ attribute: z.ZodOptional<z.ZodString>;
832
+ seed: z.ZodString;
833
+ hashVersion: z.ZodLiteral<2>;
834
+ ranges: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
835
+ }, z.core.$strict>>>;
836
+ ranges: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
837
+ meta: z.ZodOptional<z.ZodArray<z.ZodObject<{
838
+ key: z.ZodOptional<z.ZodString>;
839
+ name: z.ZodOptional<z.ZodString>;
840
+ passthrough: z.ZodOptional<z.ZodBoolean>;
841
+ }, z.core.$strict>>>;
842
+ seed: z.ZodOptional<z.ZodString>;
843
+ name: z.ZodOptional<z.ZodString>;
844
+ phase: z.ZodOptional<z.ZodString>;
845
+ }, z.core.$strict>>;
846
+ }, z.core.$strict>;
847
+ conditions: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
848
+ condition: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
849
+ port: z.ZodString;
850
+ }, z.core.$strict>>>;
851
+ scope: z.ZodObject<{
852
+ projectId: z.ZodString;
853
+ environment: z.ZodEnum<{
854
+ sandbox: "sandbox";
855
+ live: "live";
856
+ }>;
857
+ }, z.core.$strict>;
858
+ funnelId: z.ZodUUID;
859
+ versionId: z.ZodUUID;
860
+ evaluationRevision: z.ZodNumber;
861
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
862
+ topology: z.ZodObject<{
863
+ entry: z.ZodString;
864
+ nodes: z.ZodArray<z.ZodObject<{
865
+ id: z.ZodString;
866
+ type: z.ZodEnum<{
867
+ output: "output";
868
+ action: "action";
869
+ split: "split";
870
+ feature: "feature";
871
+ condition: "condition";
872
+ entry: "entry";
873
+ coupon: "coupon";
874
+ end: "end";
875
+ screen: "screen";
876
+ offering: "offering";
877
+ coupons: "coupons";
878
+ external_page: "external_page";
879
+ wait: "wait";
880
+ }>;
881
+ outputs: z.ZodRecord<z.ZodString, z.ZodString>;
882
+ writes: z.ZodRecord<z.ZodString, z.ZodString>;
883
+ resources: z.ZodObject<{
884
+ screenId: z.ZodOptional<z.ZodString>;
885
+ paywallVersionId: z.ZodOptional<z.ZodUUID>;
886
+ couponId: z.ZodOptional<z.ZodUUID>;
887
+ couponIds: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
888
+ experimentId: z.ZodOptional<z.ZodUUID>;
889
+ featureKey: z.ZodOptional<z.ZodString>;
890
+ offeringVersionId: z.ZodOptional<z.ZodUUID>;
891
+ }, z.core.$strict>;
892
+ }, z.core.$strict>>;
893
+ }, z.core.$strict>;
894
+ evaluation: z.ZodObject<{
895
+ maxTransitions: z.ZodNumber;
896
+ variables: z.ZodRecord<z.ZodString, z.ZodObject<{
897
+ nullable: z.ZodBoolean;
898
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
899
+ type: z.ZodEnum<{
900
+ string: "string";
901
+ number: "number";
902
+ boolean: "boolean";
903
+ array: "array";
904
+ strings: "strings";
905
+ json: "json";
906
+ offering_version: "offering_version";
907
+ reward: "reward";
908
+ paywall_version: "paywall_version";
909
+ }>;
910
+ items: z.ZodOptional<z.ZodObject<{
911
+ type: z.ZodEnum<{
912
+ string: "string";
913
+ number: "number";
914
+ boolean: "boolean";
915
+ strings: "strings";
916
+ json: "json";
917
+ offering_version: "offering_version";
918
+ reward: "reward";
919
+ paywall_version: "paywall_version";
920
+ }>;
921
+ nullable: z.ZodBoolean;
922
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
923
+ }, z.core.$strict>>;
924
+ source: z.ZodDiscriminatedUnion<[z.ZodObject<{
925
+ type: z.ZodLiteral<"input">;
926
+ }, z.core.$strict>, z.ZodObject<{
927
+ type: z.ZodLiteral<"node">;
928
+ }, z.core.$strict>, z.ZodObject<{
929
+ type: z.ZodEnum<{
930
+ attribute: "attribute";
931
+ parameter: "parameter";
932
+ }>;
933
+ key: z.ZodString;
934
+ }, z.core.$strict>], "type">;
935
+ }, z.core.$strict>>;
936
+ outputSchema: z.ZodObject<{
937
+ nullable: z.ZodBoolean;
938
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
939
+ type: z.ZodEnum<{
940
+ string: "string";
941
+ number: "number";
942
+ boolean: "boolean";
943
+ array: "array";
944
+ strings: "strings";
945
+ json: "json";
946
+ offering_version: "offering_version";
947
+ reward: "reward";
948
+ paywall_version: "paywall_version";
949
+ }>;
950
+ items: z.ZodOptional<z.ZodObject<{
951
+ type: z.ZodEnum<{
952
+ string: "string";
953
+ number: "number";
954
+ boolean: "boolean";
955
+ strings: "strings";
956
+ json: "json";
957
+ offering_version: "offering_version";
958
+ reward: "reward";
959
+ paywall_version: "paywall_version";
960
+ }>;
961
+ nullable: z.ZodBoolean;
962
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
963
+ }, z.core.$strict>>;
964
+ }, z.core.$strict>;
965
+ terminals: z.ZodRecord<z.ZodString, z.ZodObject<{
966
+ outcome: z.ZodEnum<{
967
+ failed: "failed";
968
+ completed: "completed";
969
+ closed: "closed";
970
+ ineligible: "ineligible";
971
+ }>;
972
+ output: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
973
+ type: z.ZodLiteral<"literal">;
974
+ value: z.ZodJSONSchema;
975
+ }, z.core.$strict>, z.ZodObject<{
976
+ type: z.ZodLiteral<"variable">;
977
+ key: z.ZodString;
978
+ path: z.ZodOptional<z.ZodString>;
979
+ }, z.core.$strict>, z.ZodObject<{
980
+ type: z.ZodLiteral<"feature">;
981
+ featureKey: z.ZodString;
982
+ }, z.core.$strict>], "type">>;
983
+ }, z.core.$strict>>;
984
+ }, z.core.$strict>;
985
+ }, z.core.$strict>;
986
+ type FunnelLocalConfiguration = z.infer<typeof funnelLocalConfigurationSchema>;
987
+
988
+ type FunnelNodeEvaluationContext = Pick<EvaluationContext, "attributes" | "stickyBucketAssignmentDocs" | "saveStickyBucketAssignmentDoc" | "onFeatureUsage" | "onExperimentViewed">;
989
+
990
+ /** Pure rule evaluation, never a command or permission to perform a commercial action. No network I/O. */
991
+ declare function evaluateFunnelNode(configuration: FunnelConfiguration, nodeId: string, input: FunnelNodeEvaluationContext): {
992
+ nodeId: string;
993
+ port: string;
994
+ target: string;
995
+ value?: JsonValue;
996
+ };
997
+
998
+ export { type FunnelNodeEvaluationContext as F, type MerchantBridgeManifest as M, type FunnelLocalConfiguration as a, type MerchantBridgeCommand as b, type MerchantBridgeRequest as c, merchantBridgeCommandOutputs as d, evaluateFunnelNode as e, merchantBridgeCommandInputs as m };