@leaflow/sdk 0.138.0 → 0.140.0

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 (49) hide show
  1. package/dist/billing/type/order/v1/generated/models.d.ts +17 -1
  2. package/dist/billing/type/order/v1/generated/models.js +7 -0
  3. package/dist/billing/type/order/v1/generated/validators/order.zod.d.ts +1 -0
  4. package/dist/billing/type/order/v1/generated/validators/orderItem.zod.d.ts +1 -0
  5. package/dist/billing/type/order/v1/generated/validators/orderItem.zod.js +4 -0
  6. package/dist/billing/type/order/v1/generated/validators/orderItemList.zod.d.ts +1 -0
  7. package/dist/billing/type/order/v1/generated/validators/orderList.zod.d.ts +1 -0
  8. package/dist/billing/type/order/v1/generated/validators/subscription.zod.d.ts +8 -1
  9. package/dist/billing/type/order/v1/generated/validators/subscription.zod.js +9 -1
  10. package/dist/billing/type/order/v1/generated/validators/subscriptionList.zod.d.ts +8 -1
  11. package/dist/billing/type/order/v1/generated/validators/subscriptionRestriction.zod.d.ts +17 -0
  12. package/dist/billing/type/order/v1/generated/validators/subscriptionRestriction.zod.js +17 -0
  13. package/dist/billing/v1/generated/models.d.ts +17 -1
  14. package/dist/billing/v1/generated/models.js +7 -0
  15. package/dist/billing/v1/generated/validators/order.zod.d.ts +1 -0
  16. package/dist/billing/v1/generated/validators/orderItem.zod.d.ts +1 -0
  17. package/dist/billing/v1/generated/validators/orderItem.zod.js +4 -0
  18. package/dist/billing/v1/generated/validators/orderItemList.zod.d.ts +1 -0
  19. package/dist/billing/v1/generated/validators/orderList.zod.d.ts +1 -0
  20. package/dist/billing/v1/generated/validators/subscription.zod.d.ts +8 -1
  21. package/dist/billing/v1/generated/validators/subscription.zod.js +9 -1
  22. package/dist/billing/v1/generated/validators/subscriptionList.zod.d.ts +8 -1
  23. package/dist/billing/v1/generated/validators/subscriptionRestriction.zod.d.ts +17 -0
  24. package/dist/billing/v1/generated/validators/subscriptionRestriction.zod.js +17 -0
  25. package/dist/canopy/v1/generated/models.d.ts +17 -1
  26. package/dist/canopy/v1/generated/models.js +7 -0
  27. package/dist/canopy/v1/generated/validators/order.zod.d.ts +1 -0
  28. package/dist/canopy/v1/generated/validators/orderItem.zod.d.ts +1 -0
  29. package/dist/canopy/v1/generated/validators/orderItem.zod.js +4 -0
  30. package/dist/canopy/v1/generated/validators/orderItemList.zod.d.ts +1 -0
  31. package/dist/canopy/v1/generated/validators/orderList.zod.d.ts +1 -0
  32. package/dist/canopy/v1/generated/validators/subscription.zod.d.ts +8 -1
  33. package/dist/canopy/v1/generated/validators/subscription.zod.js +9 -1
  34. package/dist/canopy/v1/generated/validators/subscriptionList.zod.d.ts +8 -1
  35. package/dist/canopy/v1/generated/validators/subscriptionRestriction.zod.d.ts +40 -0
  36. package/dist/canopy/v1/generated/validators/subscriptionRestriction.zod.js +40 -0
  37. package/dist/membership/v1/generated/models.d.ts +17 -1
  38. package/dist/membership/v1/generated/models.js +7 -0
  39. package/dist/membership/v1/generated/validators/order.zod.d.ts +1 -0
  40. package/dist/membership/v1/generated/validators/orderItem.zod.d.ts +1 -0
  41. package/dist/membership/v1/generated/validators/orderItem.zod.js +4 -0
  42. package/dist/membership/v1/generated/validators/orderItemList.zod.d.ts +1 -0
  43. package/dist/membership/v1/generated/validators/orderList.zod.d.ts +1 -0
  44. package/dist/membership/v1/generated/validators/subscription.zod.d.ts +8 -1
  45. package/dist/membership/v1/generated/validators/subscription.zod.js +9 -1
  46. package/dist/membership/v1/generated/validators/subscriptionList.zod.d.ts +8 -1
  47. package/dist/membership/v1/generated/validators/subscriptionRestriction.zod.d.ts +17 -0
  48. package/dist/membership/v1/generated/validators/subscriptionRestriction.zod.js +17 -0
  49. package/package.json +1 -1
@@ -1898,6 +1898,17 @@ export declare const SubscriptionInterval: {
1898
1898
  readonly month: "month";
1899
1899
  readonly year: "year";
1900
1900
  };
1901
+ /**
1902
+ * An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.
1903
+ */
1904
+ export type SubscriptionRestriction = (typeof SubscriptionRestriction)[keyof typeof SubscriptionRestriction];
1905
+ export declare const SubscriptionRestriction: {
1906
+ readonly billingsubscriptionsuse: "billing.subscriptions.use";
1907
+ readonly billingsubscriptionsrenew: "billing.subscriptions.renew";
1908
+ readonly billingsubscriptionsmodify: "billing.subscriptions.modify";
1909
+ readonly billingsubscriptionscancel: "billing.subscriptions.cancel";
1910
+ readonly billingsubscriptionsterminate: "billing.subscriptions.terminate";
1911
+ };
1901
1912
  /**
1902
1913
  * Follows the items. `pending` is not yet accepted and may be unpaid or paid; its invoice shows
1903
1914
  * whether payment is still needed, and it can expire or be canceled. `accepted` is accepted with items still
@@ -1982,6 +1993,8 @@ export declare const SubscriptionStatus: {
1982
1993
  * the owning service enforces current holdings against the purchased count.
1983
1994
  */
