@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
package/dist/server.d.ts CHANGED
@@ -1,17 +1,29 @@
1
- import { F as FoundationApi, I as InvoiceModeParams } from './api--Zf0gxfj.js';
2
- import { v as IndianaServerOptions, w as FunnelLocalConfiguration, p as PaywallStartInput, g as PaywallSession, h as FeatureClientOptions, R as RemoteFeatureResult } from './funnel-local-client-BjPwXlQb.js';
3
- export { k as FeatureClient, l as FunnelNodeEvaluationContext, j as FunnelStartInput, L as LocalFunnelClient, n as LocalFunnelClientOptions, r as createFeatureClient, x as createFunnelStartClient, s as createLocalFunnelClient, u as evaluateFunnelNode } from './funnel-local-client-BjPwXlQb.js';
1
+ import { F as FoundationApi, I as InvoiceModeParams } from './api-BXu6TAoB.js';
2
+ import { y as IndianaServerOptions, p as PaywallStartInput, P as PaywallSession, m as IndianaError, j as FeatureClientOptions, R as RemoteFeatureResult } from './funnel-local-client-BhHdi5_V.js';
3
+ export { i as FeatureClient, c as FunnelStartInput, L as LocalFunnelClient, n as LocalFunnelClientOptions, t as createFeatureClient, z as createFunnelStartClient, u as createLocalFunnelClient } from './funnel-local-client-BhHdi5_V.js';
4
4
  import * as zod from 'zod';
5
5
  import { z } from 'zod';
6
- import { S as StackNode } from './screen-BITZ11jn.js';
7
- import { C as ConfigurationSync } from './configuration-sync-E98CqVwh.js';
8
- export { c as createConfigurationSync } from './configuration-sync-E98CqVwh.js';
6
+ import { S as StackNode } from './screen-CvfI_L41.js';
7
+ import { a as ConfigurationSync } from './configuration-sync-DuJl4SbM.js';
8
+ export { c as createConfigurationSync } from './configuration-sync-DuJl4SbM.js';
9
9
  import { J as JsonValue, E as EvaluationContext, s as stickyAssignmentDocumentSchema, F as FeatureResult } from './growth-rules-B4YYy64R.js';
10
- import { I as IndianaError } from './errors-0TSUIbUi.js';
11
- export { d as AiPricingOptions, b as AiTokenQuote, a as AiTokenUsage, A as AiUsageContext, e as AiUsageMiddlewareOptions, f as AiUsageRecord, g as aiPriceSnapshotSchema, h as aiTokenQuoteSchema, c as createAiPricing, i as createAiUsageMiddleware, j as createConfiguredAiPricing } from './ai-usage-DMNKvCiq.js';
10
+ import { a as FunnelLocalConfiguration, b as MerchantBridgeCommand, c as MerchantBridgeRequest, M as MerchantBridgeManifest, m as merchantBridgeCommandInputs, d as merchantBridgeCommandOutputs } from './funnel-node-evaluation-DuPmqIo1.js';
11
+ export { F as FunnelNodeEvaluationContext, e as evaluateFunnelNode } from './funnel-node-evaluation-DuPmqIo1.js';
12
+ export { d as AiPricingOptions, b as AiTokenQuote, a as AiTokenUsage, A as AiUsageContext, e as AiUsageMiddlewareOptions, f as AiUsageRecord, g as aiPriceSnapshotSchema, h as aiTokenQuoteSchema, c as createAiPricing, i as createAiUsageMiddleware, j as createConfiguredAiPricing } from './ai-usage-CUTIHAU0.js';
12
13
  import 'zod/v4';
13
14
  import '@ai-sdk/provider';
14
15
 
16
+ type MerchantBridgeAuthentication = {
17
+ keyId: string;
18
+ signingSecret: string;
19
+ };
20
+ /** Server-side only. Native browser requests must never contain this shared key. */
21
+ declare function signMerchantBridgeMessage(body: string, authentication: MerchantBridgeAuthentication, direction: "request" | "response", now?: number): Promise<{
22
+ "X-Indiana-Bridge-Key-Id": string;
23
+ "X-Indiana-Bridge-Signature": string;
24
+ }>;
25
+ declare function verifyMerchantBridgeMessage(body: string, headers: Headers, authentication: MerchantBridgeAuthentication, direction: "request" | "response", now?: number): Promise<boolean>;
26
+
15
27
  declare const funnelDecisionSchema: z.ZodObject<{
16
28
  requestId: z.ZodUUID;
17
29
  decisionId: z.ZodUUID;
@@ -238,8 +250,8 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
238
250
  revision: number;
239
251
  visit: number;
240
252
  nodeId: string;
241
- nodeType: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
242
- status: "running" | "failed" | "completed" | "closed" | "ineligible" | "waiting";
253
+ nodeType: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
254
+ status: "failed" | "running" | "completed" | "closed" | "ineligible" | "waiting";
243
255
  stopped: boolean;
244
256
  canBack: boolean;
245
257
  authenticated: boolean;
@@ -403,6 +415,33 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
403
415
  price: string;
404
416
  period: string;
405
417
  currency?: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON" | undefined;
418
+ amountMinor?: number | undefined;
419
+ interval?: "one_time" | "month" | "year" | "free" | "week" | undefined;
420
+ intervalCount?: number | undefined;
421
+ prepaid?: {
422
+ internalFeatureId: string;
423
+ name: string;
424
+ includedAmount: string;
425
+ reset: "month" | "year" | "week" | "hour" | "day" | "lifetime";
426
+ resetCount: number;
427
+ terms: {
428
+ units: string;
429
+ prices: {
430
+ currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
431
+ amountMinor: number;
432
+ pricing?: {
433
+ kind: "graduated" | "volume";
434
+ tiers: {
435
+ upTo: number | null;
436
+ unitAmountMinor: number;
437
+ flatAmountMinor?: number | undefined;
438
+ }[];
439
+ } | undefined;
440
+ }[];
441
+ minimumQuantity: number;
442
+ maximumQuantity: number;
443
+ };
444
+ }[] | undefined;
406
445
  }>;
407
446
  pickers: Record<string, {
408
447
  options: string[];
@@ -429,11 +468,19 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
429
468
  membershipId: string | null;
430
469
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
431
470
  amountMinor: string;
432
- interval: "free" | "month" | "year" | "week" | "one_time";
471
+ interval: "one_time" | "month" | "year" | "free" | "week";
433
472
  intervalCount: number;
434
473
  }[];
435
474
  } | null;
436
475
  } | undefined;
476
+ quantities?: Record<string, {
477
+ minimum: number;
478
+ maximum: number;
479
+ step: number;
480
+ value: number;
481
+ label: string;
482
+ available: boolean;
483
+ }> | undefined;
437
484
  };
438
485
  customerData: {
439
486
  nodes: Record<string, {
@@ -521,7 +568,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
521
568
  cursor: {
522
569
  at: string;
523
570
  id: string;
524
- type: "usage" | "source" | "invoice" | "debt" | "transaction" | "settlement";
571
+ type: "invoice" | "source" | "usage" | "debt" | "transaction" | "settlement";
525
572
  };
526
573
  } | {
527
574
  kind: "billing";
@@ -538,6 +585,18 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
538
585
  version: number;
539
586
  document: {
540
587
  kind: "paywall";
588
+ presentation: {
589
+ type: "modal";
590
+ size: "sm" | "md" | "lg";
591
+ } | {
592
+ type: "sheet";
593
+ size: "sm" | "md" | "lg";
594
+ } | {
595
+ type: "fullscreen";
596
+ } | {
597
+ type: "inline";
598
+ };
599
+ offeringVersionId: string | null;
541
600
  name: string;
542
601
  products: {
543
602
  items: {
@@ -557,17 +616,6 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
557
616
  }[];
558
617
  } | undefined;
559
618
  };
560
- presentation: {
561
- type: "modal";
562
- size: "sm" | "md" | "lg";
563
- } | {
564
- type: "sheet";
565
- size: "sm" | "md" | "lg";
566
- } | {
567
- type: "fullscreen";
568
- } | {
569
- type: "inline";
570
- };
571
619
  screen: {
572
620
  kind: "screen";
573
621
  schemaVersion: 4;
@@ -648,7 +696,6 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
648
696
  initialPageId?: string | undefined;
649
697
  };
650
698
  schemaVersion: 3;
651
- offeringVersionId: string | null;
652
699
  buttons: Record<string, {
653
700
  type: "checkout";
654
701
  product: {
@@ -729,6 +776,33 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
729
776
  price: string;
730
777
  period: string;
731
778
  currency?: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON" | undefined;
779
+ amountMinor?: number | undefined;
780
+ interval?: "one_time" | "month" | "year" | "free" | "week" | undefined;
781
+ intervalCount?: number | undefined;
782
+ prepaid?: {
783
+ internalFeatureId: string;
784
+ name: string;
785
+ includedAmount: string;
786
+ reset: "month" | "year" | "week" | "hour" | "day" | "lifetime";
787
+ resetCount: number;
788
+ terms: {
789
+ units: string;
790
+ prices: {
791
+ currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
792
+ amountMinor: number;
793
+ pricing?: {
794
+ kind: "graduated" | "volume";
795
+ tiers: {
796
+ upTo: number | null;
797
+ unitAmountMinor: number;
798
+ flatAmountMinor?: number | undefined;
799
+ }[];
800
+ } | undefined;
801
+ }[];
802
+ minimumQuantity: number;
803
+ maximumQuantity: number;
804
+ };
805
+ }[] | undefined;
732
806
  }>;
733
807
  pickers: Record<string, {
734
808
  options: string[];
@@ -755,11 +829,19 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
755
829
  membershipId: string | null;
756
830
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
757
831
  amountMinor: string;
758
- interval: "free" | "month" | "year" | "week" | "one_time";
832
+ interval: "one_time" | "month" | "year" | "free" | "week";
759
833
  intervalCount: number;
760
834
  }[];
761
835
  } | null;
762
836
  } | undefined;
837
+ quantities?: Record<string, {
838
+ minimum: number;
839
+ maximum: number;
840
+ step: number;
841
+ value: number;
842
+ label: string;
843
+ available: boolean;
844
+ }> | undefined;
763
845
  };