1984
1995
  export interface Subscription {
1996
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
1997
+ renewal_discounts_enabled?: boolean;
1985
1998
  currency: string;
1986
1999
  charge_type: SubscriptionChargeType;
1987
2000
  interval: SubscriptionInterval;
@@ -2000,7 +2013,8 @@ export interface Subscription {
2000
2013
  coupon?: ObjectIdentity;
2001
2014
  /** @minimum 0 */
2002
2015
  discounted_renewals_remaining?: number;
2003
- suspend_reason?: string;
2016
+ /** The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use. */
2017
+ restrictions?: SubscriptionRestriction[];
2004
2018
  billing_cycle_anchor?: string;
2005
2019
  cancellation?: SubscriptionCancellation;
2006
2020
  /** The accepted period-end change currently scheduled for this subscription. Null when no such change exists. */
@@ -2259,6 +2273,8 @@ export type OrderItemConfiguration = {
2259
2273
  * purchase creates its pending subscription when this item is recorded, not when payment succeeds.
2260
2274
  */
2261
2275
  export interface OrderItem {
2276
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
2277
+ renewal_discounts_enabled?: boolean;
2262
2278
  /** Financial lines produced by this purchase item, including setup charges. */
2263
2279
  invoice_item_ids?: string[];
2264
2280
  /** @minimum 0 */
@@ -220,6 +220,13 @@ export const SubscriptionInterval = {
220
220
  month: "month",
221
221
  year: "year",
222
222
  };
223
+ export const SubscriptionRestriction = {
224
+ billingsubscriptionsuse: "billing.subscriptions.use",
225
+ billingsubscriptionsrenew: "billing.subscriptions.renew",
226
+ billingsubscriptionsmodify: "billing.subscriptions.modify",
227
+ billingsubscriptionscancel: "billing.subscriptions.cancel",
228
+ billingsubscriptionsterminate: "billing.subscriptions.terminate",
229
+ };
223
230
  export const OrderStatus = {
224
231
  pending: "pending",
225
232
  accepted: "accepted",
@@ -81,6 +81,7 @@ export declare const Order: zod.ZodObject<{
81
81
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
82
82
  created_at: zod.z.ZodISODateTime;
83
83
  items: zod.ZodArray<zod.ZodObject<{
84
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
84
85
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
85
86
  position: zod.ZodOptional<zod.ZodInt>;
86
87
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const orderItemPositionMin = 0;
10
10
  export declare const OrderItem: zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
12
13
  position: zod.ZodOptional<zod.ZodInt>;
13
14
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -15,6 +15,10 @@ import { TerminationPolicy } from "./terminationPolicy.zod.js";
15
15
  export const orderItemPositionMin = 0;
16
16
  export const OrderItem = zod
17
17
  .strictObject({
18
+ renewal_discounts_enabled: zod
19
+ .boolean()
20
+ .optional()
21
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
18
22
  invoice_item_ids: zod
19
23
  .array(zod.uuid())
20
24
  .optional()
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const OrderItemList: zod.ZodObject<{
10
10
  items: zod.ZodArray<zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
12
13
  position: zod.ZodOptional<zod.ZodInt>;
13
14
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -82,6 +82,7 @@ export declare const OrderList: zod.ZodObject<{
82
82
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
83
83
  created_at: zod.z.ZodISODateTime;
84
84
  items: zod.ZodArray<zod.ZodObject<{
85
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
85
86
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
86
87
  position: zod.ZodOptional<zod.ZodInt>;
87
88
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const subscriptionDiscountedRenewalsRemainingMin = 0;
10
10
  export declare const Subscription: zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  currency: zod.ZodString;
12
13
  charge_type: zod.ZodEnum<{
13
14
  postpaid: "postpaid";
@@ -38,7 +39,13 @@ export declare const Subscription: zod.ZodObject<{
38
39
  name: zod.ZodString;
39
40
  }, zod.z.core.$strict>>;
40
41
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
41
- suspend_reason: zod.ZodOptional<zod.ZodString>;
42
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
43
+ "billing.subscriptions.use": "billing.subscriptions.use";
44
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
45
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
46
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
47
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
48
+ }>>>;
42
49
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
43
50
  cancellation: zod.ZodOptional<zod.ZodObject<{
44
51
  reason: zod.ZodOptional<zod.ZodString>;
@@ -14,10 +14,15 @@ import { ProductID } from "./productID.zod.js";
14
14
  import { RefundPolicy } from "./refundPolicy.zod.js";
15
15
  import { ScheduledChange } from "./scheduledChange.zod.js";
16
16
  import { SubscriptionCancellation } from "./subscriptionCancellation.zod.js";
17
+ import { SubscriptionRestriction } from "./subscriptionRestriction.zod.js";
17
18
  import { TerminationPolicy } from "./terminationPolicy.zod.js";
18
19
  export const subscriptionDiscountedRenewalsRemainingMin = 0;
19
20
  export const Subscription = zod
20
21
  .strictObject({
22
+ renewal_discounts_enabled: zod
23
+ .boolean()
24
+ .optional()
25
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
21
26
  currency: zod.string(),
22
27
  charge_type: zod.enum(["postpaid", "prepaid", "one_time"]),
23
28
  interval: zod.enum(["none", "day", "month", "year"]),
@@ -35,7 +40,10 @@ export const Subscription = zod
35
40
  .int()
36
41
  .min(subscriptionDiscountedRenewalsRemainingMin)
37
42
  .optional(),
38
- suspend_reason: zod.string().optional(),
43
+ restrictions: zod
44
+ .array(SubscriptionRestriction)
45
+ .optional()
46
+ .describe("The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use."),
39
47
  billing_cycle_anchor: zod.iso.datetime({ offset: true }).optional(),
40
48
  cancellation: SubscriptionCancellation.optional(),
41
49
  scheduled_change: zod
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const SubscriptionList: zod.ZodObject<{
10
10
  items: zod.ZodArray<zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  currency: zod.ZodString;
12
13
  charge_type: zod.ZodEnum<{
13
14
  postpaid: "postpaid";
@@ -38,7 +39,13 @@ export declare const SubscriptionList: zod.ZodObject<{
38
39
  name: zod.ZodString;
39
40
  }, zod.z.core.$strict>>;
40
41
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
41
- suspend_reason: zod.ZodOptional<zod.ZodString>;
42
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
43
+ "billing.subscriptions.use": "billing.subscriptions.use";
44
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
45
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
46
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
47
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
48
+ }>>>;
42
49
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
43
50
  cancellation: zod.ZodOptional<zod.ZodObject<{
44
51
  reason: zod.ZodOptional<zod.ZodString>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Billing Order Types
5
+ * The Billing order a product purchase placed. Types only; this document declares no operations.
6
+ * OpenAPI spec version: v1
7
+ */
8
+ import * as zod from "zod";
9
+ export declare const SubscriptionRestriction: zod.ZodEnum<{
10
+ "billing.subscriptions.use": "billing.subscriptions.use";
11
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
12
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
13
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
14
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
15
+ }>;
16
+ export type SubscriptionRestriction = zod.input<typeof SubscriptionRestriction>;
17
+ export type SubscriptionRestrictionOutput = zod.output<typeof SubscriptionRestriction>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Billing Order Types
5
+ * The Billing order a product purchase placed. Types only; this document declares no operations.
6
+ * OpenAPI spec version: v1
7
+ */
8
+ import * as zod from "zod";
9
+ export const SubscriptionRestriction = zod
10
+ .enum([
11
+ "billing.subscriptions.use",
12
+ "billing.subscriptions.renew",
13
+ "billing.subscriptions.modify",
14
+ "billing.subscriptions.cancel",
15
+ "billing.subscriptions.terminate",
16
+ ])
17
+ .describe("An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.");
@@ -1684,6 +1684,17 @@ export declare const SubscriptionInterval: {
1684
1684
  readonly month: "month";
1685
1685
  readonly year: "year";
1686
1686
  };
1687
+ /**
1688
+ * An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.
1689
+ */
1690
+ export type SubscriptionRestriction = (typeof SubscriptionRestriction)[keyof typeof SubscriptionRestriction];
1691
+ export declare const SubscriptionRestriction: {
1692
+ readonly billingsubscriptionsuse: "billing.subscriptions.use";
1693
+ readonly billingsubscriptionsrenew: "billing.subscriptions.renew";
1694
+ readonly billingsubscriptionsmodify: "billing.subscriptions.modify";
1695
+ readonly billingsubscriptionscancel: "billing.subscriptions.cancel";
1696
+ readonly billingsubscriptionsterminate: "billing.subscriptions.terminate";
1697
+ };
1687
1698
  /**
1688
1699
  * Follows the items. `pending` is not yet accepted and may be unpaid or paid; its invoice shows
1689
1700
  * whether payment is still needed, and it can expire or be canceled. `accepted` is accepted with items still
@@ -1768,6 +1779,8 @@ export declare const SubscriptionStatus: {
1768
1779
  * the owning service enforces current holdings against the purchased count.
1769
1780
  */
1770
1781
  export interface Subscription {
1782
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
1783
+ renewal_discounts_enabled?: boolean;
1771
1784
  currency: string;
1772
1785
  charge_type: SubscriptionChargeType;
1773
1786
  interval: SubscriptionInterval;
@@ -1786,7 +1799,8 @@ export interface Subscription {
1786
1799
  coupon?: ObjectIdentity;
1787
1800
  /** @minimum 0 */
1788
1801
  discounted_renewals_remaining?: number;
1789
- suspend_reason?: string;
1802
+ /** The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use. */
1803
+ restrictions?: SubscriptionRestriction[];
1790
1804
  billing_cycle_anchor?: string;
1791
1805
  cancellation?: SubscriptionCancellation;
1792
1806
  /** The accepted period-end change currently scheduled for this subscription. Null when no such change exists. */
@@ -2079,6 +2093,8 @@ export type OrderItemConfiguration = {
2079
2093
  * purchase creates its pending subscription when this item is recorded, not when payment succeeds.
2080
2094
  */
2081
2095
  export interface OrderItem {
2096
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
2097
+ renewal_discounts_enabled?: boolean;
2082
2098
  /** Financial lines produced by this purchase item, including setup charges. */
2083
2099
  invoice_item_ids?: string[];
2084
2100
  /** @minimum 0 */
@@ -206,6 +206,13 @@ export const SubscriptionInterval = {
206
206
  month: "month",
207
207
  year: "year",
208
208
  };
209
+ export const SubscriptionRestriction = {
210
+ billingsubscriptionsuse: "billing.subscriptions.use",
211
+ billingsubscriptionsrenew: "billing.subscriptions.renew",
212
+ billingsubscriptionsmodify: "billing.subscriptions.modify",
213
+ billingsubscriptionscancel: "billing.subscriptions.cancel",
214
+ billingsubscriptionsterminate: "billing.subscriptions.terminate",
215
+ };
209
216
  export const OrderStatus = {
210
217
  pending: "pending",
211
218
  accepted: "accepted",
@@ -81,6 +81,7 @@ export declare const Order: zod.ZodObject<{
81
81
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
82
82
  created_at: zod.z.ZodISODateTime;
83
83
  items: zod.ZodArray<zod.ZodObject<{
84
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
84
85
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
85
86
  position: zod.ZodOptional<zod.ZodInt>;
86
87
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const orderItemPositionMin = 0;
10
10
  export declare const OrderItem: zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
12
13
  position: zod.ZodOptional<zod.ZodInt>;
13
14
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -15,6 +15,10 @@ import { TerminationPolicy } from "./terminationPolicy.zod.js";
15
15
  export const orderItemPositionMin = 0;
16
16
  export const OrderItem = zod
17
17
  .strictObject({
18
+ renewal_discounts_enabled: zod
19
+ .boolean()
20
+ .optional()
21
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
18
22
  invoice_item_ids: zod
19
23
  .array(zod.uuid())
20
24
  .optional()
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const OrderItemList: zod.ZodObject<{
10
10
  items: zod.ZodArray<zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
12
13
  position: zod.ZodOptional<zod.ZodInt>;
13
14
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -82,6 +82,7 @@ export declare const OrderList: zod.ZodObject<{
82
82
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
83
83
  created_at: zod.z.ZodISODateTime;
84
84
  items: zod.ZodArray<zod.ZodObject<{
85
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
85
86
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
86
87
  position: zod.ZodOptional<zod.ZodInt>;
87
88
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const subscriptionDiscountedRenewalsRemainingMin = 0;
10
10
  export declare const Subscription: zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  currency: zod.ZodString;
12
13
  charge_type: zod.ZodEnum<{
13
14
  postpaid: "postpaid";
@@ -38,7 +39,13 @@ export declare const Subscription: zod.ZodObject<{
38
39
  name: zod.ZodString;
39
40
  }, zod.z.core.$strict>>;
40
41
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
41
- suspend_reason: zod.ZodOptional<zod.ZodString>;
42
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
43
+ "billing.subscriptions.use": "billing.subscriptions.use";
44
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
45
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
46
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
47
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
48
+ }>>>;
42
49
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
43
50
  cancellation: zod.ZodOptional<zod.ZodObject<{
44
51
  reason: zod.ZodOptional<zod.ZodString>;
@@ -14,10 +14,15 @@ import { ProductID } from "./productID.zod.js";
14
14
  import { RefundPolicy } from "./refundPolicy.zod.js";
15
15
  import { ScheduledChange } from "./scheduledChange.zod.js";
16
16
  import { SubscriptionCancellation } from "./subscriptionCancellation.zod.js";
17
+ import { SubscriptionRestriction } from "./subscriptionRestriction.zod.js";
17
18
  import { TerminationPolicy } from "./terminationPolicy.zod.js";
18
19
  export const subscriptionDiscountedRenewalsRemainingMin = 0;
19
20
  export const Subscription = zod
20
21
  .strictObject({
22
+ renewal_discounts_enabled: zod
23
+ .boolean()
24
+ .optional()
25
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
21
26
  currency: zod.string(),
22
27
  charge_type: zod.enum(["postpaid", "prepaid", "one_time"]),
23
28
  interval: zod.enum(["none", "day", "month", "year"]),
@@ -35,7 +40,10 @@ export const Subscription = zod
35
40
  .int()
36
41
  .min(subscriptionDiscountedRenewalsRemainingMin)
37
42
  .optional(),
38
- suspend_reason: zod.string().optional(),
43
+ restrictions: zod
44
+ .array(SubscriptionRestriction)
45
+ .optional()
46
+ .describe("The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use."),
39
47
  billing_cycle_anchor: zod.iso.datetime({ offset: true }).optional(),
40
48
  cancellation: SubscriptionCancellation.optional(),
41
49
  scheduled_change: zod
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const SubscriptionList: zod.ZodObject<{
10
10
  items: zod.ZodArray<zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  currency: zod.ZodString;
12
13
  charge_type: zod.ZodEnum<{
13
14
  postpaid: "postpaid";
@@ -38,7 +39,13 @@ export declare const SubscriptionList: zod.ZodObject<{
38
39
  name: zod.ZodString;
39
40
  }, zod.z.core.$strict>>;
40
41
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
41
- suspend_reason: zod.ZodOptional<zod.ZodString>;
42
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
43
+ "billing.subscriptions.use": "billing.subscriptions.use";
44
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
45
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
46
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
47
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
48
+ }>>>;
42
49
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
43
50
  cancellation: zod.ZodOptional<zod.ZodObject<{
44
51
  reason: zod.ZodOptional<zod.ZodString>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Billing API
5
+ * Products, prices, orders, subscriptions and account billing. Financial operations require an account access token and billing-account authorization. Public catalogue operations declare no security requirement.
6
+ * OpenAPI spec version: v1
7
+ */
8
+ import * as zod from "zod";
9
+ export declare const SubscriptionRestriction: zod.ZodEnum<{
10
+ "billing.subscriptions.use": "billing.subscriptions.use";
11
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
12
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
13
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
14
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
15
+ }>;
16
+ export type SubscriptionRestriction = zod.input<typeof SubscriptionRestriction>;
17
+ export type SubscriptionRestrictionOutput = zod.output<typeof SubscriptionRestriction>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Billing API
5
+ * Products, prices, orders, subscriptions and account billing. Financial operations require an account access token and billing-account authorization. Public catalogue operations declare no security requirement.
6
+ * OpenAPI spec version: v1
7
+ */
8
+ import * as zod from "zod";
9
+ export const SubscriptionRestriction = zod
10
+ .enum([
11
+ "billing.subscriptions.use",
12
+ "billing.subscriptions.renew",
13
+ "billing.subscriptions.modify",
14
+ "billing.subscriptions.cancel",
15
+ "billing.subscriptions.terminate",
16
+ ])
17
+ .describe("An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.");
@@ -2371,6 +2371,17 @@ export declare const SubscriptionInterval: {
2371
2371
  readonly month: "month";
2372
2372
  readonly year: "year";
2373
2373
  };
2374
+ /**
2375
+ * An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.
2376
+ */
2377
+ export type SubscriptionRestriction = (typeof SubscriptionRestriction)[keyof typeof SubscriptionRestriction];
2378
+ export declare const SubscriptionRestriction: {
2379
+ readonly billingsubscriptionsuse: "billing.subscriptions.use";
2380
+ readonly billingsubscriptionsrenew: "billing.subscriptions.renew";
2381
+ readonly billingsubscriptionsmodify: "billing.subscriptions.modify";
2382
+ readonly billingsubscriptionscancel: "billing.subscriptions.cancel";
2383
+ readonly billingsubscriptionsterminate: "billing.subscriptions.terminate";
2384
+ };
2374
2385
  /**
2375
2386
  * Follows the items. `pending` is not yet accepted and may be unpaid or paid; its invoice shows
2376
2387
  * whether payment is still needed, and it can expire or be canceled. `accepted` is accepted with items still
@@ -2455,6 +2466,8 @@ export declare const SubscriptionStatus: {
2455
2466
  * the owning service enforces current holdings against the purchased count.
2456
2467
  */
2457
2468
  export interface Subscription {
2469
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
2470
+ renewal_discounts_enabled?: boolean;
2458
2471
  currency: string;
2459
2472
  charge_type: SubscriptionChargeType;
2460
2473
  interval: SubscriptionInterval;
@@ -2473,7 +2486,8 @@ export interface Subscription {
2473
2486
  coupon?: ObjectIdentity;
2474
2487
  /** @minimum 0 */
2475
2488
  discounted_renewals_remaining?: number;
2476
- suspend_reason?: string;
2489
+ /** The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use. */
2490
+ restrictions?: SubscriptionRestriction[];
2477
2491
  billing_cycle_anchor?: string;
2478
2492
  cancellation?: SubscriptionCancellation;
2479
2493
  /** The accepted period-end change currently scheduled for this subscription. Null when no such change exists. */
@@ -2732,6 +2746,8 @@ export type OrderItemConfiguration = {
2732
2746
  * purchase creates its pending subscription when this item is recorded, not when payment succeeds.
2733
2747
  */
2734
2748
  export interface OrderItem {
2749
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
2750
+ renewal_discounts_enabled?: boolean;
2735
2751
  /** Financial lines produced by this purchase item, including setup charges. */
2736
2752
  invoice_item_ids?: string[];
2737
2753
  /** @minimum 0 */
@@ -269,6 +269,13 @@ export const SubscriptionInterval = {
269
269
  month: "month",
270
270
  year: "year",
271
271
  };
272
+ export const SubscriptionRestriction = {
273
+ billingsubscriptionsuse: "billing.subscriptions.use",
274
+ billingsubscriptionsrenew: "billing.subscriptions.renew",
275
+ billingsubscriptionsmodify: "billing.subscriptions.modify",
276
+ billingsubscriptionscancel: "billing.subscriptions.cancel",
277
+ billingsubscriptionsterminate: "billing.subscriptions.terminate",
278
+ };
272
279
  export const OrderStatus = {
273
280
  pending: "pending",
274
281
  accepted: "accepted",
@@ -104,6 +104,7 @@ export declare const Order: zod.ZodObject<{
104
104
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
105
105
  created_at: zod.z.ZodISODateTime;
106
106
  items: zod.ZodArray<zod.ZodObject<{
107
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
107
108
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
108
109
  position: zod.ZodOptional<zod.ZodInt>;
109
110
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -31,6 +31,7 @@
31
31
  import * as zod from "zod";
32
32
  export declare const orderItemPositionMin = 0;
33
33
  export declare const OrderItem: zod.ZodObject<{
34
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
34
35
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
35
36
  position: zod.ZodOptional<zod.ZodInt>;
36
37
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -38,6 +38,10 @@ import { TerminationPolicy } from "./terminationPolicy.zod.js";
38
38
  export const orderItemPositionMin = 0;
39
39
  export const OrderItem = zod
40
40
  .strictObject({
41
+ renewal_discounts_enabled: zod
42
+ .boolean()
43
+ .optional()
44
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
41
45
  invoice_item_ids: zod
42
46
  .array(zod.uuid())
43
47
  .optional()
@@ -31,6 +31,7 @@
31
31
  import * as zod from "zod";
32
32
  export declare const OrderItemList: zod.ZodObject<{
33
33
  items: zod.ZodArray<zod.ZodObject<{
34
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
34
35
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
35
36
  position: zod.ZodOptional<zod.ZodInt>;
36
37
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -105,6 +105,7 @@ export declare const OrderList: zod.ZodObject<{
105
105
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
106
106
  created_at: zod.z.ZodISODateTime;
107
107
  items: zod.ZodArray<zod.ZodObject<{
108
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
108
109
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
109
110
  position: zod.ZodOptional<zod.ZodInt>;
110
111
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -31,6 +31,7 @@
31
31
  import * as zod from "zod";
32
32
  export declare const subscriptionDiscountedRenewalsRemainingMin = 0;
33
33
  export declare const Subscription: zod.ZodObject<{
34
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
34
35
  currency: zod.ZodString;
35
36
  charge_type: zod.ZodEnum<{
36
37
  postpaid: "postpaid";
@@ -61,7 +62,13 @@ export declare const Subscription: zod.ZodObject<{
61
62
  name: zod.ZodString;
62
63
  }, zod.z.core.$strict>>;
63
64
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
64
- suspend_reason: zod.ZodOptional<zod.ZodString>;
65
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
66
+ "billing.subscriptions.use": "billing.subscriptions.use";
67
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
68
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
69
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
70
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
71
+ }>>>;
65
72
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
66
73
  cancellation: zod.ZodOptional<zod.ZodObject<{
67
74
  reason: zod.ZodOptional<zod.ZodString>;
@@ -37,10 +37,15 @@ import { ProductID } from "./productID.zod.js";
37
37
  import { RefundPolicy } from "./refundPolicy.zod.js";
38
38
  import { ScheduledChange } from "./scheduledChange.zod.js";
39
39
  import { SubscriptionCancellation } from "./subscriptionCancellation.zod.js";
40
+ import { SubscriptionRestriction } from "./subscriptionRestriction.zod.js";
40
41
  import { TerminationPolicy } from "./terminationPolicy.zod.js";
41
42
  export const subscriptionDiscountedRenewalsRemainingMin = 0;
42
43
  export const Subscription = zod
43
44
  .strictObject({
45
+ renewal_discounts_enabled: zod
46
+ .boolean()
47
+ .optional()
48
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
44
49
  currency: zod.string(),
45
50
  charge_type: zod.enum(["postpaid", "prepaid", "one_time"]),
46
51
  interval: zod.enum(["none", "day", "month", "year"]),
@@ -58,7 +63,10 @@ export const Subscription = zod
58
63
  .int()
59
64
  .min(subscriptionDiscountedRenewalsRemainingMin)
60
65
  .optional(),
61
- suspend_reason: zod.string().optional(),
66
+ restrictions: zod
67
+ .array(SubscriptionRestriction)
68
+ .optional()
69
+ .describe("The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use."),
62
70
  billing_cycle_anchor: zod.iso.datetime({ offset: true }).optional(),
63
71
  cancellation: SubscriptionCancellation.optional(),
64
72
  scheduled_change: zod
@@ -31,6 +31,7 @@
31
31
  import * as zod from "zod";
32
32
  export declare const SubscriptionList: zod.ZodObject<{
33
33
  items: zod.ZodArray<zod.ZodObject<{
34
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
34
35
  currency: zod.ZodString;
35
36
  charge_type: zod.ZodEnum<{
36
37
  postpaid: "postpaid";
@@ -61,7 +62,13 @@ export declare const SubscriptionList: zod.ZodObject<{
61
62
  name: zod.ZodString;
62
63
  }, zod.z.core.$strict>>;
63
64
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
64
- suspend_reason: zod.ZodOptional<zod.ZodString>;
65
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
66
+ "billing.subscriptions.use": "billing.subscriptions.use";
67
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
68
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
69
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
70
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
71
+ }>>>;
65
72
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
66
73
  cancellation: zod.ZodOptional<zod.ZodObject<{
67
74
  reason: zod.ZodOptional<zod.ZodString>;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Canopy API
5
+ * Management of API keys, together with the models available and the usage recorded against them.
6
+ *
7
+ * **These endpoints do not perform inference.** Requests are issued to the forwarding address, which accepts the OpenAI, Anthropic and Gemini request formats:
8
+ *
9
+ * ```
10
+ * POST /v1/chat/completions OpenAI
11
+ * POST /v1/messages Anthropic
12
+ * POST /v1beta/models/{model}:generateContent Gemini
13
+ * ```
14
+ *
15
+ * ## Authentication
16
+ *
17
+ * Every request carries a scoped token; see the `bearerAuth` security scheme.
18
+ *
19
+ * These management endpoints do not accept a Canopy API key. On this userapi host, the OpenAI-compatible `/v1/chat/completions`, `/v1/embeddings`, `/v1/models` and `/v1/models/{model}` endpoints accept the same project token; see the project inference contract. The separate API-key gateway continues to accept Canopy API keys.
20
+ *
21
+ * ## Conventions
22
+ *
23
+ * - **The plaintext of an API key is returned once.** The `secret` appears in the response that issues it and is returned by no other endpoint. A key that has been lost has to be revoked and reissued.
24
+ * - **Disabling and revoking are distinct.** A disabled key may be enabled again at any time, while a revocation is irreversible and is intended for a key that has been exposed. Neither removes the record, and the usage the key accrued remains readable.
25
+ * - **A usage query must carry a time range**, spanning no more than 31 days. `from` and `to` carry a timezone offset, which the server does not infer.
26
+ * - **The request and response bodies do not appear in the ledger.** They are not recorded. Quote the `upstream_request_id` from the response when reporting a problem.
27
+ * - **Usage may be estimated.** The upstream provider does not report usage on every request. Where it does not, `usage_source` is `estimated` and the figures are derived from the character classes of the payload, to within roughly fifteen per cent.
28
+ * - **The service is enabled before use.** A project enables the model platform once, through `create-service`; the forwarding endpoints refuse its requests until the service is `active`. Requests are then billed under the service's subscription by the tokens they use, at the rates stated in each model's `pricing`.
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ import * as zod from "zod";
32
+ export declare const SubscriptionRestriction: zod.ZodEnum<{
33
+ "billing.subscriptions.use": "billing.subscriptions.use";
34
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
35
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
36
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
37
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
38
+ }>;
39
+ export type SubscriptionRestriction = zod.input<typeof SubscriptionRestriction>;
40
+ export type SubscriptionRestrictionOutput = zod.output<typeof SubscriptionRestriction>;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Canopy API
5
+ * Management of API keys, together with the models available and the usage recorded against them.
6
+ *
7
+ * **These endpoints do not perform inference.** Requests are issued to the forwarding address, which accepts the OpenAI, Anthropic and Gemini request formats:
8
+ *
9
+ * ```
10
+ * POST /v1/chat/completions OpenAI
11
+ * POST /v1/messages Anthropic
12
+ * POST /v1beta/models/{model}:generateContent Gemini
13
+ * ```
14
+ *
15
+ * ## Authentication
16
+ *
17
+ * Every request carries a scoped token; see the `bearerAuth` security scheme.
18
+ *
19
+ * These management endpoints do not accept a Canopy API key. On this userapi host, the OpenAI-compatible `/v1/chat/completions`, `/v1/embeddings`, `/v1/models` and `/v1/models/{model}` endpoints accept the same project token; see the project inference contract. The separate API-key gateway continues to accept Canopy API keys.
20
+ *
21
+ * ## Conventions
22
+ *
23
+ * - **The plaintext of an API key is returned once.** The `secret` appears in the response that issues it and is returned by no other endpoint. A key that has been lost has to be revoked and reissued.
24
+ * - **Disabling and revoking are distinct.** A disabled key may be enabled again at any time, while a revocation is irreversible and is intended for a key that has been exposed. Neither removes the record, and the usage the key accrued remains readable.
25
+ * - **A usage query must carry a time range**, spanning no more than 31 days. `from` and `to` carry a timezone offset, which the server does not infer.
26
+ * - **The request and response bodies do not appear in the ledger.** They are not recorded. Quote the `upstream_request_id` from the response when reporting a problem.
27
+ * - **Usage may be estimated.** The upstream provider does not report usage on every request. Where it does not, `usage_source` is `estimated` and the figures are derived from the character classes of the payload, to within roughly fifteen per cent.
28
+ * - **The service is enabled before use.** A project enables the model platform once, through `create-service`; the forwarding endpoints refuse its requests until the service is `active`. Requests are then billed under the service's subscription by the tokens they use, at the rates stated in each model's `pricing`.
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ import * as zod from "zod";
32
+ export const SubscriptionRestriction = zod
33
+ .enum([
34
+ "billing.subscriptions.use",
35
+ "billing.subscriptions.renew",
36
+ "billing.subscriptions.modify",
37
+ "billing.subscriptions.cancel",
38
+ "billing.subscriptions.terminate",
39
+ ])
40
+ .describe("An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.");
@@ -2193,6 +2193,17 @@ export declare const SubscriptionInterval: {
2193
2193
  readonly month: "month";
2194
2194
  readonly year: "year";
2195
2195
  };
2196
+ /**
2197
+ * An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.
2198
+ */
2199
+ export type SubscriptionRestriction = (typeof SubscriptionRestriction)[keyof typeof SubscriptionRestriction];
2200
+ export declare const SubscriptionRestriction: {
2201
+ readonly billingsubscriptionsuse: "billing.subscriptions.use";
2202
+ readonly billingsubscriptionsrenew: "billing.subscriptions.renew";
2203
+ readonly billingsubscriptionsmodify: "billing.subscriptions.modify";
2204
+ readonly billingsubscriptionscancel: "billing.subscriptions.cancel";
2205
+ readonly billingsubscriptionsterminate: "billing.subscriptions.terminate";
2206
+ };
2196
2207
  /**
2197
2208
  * Follows the items. `pending` is not yet accepted and may be unpaid or paid; its invoice shows
2198
2209
  * whether payment is still needed, and it can expire or be canceled. `accepted` is accepted with items still
@@ -2277,6 +2288,8 @@ export declare const SubscriptionStatus: {
2277
2288
  * the owning service enforces current holdings against the purchased count.
2278
2289
  */
2279
2290
  export interface Subscription {
2291
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
2292
+ renewal_discounts_enabled?: boolean;
2280
2293
  currency: string;
2281
2294
  charge_type: SubscriptionChargeType;
2282
2295
  interval: SubscriptionInterval;
@@ -2295,7 +2308,8 @@ export interface Subscription {
2295
2308
  coupon?: ObjectIdentity;
2296
2309
  /** @minimum 0 */
2297
2310
  discounted_renewals_remaining?: number;
2298
- suspend_reason?: string;
2311
+ /** The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use. */
2312
+ restrictions?: SubscriptionRestriction[];
2299
2313
  billing_cycle_anchor?: string;
2300
2314
  cancellation?: SubscriptionCancellation;
2301
2315
  /** The accepted period-end change currently scheduled for this subscription. Null when no such change exists. */
@@ -2554,6 +2568,8 @@ export type OrderItemConfiguration = {
2554
2568
  * purchase creates its pending subscription when this item is recorded, not when payment succeeds.
2555
2569
  */
2556
2570
  export interface OrderItem {
2571
+ /** Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them. */
2572
+ renewal_discounts_enabled?: boolean;
2557
2573
  /** Financial lines produced by this purchase item, including setup charges. */
2558
2574
  invoice_item_ids?: string[];
2559
2575
  /** @minimum 0 */
@@ -261,6 +261,13 @@ export const SubscriptionInterval = {
261
261
  month: "month",
262
262
  year: "year",
263
263
  };
264
+ export const SubscriptionRestriction = {
265
+ billingsubscriptionsuse: "billing.subscriptions.use",
266
+ billingsubscriptionsrenew: "billing.subscriptions.renew",
267
+ billingsubscriptionsmodify: "billing.subscriptions.modify",
268
+ billingsubscriptionscancel: "billing.subscriptions.cancel",
269
+ billingsubscriptionsterminate: "billing.subscriptions.terminate",
270
+ };
264
271
  export const OrderStatus = {
265
272
  pending: "pending",
266
273
  accepted: "accepted",
@@ -81,6 +81,7 @@ export declare const Order: zod.ZodObject<{
81
81
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
82
82
  created_at: zod.z.ZodISODateTime;
83
83
  items: zod.ZodArray<zod.ZodObject<{
84
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
84
85
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
85
86
  position: zod.ZodOptional<zod.ZodInt>;
86
87
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const orderItemPositionMin = 0;
10
10
  export declare const OrderItem: zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
12
13
  position: zod.ZodOptional<zod.ZodInt>;
13
14
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -15,6 +15,10 @@ import { TerminationPolicy } from "./terminationPolicy.zod.js";
15
15
  export const orderItemPositionMin = 0;
16
16
  export const OrderItem = zod
17
17
  .strictObject({
18
+ renewal_discounts_enabled: zod
19
+ .boolean()
20
+ .optional()
21
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
18
22
  invoice_item_ids: zod
19
23
  .array(zod.uuid())
20
24
  .optional()
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const OrderItemList: zod.ZodObject<{
10
10
  items: zod.ZodArray<zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
12
13
  position: zod.ZodOptional<zod.ZodInt>;
13
14
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -82,6 +82,7 @@ export declare const OrderList: zod.ZodObject<{
82
82
  checkout_confirmed_at: zod.ZodOptional<zod.ZodNullable<zod.z.ZodISODateTime>>;
83
83
  created_at: zod.z.ZodISODateTime;
84
84
  items: zod.ZodArray<zod.ZodObject<{
85
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
85
86
  invoice_item_ids: zod.ZodOptional<zod.ZodArray<zod.ZodUUID>>;
86
87
  position: zod.ZodOptional<zod.ZodInt>;
87
88
  configuration: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const subscriptionDiscountedRenewalsRemainingMin = 0;
10
10
  export declare const Subscription: zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  currency: zod.ZodString;
12
13
  charge_type: zod.ZodEnum<{
13
14
  postpaid: "postpaid";
@@ -38,7 +39,13 @@ export declare const Subscription: zod.ZodObject<{
38
39
  name: zod.ZodString;
39
40
  }, zod.z.core.$strict>>;
40
41
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
41
- suspend_reason: zod.ZodOptional<zod.ZodString>;
42
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
43
+ "billing.subscriptions.use": "billing.subscriptions.use";
44
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
45
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
46
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
47
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
48
+ }>>>;
42
49
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
43
50
  cancellation: zod.ZodOptional<zod.ZodObject<{
44
51
  reason: zod.ZodOptional<zod.ZodString>;
@@ -14,10 +14,15 @@ import { ProductID } from "./productID.zod.js";
14
14
  import { RefundPolicy } from "./refundPolicy.zod.js";
15
15
  import { ScheduledChange } from "./scheduledChange.zod.js";
16
16
  import { SubscriptionCancellation } from "./subscriptionCancellation.zod.js";
17
+ import { SubscriptionRestriction } from "./subscriptionRestriction.zod.js";
17
18
  import { TerminationPolicy } from "./terminationPolicy.zod.js";
18
19
  export const subscriptionDiscountedRenewalsRemainingMin = 0;
19
20
  export const Subscription = zod
20
21
  .strictObject({
22
+ renewal_discounts_enabled: zod
23
+ .boolean()
24
+ .optional()
25
+ .describe("Whether new account discounts may apply to future renewals. A fixed operator renewal agreement disables automatic discounts; catalog repricing or a newly selected purchase agreement enables them."),
21
26
  currency: zod.string(),
22
27
  charge_type: zod.enum(["postpaid", "prepaid", "one_time"]),
23
28
  interval: zod.enum(["none", "day", "month", "year"]),
@@ -35,7 +40,10 @@ export const Subscription = zod
35
40
  .int()
36
41
  .min(subscriptionDiscountedRenewalsRemainingMin)
37
42
  .optional(),
38
- suspend_reason: zod.string().optional(),
43
+ restrictions: zod
44
+ .array(SubscriptionRestriction)
45
+ .optional()
46
+ .describe("The operations currently prevented on the subscription, sorted. The subscription is suspended while this contains billing.subscriptions.use."),
39
47
  billing_cycle_anchor: zod.iso.datetime({ offset: true }).optional(),
40
48
  cancellation: SubscriptionCancellation.optional(),
41
49
  scheduled_change: zod
@@ -8,6 +8,7 @@
8
8
  import * as zod from "zod";
9
9
  export declare const SubscriptionList: zod.ZodObject<{
10
10
  items: zod.ZodArray<zod.ZodObject<{
11
+ renewal_discounts_enabled: zod.ZodOptional<zod.ZodBoolean>;
11
12
  currency: zod.ZodString;
12
13
  charge_type: zod.ZodEnum<{
13
14
  postpaid: "postpaid";
@@ -38,7 +39,13 @@ export declare const SubscriptionList: zod.ZodObject<{
38
39
  name: zod.ZodString;
39
40
  }, zod.z.core.$strict>>;
40
41
  discounted_renewals_remaining: zod.ZodOptional<zod.ZodInt>;
41
- suspend_reason: zod.ZodOptional<zod.ZodString>;
42
+ restrictions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
43
+ "billing.subscriptions.use": "billing.subscriptions.use";
44
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
45
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
46
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
47
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
48
+ }>>>;
42
49
  billing_cycle_anchor: zod.ZodOptional<zod.z.ZodISODateTime>;
43
50
  cancellation: zod.ZodOptional<zod.ZodObject<{
44
51
  reason: zod.ZodOptional<zod.ZodString>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Membership API
5
+ * Membership tiers and account memberships. Catalog queries support any configured currency; purchases use the billing account currency.
6
+ * OpenAPI spec version: 1.0.0
7
+ */
8
+ import * as zod from "zod";
9
+ export declare const SubscriptionRestriction: zod.ZodEnum<{
10
+ "billing.subscriptions.use": "billing.subscriptions.use";
11
+ "billing.subscriptions.renew": "billing.subscriptions.renew";
12
+ "billing.subscriptions.modify": "billing.subscriptions.modify";
13
+ "billing.subscriptions.cancel": "billing.subscriptions.cancel";
14
+ "billing.subscriptions.terminate": "billing.subscriptions.terminate";
15
+ }>;
16
+ export type SubscriptionRestriction = zod.input<typeof SubscriptionRestriction>;
17
+ export type SubscriptionRestrictionOutput = zod.output<typeof SubscriptionRestriction>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Membership API
5
+ * Membership tiers and account memberships. Catalog queries support any configured currency; purchases use the billing account currency.
6
+ * OpenAPI spec version: 1.0.0
7
+ */
8
+ import * as zod from "zod";
9
+ export const SubscriptionRestriction = zod
10
+ .enum([
11
+ "billing.subscriptions.use",
12
+ "billing.subscriptions.renew",
13
+ "billing.subscriptions.modify",
14
+ "billing.subscriptions.cancel",
15
+ "billing.subscriptions.terminate",
16
+ ])
17
+ .describe("An operation Leaflow prevents on a subscription. billing.subscriptions.use stops the service. renew prevents renewal and payment of a renewal order. modify prevents placing a change order. cancel prevents cancellation. terminate prevents immediate termination.");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leaflow/sdk",
3
- "version": "0.138.0",
3
+ "version": "0.140.0",
4
4
  "description": "Leaflow 平台 API 的 TypeScript SDK",
5
5
  "license": "MIT",
6
6
  "repository": {