764
846
  check: {
765
847
  internal_feature_id: string;
@@ -778,7 +860,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
778
860
  membershipId: string | null;
779
861
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
780
862
  amountMinor: string;
781
- interval: "free" | "month" | "year" | "week" | "one_time";
863
+ interval: "one_time" | "month" | "year" | "free" | "week";
782
864
  intervalCount: number;
783
865
  }[];
784
866
  } | null;
@@ -813,14 +895,12 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
813
895
  membershipId: string | null;
814
896
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
815
897
  amountMinor: string;
816
- interval: "free" | "month" | "year" | "week" | "one_time";
898
+ interval: "one_time" | "month" | "year" | "free" | "week";
817
899
  intervalCount: number;
818
900
  }[];
819
901
  } | null;
820
902
  } | null;
821
903
  id: string;
822
- version: number;
823
- paywallId: string;
824
904
  capabilities: {
825
905
  nodes: Record<string, {
826
906
  base: {
@@ -875,6 +955,33 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
875
955
  price: string;
876
956
  period: string;
877
957
  currency?: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON" | undefined;
958
+ amountMinor?: number | undefined;
959
+ interval?: "one_time" | "month" | "year" | "free" | "week" | undefined;
960
+ intervalCount?: number | undefined;
961
+ prepaid?: {
962
+ internalFeatureId: string;
963
+ name: string;
964
+ includedAmount: string;
965
+ reset: "month" | "year" | "week" | "hour" | "day" | "lifetime";
966
+ resetCount: number;
967
+ terms: {
968
+ units: string;
969
+ prices: {
970
+ currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
971
+ amountMinor: number;
972
+ pricing?: {
973
+ kind: "graduated" | "volume";
974
+ tiers: {
975
+ upTo: number | null;
976
+ unitAmountMinor: number;
977
+ flatAmountMinor?: number | undefined;
978
+ }[];
979
+ } | undefined;
980
+ }[];
981
+ minimumQuantity: number;
982
+ maximumQuantity: number;
983
+ };
984
+ }[] | undefined;
878
985
  }>;
879
986
  pickers: Record<string, {
880
987
  options: string[];
@@ -901,12 +1008,22 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
901
1008
  membershipId: string | null;
902
1009
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
903
1010
  amountMinor: string;
904
- interval: "free" | "month" | "year" | "week" | "one_time";
1011
+ interval: "one_time" | "month" | "year" | "free" | "week";
905
1012
  intervalCount: number;
906
1013
  }[];
907
1014
  } | null;
908
1015
  } | undefined;
1016
+ quantities?: Record<string, {
1017
+ minimum: number;
1018
+ maximum: number;
1019
+ step: number;
1020
+ value: number;
1021
+ label: string;
1022
+ available: boolean;
1023
+ }> | undefined;
909
1024
  };
1025
+ version: number;
1026
+ paywallId: string;
910
1027
  content: {
911
1028
  environmentId: string;
912
1029
  offeringVersionId: string;
@@ -965,7 +1082,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
965
1082
  lineId: string;
966
1083
  productVersionId: string;
967
1084
  productName: string;
968
- interval: "free" | "month" | "year" | "week" | "one_time";
1085
+ interval: "one_time" | "month" | "year" | "free" | "week";
969
1086
  baseAmountMinor: number;
970
1087
  seats: {
971
1088
  key: string;
@@ -1019,9 +1136,9 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1019
1136
  automaticTax: boolean;
1020
1137
  execution: {
1021
1138
  provider: "stripe";
1022
- executor: "indiana" | "merchant";
1139
+ executor: "merchant" | "indiana";
1023
1140
  accountId: string;
1024
- mode: "payment" | "subscription";
1141
+ mode: "subscription" | "payment";
1025
1142
  lineItems: {
1026
1143
  price: string | null;
1027
1144
  quantity: number;
@@ -1090,14 +1207,14 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1090
1207
  operation: {
1091
1208
  operationId: string;
1092
1209
  orderId: string;
1093
- status: "pending" | "failed" | "complete" | "cancelled";
1094
- executor: "indiana" | "merchant";
1210
+ status: "failed" | "pending" | "complete" | "cancelled";
1211
+ executor: "merchant" | "indiana";
1095
1212
  checkoutUrl: string | null;
1096
1213
  execution: {
1097
1214
  provider: "stripe";
1098
- executor: "indiana" | "merchant";
1215
+ executor: "merchant" | "indiana";
1099
1216
  accountId: string;
1100
- mode: "payment" | "subscription";
1217
+ mode: "subscription" | "payment";
1101
1218
  lineItems: {
1102
1219
  price: string | null;
1103
1220
  quantity: number;
@@ -1168,7 +1285,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1168
1285
  productVersionId: string;
1169
1286
  provider: "apple" | "google";
1170
1287
  productId: string;
1171
- productKind: "lifetime" | "membership" | "credit_pack";
1288
+ productKind: "credit_pack" | "lifetime" | "membership";
1172
1289
  replacement: {
1173
1290
  sourceOrderId: string;
1174
1291
  sourceProductId: string;
@@ -1290,7 +1407,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1290
1407
  lineId: string;
1291
1408
  productVersionId: string;
1292
1409
  productName: string;
1293
- interval: "free" | "month" | "year" | "week" | "one_time";
1410
+ interval: "one_time" | "month" | "year" | "free" | "week";
1294
1411
  baseAmountMinor: number;
1295
1412
  seats: {
1296
1413
  key: string;
@@ -1344,9 +1461,9 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1344
1461
  automaticTax: boolean;
1345
1462
  execution: {
1346
1463
  provider: "stripe";
1347
- executor: "indiana" | "merchant";
1464
+ executor: "merchant" | "indiana";
1348
1465
  accountId: string;
1349
- mode: "payment" | "subscription";
1466
+ mode: "subscription" | "payment";
1350
1467
  lineItems: {
1351
1468
  price: string | null;
1352
1469
  quantity: number;
@@ -1415,14 +1532,14 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1415
1532
  operation: {
1416
1533
  operationId: string;
1417
1534
  orderId: string;
1418
- status: "pending" | "failed" | "complete" | "cancelled";
1419
- executor: "indiana" | "merchant";
1535
+ status: "failed" | "pending" | "complete" | "cancelled";
1536
+ executor: "merchant" | "indiana";
1420
1537
  checkoutUrl: string | null;
1421
1538
  execution: {
1422
1539
  provider: "stripe";
1423
- executor: "indiana" | "merchant";
1540
+ executor: "merchant" | "indiana";
1424
1541
  accountId: string;
1425
- mode: "payment" | "subscription";
1542
+ mode: "subscription" | "payment";
1426
1543
  lineItems: {
1427
1544
  price: string | null;
1428
1545
  quantity: number;
@@ -1493,7 +1610,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1493
1610
  productVersionId: string;
1494
1611
  provider: "apple" | "google";
1495
1612
  productId: string;
1496
- productKind: "lifetime" | "membership" | "credit_pack";
1613
+ productKind: "credit_pack" | "lifetime" | "membership";
1497
1614
  replacement: {
1498
1615
  sourceOrderId: string;
1499
1616
  sourceProductId: string;
@@ -1633,7 +1750,7 @@ declare function renewFunnelRun(options: IndianaServerOptions, input: {
1633
1750
  purchases: {
1634
1751
  receiptId: string;
1635
1752
  operationId: string;
1636
- status: "unknown" | "pending" | "failed" | "complete" | "cancelled";
1753
+ status: "unknown" | "failed" | "pending" | "complete" | "cancelled";
1637
1754
  }[];
1638
1755
  } | undefined;
1639
1756
  runToken?: string | undefined;
@@ -1887,7 +2004,7 @@ declare function createFunnelLocalEvaluator(options: FunnelLocalEvaluatorOptions
1887
2004
  entry: string;
1888
2005
  nodes: {
1889
2006
  id: string;
1890
- type: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2007
+ type: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
1891
2008
  outputs: Record<string, string>;
1892
2009
  writes: Record<string, string>;
1893
2010
  resources: {
@@ -2139,7 +2256,7 @@ declare function createSynchronizedFunnelLocalEvaluator(configuration: Configura
2139
2256
  entry: string;
2140
2257
  nodes: {
2141
2258
  id: string;
2142
- type: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2259
+ type: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2143
2260
  outputs: Record<string, string>;
2144
2261
  writes: Record<string, string>;
2145
2262
  resources: {
@@ -2429,7 +2546,7 @@ declare function createFunnelDecisionClient(options: IndianaServerOptions & {
2429
2546
  entry: string;
2430
2547
  nodes: {
2431
2548
  id: string;
2432
- type: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2549
+ type: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2433
2550
  outputs: Record<string, string>;
2434
2551
  writes: Record<string, string>;
2435
2552
  resources: {
@@ -2667,7 +2784,7 @@ declare function createFunnelDecisionClient(options: IndianaServerOptions & {
2667
2784
  entry: string;
2668
2785
  nodes: {
2669
2786
  id: string;
2670
- type: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2787
+ type: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2671
2788
  outputs: Record<string, string>;
2672
2789
  writes: Record<string, string>;
2673
2790
  resources: {
@@ -2695,7 +2812,7 @@ declare function createFunnelDecisionClient(options: IndianaServerOptions & {
2695
2812
  entry: string;
2696
2813
  nodes: {
2697
2814
  id: string;
2698
- type: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2815
+ type: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
2699
2816
  outputs: Record<string, string>;
2700
2817
  writes: Record<string, string>;
2701
2818
  resources: {
@@ -3045,7 +3162,7 @@ declare function createFunnelDecisionClient(options: IndianaServerOptions & {
3045
3162
  };
3046
3163
  decisionId: string;
3047
3164
  requestId: string;
3048
- status: "pending" | "failed" | "completed";
3165
+ status: "failed" | "pending" | "completed";
3049
3166
  decision: {
3050
3167
  requestId: string;
3051
3168
  decisionId: string;
@@ -3099,7 +3216,7 @@ declare function createFunnelDecisionClient(options: IndianaServerOptions & {
3099
3216
  };
3100
3217
  decisionId: string;
3101
3218
  requestId: string;
3102
- status: "pending" | "failed" | "completed";
3219
+ status: "failed" | "pending" | "completed";
3103
3220
  decision: {
3104
3221
  requestId: string;
3105
3222
  decisionId: string;
@@ -3167,7 +3284,7 @@ declare function createNativeReceiptClient(options: IndianaServerOptions): {
3167
3284
  requestId: string;
3168
3285
  orderId: string;
3169
3286
  receiptId: string;
3170
- orderStatus: "pending" | "paid" | "failed" | "trialing" | "cancelled" | "created";
3287
+ orderStatus: "failed" | "pending" | "cancelled" | "trialing" | "paid" | "created";
3171
3288
  refunded: boolean;
3172
3289
  nativeCompletion?: {
3173
3290
  orderId: string;
@@ -3235,8 +3352,8 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3235
3352
  revision: number;
3236
3353
  visit: number;
3237
3354
  nodeId: string;
3238
- nodeType: "output" | "feature" | "split" | "action" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
3239
- status: "running" | "failed" | "completed" | "closed" | "ineligible" | "waiting";
3355
+ nodeType: "output" | "action" | "split" | "feature" | "condition" | "entry" | "coupon" | "end" | "screen" | "offering" | "coupons" | "external_page" | "wait";
3356
+ status: "failed" | "running" | "completed" | "closed" | "ineligible" | "waiting";
3240
3357
  stopped: boolean;
3241
3358
  canBack: boolean;
3242
3359
  authenticated: boolean;
@@ -3400,6 +3517,33 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3400
3517
  price: string;
3401
3518
  period: string;
3402
3519
  currency?: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON" | undefined;
3520
+ amountMinor?: number | undefined;
3521
+ interval?: "one_time" | "month" | "year" | "free" | "week" | undefined;
3522
+ intervalCount?: number | undefined;
3523
+ prepaid?: {
3524
+ internalFeatureId: string;
3525
+ name: string;
3526
+ includedAmount: string;
3527
+ reset: "month" | "year" | "week" | "hour" | "day" | "lifetime";
3528
+ resetCount: number;
3529
+ terms: {
3530
+ units: string;
3531
+ prices: {
3532
+ currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3533
+ amountMinor: number;
3534
+ pricing?: {
3535
+ kind: "graduated" | "volume";
3536
+ tiers: {
3537
+ upTo: number | null;
3538
+ unitAmountMinor: number;
3539
+ flatAmountMinor?: number | undefined;
3540
+ }[];
3541
+ } | undefined;
3542
+ }[];
3543
+ minimumQuantity: number;
3544
+ maximumQuantity: number;
3545
+ };
3546
+ }[] | undefined;
3403
3547
  }>;
3404
3548
  pickers: Record<string, {
3405
3549
  options: string[];
@@ -3426,11 +3570,19 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3426
3570
  membershipId: string | null;
3427
3571
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3428
3572
  amountMinor: string;
3429
- interval: "free" | "month" | "year" | "week" | "one_time";
3573
+ interval: "one_time" | "month" | "year" | "free" | "week";
3430
3574
  intervalCount: number;
3431
3575
  }[];
3432
3576
  } | null;
3433
3577
  } | undefined;
3578
+ quantities?: Record<string, {
3579
+ minimum: number;
3580
+ maximum: number;
3581
+ step: number;
3582
+ value: number;
3583
+ label: string;
3584
+ available: boolean;
3585
+ }> | undefined;
3434
3586
  };
3435
3587
  customerData: {
3436
3588
  nodes: Record<string, {
@@ -3518,7 +3670,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3518
3670
  cursor: {
3519
3671
  at: string;
3520
3672
  id: string;
3521
- type: "usage" | "source" | "invoice" | "debt" | "transaction" | "settlement";
3673
+ type: "invoice" | "source" | "usage" | "debt" | "transaction" | "settlement";
3522
3674
  };
3523
3675
  } | {
3524
3676
  kind: "billing";
@@ -3535,6 +3687,18 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3535
3687
  version: number;
3536
3688
  document: {
3537
3689
  kind: "paywall";
3690
+ presentation: {
3691
+ type: "modal";
3692
+ size: "sm" | "md" | "lg";
3693
+ } | {
3694
+ type: "sheet";
3695
+ size: "sm" | "md" | "lg";
3696
+ } | {
3697
+ type: "fullscreen";
3698
+ } | {
3699
+ type: "inline";
3700
+ };
3701
+ offeringVersionId: string | null;
3538
3702
  name: string;
3539
3703
  products: {
3540
3704
  items: {
@@ -3554,17 +3718,6 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3554
3718
  }[];
3555
3719
  } | undefined;
3556
3720
  };
3557
- presentation: {
3558
- type: "modal";
3559
- size: "sm" | "md" | "lg";
3560
- } | {
3561
- type: "sheet";
3562
- size: "sm" | "md" | "lg";
3563
- } | {
3564
- type: "fullscreen";
3565
- } | {
3566
- type: "inline";
3567
- };
3568
3721
  screen: {
3569
3722
  kind: "screen";
3570
3723
  schemaVersion: 4;
@@ -3645,7 +3798,6 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3645
3798
  initialPageId?: string | undefined;
3646
3799
  };
3647
3800
  schemaVersion: 3;
3648
- offeringVersionId: string | null;
3649
3801
  buttons: Record<string, {
3650
3802
  type: "checkout";
3651
3803
  product: {
@@ -3726,6 +3878,33 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3726
3878
  price: string;
3727
3879
  period: string;
3728
3880
  currency?: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON" | undefined;
3881
+ amountMinor?: number | undefined;
3882
+ interval?: "one_time" | "month" | "year" | "free" | "week" | undefined;
3883
+ intervalCount?: number | undefined;
3884
+ prepaid?: {
3885
+ internalFeatureId: string;
3886
+ name: string;
3887
+ includedAmount: string;
3888
+ reset: "month" | "year" | "week" | "hour" | "day" | "lifetime";
3889
+ resetCount: number;
3890
+ terms: {
3891
+ units: string;
3892
+ prices: {
3893
+ currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3894
+ amountMinor: number;
3895
+ pricing?: {
3896
+ kind: "graduated" | "volume";
3897
+ tiers: {
3898
+ upTo: number | null;
3899
+ unitAmountMinor: number;
3900
+ flatAmountMinor?: number | undefined;
3901
+ }[];
3902
+ } | undefined;
3903
+ }[];
3904
+ minimumQuantity: number;
3905
+ maximumQuantity: number;
3906
+ };
3907
+ }[] | undefined;
3729
3908
  }>;
3730
3909
  pickers: Record<string, {
3731
3910
  options: string[];
@@ -3752,11 +3931,19 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3752
3931
  membershipId: string | null;
3753
3932
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3754
3933
  amountMinor: string;
3755
- interval: "free" | "month" | "year" | "week" | "one_time";
3934
+ interval: "one_time" | "month" | "year" | "free" | "week";
3756
3935
  intervalCount: number;
3757
3936
  }[];
3758
3937
  } | null;
3759
3938
  } | undefined;
3939
+ quantities?: Record<string, {
3940
+ minimum: number;
3941
+ maximum: number;
3942
+ step: number;
3943
+ value: number;
3944
+ label: string;
3945
+ available: boolean;
3946
+ }> | undefined;
3760
3947
  };
3761
3948
  check: {
3762
3949
  internal_feature_id: string;
@@ -3775,7 +3962,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3775
3962
  membershipId: string | null;
3776
3963
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3777
3964
  amountMinor: string;
3778
- interval: "free" | "month" | "year" | "week" | "one_time";
3965
+ interval: "one_time" | "month" | "year" | "free" | "week";
3779
3966
  intervalCount: number;
3780
3967
  }[];
3781
3968
  } | null;
@@ -3810,14 +3997,12 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3810
3997
  membershipId: string | null;
3811
3998
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3812
3999
  amountMinor: string;
3813
- interval: "free" | "month" | "year" | "week" | "one_time";
4000
+ interval: "one_time" | "month" | "year" | "free" | "week";
3814
4001
  intervalCount: number;
3815
4002
  }[];
3816
4003
  } | null;
3817
4004
  } | null;
3818
4005
  id: string;
3819
- version: number;
3820
- paywallId: string;
3821
4006
  capabilities: {
3822
4007
  nodes: Record<string, {
3823
4008
  base: {
@@ -3872,6 +4057,33 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3872
4057
  price: string;
3873
4058
  period: string;
3874
4059
  currency?: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON" | undefined;
4060
+ amountMinor?: number | undefined;
4061
+ interval?: "one_time" | "month" | "year" | "free" | "week" | undefined;
4062
+ intervalCount?: number | undefined;
4063
+ prepaid?: {
4064
+ internalFeatureId: string;
4065
+ name: string;
4066
+ includedAmount: string;
4067
+ reset: "month" | "year" | "week" | "hour" | "day" | "lifetime";
4068
+ resetCount: number;
4069
+ terms: {
4070
+ units: string;
4071
+ prices: {
4072
+ currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
4073
+ amountMinor: number;
4074
+ pricing?: {
4075
+ kind: "graduated" | "volume";
4076
+ tiers: {
4077
+ upTo: number | null;
4078
+ unitAmountMinor: number;
4079
+ flatAmountMinor?: number | undefined;
4080
+ }[];
4081
+ } | undefined;
4082
+ }[];
4083
+ minimumQuantity: number;
4084
+ maximumQuantity: number;
4085
+ };
4086
+ }[] | undefined;
3875
4087
  }>;
3876
4088
  pickers: Record<string, {
3877
4089
  options: string[];
@@ -3898,12 +4110,22 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3898
4110
  membershipId: string | null;
3899
4111
  currency: "USD" | "EUR" | "CNY" | "GBP" | "JPY" | "CAD" | "AUD" | "NZD" | "CHF" | "HKD" | "SGD" | "KRW" | "INR" | "BRL" | "MXN" | "TWD" | "THB" | "IDR" | "MYR" | "PHP" | "VND" | "ZAR" | "AED" | "SAR" | "SEK" | "NOK" | "DKK" | "PLN" | "CZK" | "HUF" | "ILS" | "TRY" | "RON";
3900
4112
  amountMinor: string;
3901
- interval: "free" | "month" | "year" | "week" | "one_time";
4113
+ interval: "one_time" | "month" | "year" | "free" | "week";
3902
4114
  intervalCount: number;
3903
4115
  }[];
3904
4116
  } | null;
3905
4117
  } | undefined;
4118
+ quantities?: Record<string, {
4119
+ minimum: number;
4120
+ maximum: number;
4121
+ step: number;
4122
+ value: number;
4123
+ label: string;
4124
+ available: boolean;
4125
+ }> | undefined;
3906
4126
  };
4127
+ version: number;
4128
+ paywallId: string;
3907
4129
  content: {
3908
4130
  environmentId: string;
3909
4131
  offeringVersionId: string;
@@ -3962,7 +4184,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
3962
4184
  lineId: string;
3963
4185
  productVersionId: string;
3964
4186
  productName: string;
3965
- interval: "free" | "month" | "year" | "week" | "one_time";
4187
+ interval: "one_time" | "month" | "year" | "free" | "week";
3966
4188
  baseAmountMinor: number;
3967
4189
  seats: {
3968
4190
  key: string;
@@ -4016,9 +4238,9 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4016
4238
  automaticTax: boolean;
4017
4239
  execution: {
4018
4240
  provider: "stripe";
4019
- executor: "indiana" | "merchant";
4241
+ executor: "merchant" | "indiana";
4020
4242
  accountId: string;
4021
- mode: "payment" | "subscription";
4243
+ mode: "subscription" | "payment";
4022
4244
  lineItems: {
4023
4245
  price: string | null;
4024
4246
  quantity: number;
@@ -4087,14 +4309,14 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4087
4309
  operation: {
4088
4310
  operationId: string;
4089
4311
  orderId: string;
4090
- status: "pending" | "failed" | "complete" | "cancelled";
4091
- executor: "indiana" | "merchant";
4312
+ status: "failed" | "pending" | "complete" | "cancelled";
4313
+ executor: "merchant" | "indiana";
4092
4314
  checkoutUrl: string | null;
4093
4315
  execution: {
4094
4316
  provider: "stripe";
4095
- executor: "indiana" | "merchant";
4317
+ executor: "merchant" | "indiana";
4096
4318
  accountId: string;
4097
- mode: "payment" | "subscription";
4319
+ mode: "subscription" | "payment";
4098
4320
  lineItems: {
4099
4321
  price: string | null;
4100
4322
  quantity: number;
@@ -4165,7 +4387,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4165
4387
  productVersionId: string;
4166
4388
  provider: "apple" | "google";
4167
4389
  productId: string;
4168
- productKind: "lifetime" | "membership" | "credit_pack";
4390
+ productKind: "credit_pack" | "lifetime" | "membership";
4169
4391
  replacement: {
4170
4392
  sourceOrderId: string;
4171
4393
  sourceProductId: string;
@@ -4287,7 +4509,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4287
4509
  lineId: string;
4288
4510
  productVersionId: string;
4289
4511
  productName: string;
4290
- interval: "free" | "month" | "year" | "week" | "one_time";
4512
+ interval: "one_time" | "month" | "year" | "free" | "week";
4291
4513
  baseAmountMinor: number;
4292
4514
  seats: {
4293
4515
  key: string;
@@ -4341,9 +4563,9 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4341
4563
  automaticTax: boolean;
4342
4564
  execution: {
4343
4565
  provider: "stripe";
4344
- executor: "indiana" | "merchant";
4566
+ executor: "merchant" | "indiana";
4345
4567
  accountId: string;
4346
- mode: "payment" | "subscription";
4568
+ mode: "subscription" | "payment";
4347
4569
  lineItems: {
4348
4570
  price: string | null;
4349
4571
  quantity: number;
@@ -4412,14 +4634,14 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4412
4634
  operation: {
4413
4635
  operationId: string;
4414
4636
  orderId: string;
4415
- status: "pending" | "failed" | "complete" | "cancelled";
4416
- executor: "indiana" | "merchant";
4637
+ status: "failed" | "pending" | "complete" | "cancelled";
4638
+ executor: "merchant" | "indiana";
4417
4639
  checkoutUrl: string | null;
4418
4640
  execution: {
4419
4641
  provider: "stripe";
4420
- executor: "indiana" | "merchant";
4642
+ executor: "merchant" | "indiana";
4421
4643
  accountId: string;
4422
- mode: "payment" | "subscription";
4644
+ mode: "subscription" | "payment";
4423
4645
  lineItems: {
4424
4646
  price: string | null;
4425
4647
  quantity: number;
@@ -4490,7 +4712,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4490
4712
  productVersionId: string;
4491
4713
  provider: "apple" | "google";
4492
4714
  productId: string;
4493
- productKind: "lifetime" | "membership" | "credit_pack";
4715
+ productKind: "credit_pack" | "lifetime" | "membership";
4494
4716
  replacement: {
4495
4717
  sourceOrderId: string;
4496
4718
  sourceProductId: string;
@@ -4630,7 +4852,7 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4630
4852
  purchases: {
4631
4853
  receiptId: string;
4632
4854
  operationId: string;
4633
- status: "unknown" | "pending" | "failed" | "complete" | "cancelled";
4855
+ status: "unknown" | "failed" | "pending" | "complete" | "cancelled";
4634
4856
  }[];
4635
4857
  } | undefined;
4636
4858
  runToken?: string | undefined;
@@ -4646,4 +4868,42 @@ declare function createFunnelCampaignClient(options: IndianaServerOptions & {
4646
4868
  }>;
4647
4869
  };
4648
4870
 
4649
- export { ConfigurationSync, FeatureClientOptions, type FunnelDecisionInput, FunnelDecisionTimeoutError, type FunnelDecisionUsedInput, type FunnelLocalEvaluation, type FunnelLocalEvaluator, type FunnelLocalEvaluatorOptions, type FunnelLocalSession, type FunnelLocalSessionOptions, type FunnelSignalInput, IndianaError, IndianaServerOptions, createFunnelCampaignClient, createFunnelDecisionClient, createFunnelLocalEvaluator, createFunnelOrchestrationClient, createGuestToken, createIndianaServer, createNativeReceiptClient, createPaywallStartClient, createSynchronizedFunnelLocalEvaluator, renewFunnelRun };
4871
+ type BusinessCommand = Exclude<MerchantBridgeCommand, "bridge.ping" | "bridge.describe">;
4872
+ type MerchantBridgePrincipal = {
4873
+ kind: "user";
4874
+ nativeUserId: string;
4875
+ customerId?: string;
4876
+ } | {
4877
+ kind: "administrator";
4878
+ actorId: string;
4879
+ } | {
4880
+ kind: "service";
4881
+ };
4882
+ type MerchantBridgeHandlerContext = {
4883
+ request: Request;
4884
+ command: BusinessCommand;
4885
+ scope: MerchantBridgeRequest["scope"];
4886
+ principal: MerchantBridgePrincipal;
4887
+ };
4888
+ type MerchantBridgeHandlers = {
4889
+ [C in BusinessCommand]?: (data: z.output<(typeof merchantBridgeCommandInputs)[C]>, context: MerchantBridgeHandlerContext) => z.input<(typeof merchantBridgeCommandOutputs)[C]> | Promise<z.input<(typeof merchantBridgeCommandOutputs)[C]>>;
4890
+ };
4891
+ type MerchantBridgeHandlerOptions = {
4892
+ manifest: MerchantBridgeManifest;
4893
+ /** Keep active and, during rotation, previously accepted keys on the merchant backend. */
4894
+ authentication: readonly MerchantBridgeAuthentication[];
4895
+ /** Existing native login/CSRF/admin authorization. A service signature never substitutes for this. */
4896
+ authorize: (request: Request, input: MerchantBridgeRequest) => Promise<MerchantBridgePrincipal>;
4897
+ handlers: MerchantBridgeHandlers;
4898
+ };
4899
+ declare class MerchantBridgeHandlerError extends Error {
4900
+ readonly code: string;
4901
+ readonly status: number;
4902
+ readonly retryable: boolean;
4903
+ readonly recovery: string;
4904
+ constructor(code: string, status?: number, retryable?: boolean, recovery?: string);
4905
+ }
4906
+ /** Framework-independent Request → Response receiver for one fixed POST path. */
4907
+ declare function createMerchantBridgeHandler(options: MerchantBridgeHandlerOptions): (request: Request) => Promise<Response>;
4908
+
4909
+ export { ConfigurationSync, FeatureClientOptions, type FunnelDecisionInput, FunnelDecisionTimeoutError, type FunnelDecisionUsedInput, type FunnelLocalEvaluation, type FunnelLocalEvaluator, type FunnelLocalEvaluatorOptions, type FunnelLocalSession, type FunnelLocalSessionOptions, type FunnelSignalInput, IndianaError, IndianaServerOptions, type MerchantBridgeAuthentication, type MerchantBridgeHandlerContext, MerchantBridgeHandlerError, type MerchantBridgeHandlerOptions, type MerchantBridgeHandlers, type MerchantBridgePrincipal, createFunnelCampaignClient, createFunnelDecisionClient, createFunnelLocalEvaluator, createFunnelOrchestrationClient, createGuestToken, createIndianaServer, createMerchantBridgeHandler, createNativeReceiptClient, createPaywallStartClient, createSynchronizedFunnelLocalEvaluator, renewFunnelRun, signMerchantBridgeMessage, verifyMerchantBridgeMessage };