@ophelio/sdk 0.3.0 → 0.3.2

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.
package/dist/index.d.mts CHANGED
@@ -27,10 +27,15 @@ interface IdempotentRequestOptions extends RequestOptions {
27
27
  */
28
28
  idempotencyKey?: string;
29
29
  }
30
+ /**
31
+ * A query parameter value. An array is multi-valued: it goes on the wire
32
+ * comma-separated (`?status=pending,failed`), the form the API parses.
33
+ */
34
+ type QueryValue = string | string[] | undefined;
30
35
  interface RequestParams {
31
36
  method: 'GET' | 'POST' | 'PATCH' | 'DELETE';
32
37
  path: string;
33
- query?: Record<string, string | undefined>;
38
+ query?: Record<string, QueryValue>;
34
39
  body?: unknown;
35
40
  idempotencyKey?: string;
36
41
  /**
@@ -446,6 +451,38 @@ interface paths {
446
451
  patch: operations["PlanEntitlementsController_update"];
447
452
  trace?: never;
448
453
  };
454
+ "/api/v1/plan-entitlements/{id}/availabilities": {
455
+ parameters: {
456
+ query?: never;
457
+ header?: never;
458
+ path?: never;
459
+ cookie?: never;
460
+ };
461
+ get: operations["PlanEntitlementsController_listAvailabilities"];
462
+ put?: never;
463
+ post: operations["PlanEntitlementsController_createAvailability"];
464
+ delete?: never;
465
+ options?: never;
466
+ head?: never;
467
+ patch?: never;
468
+ trace?: never;
469
+ };
470
+ "/api/v1/plan-entitlement-availabilities/{id}": {
471
+ parameters: {
472
+ query?: never;
473
+ header?: never;
474
+ path?: never;
475
+ cookie?: never;
476
+ };
477
+ get: operations["PlanEntitlementAvailabilitiesController_get"];
478
+ put?: never;
479
+ post?: never;
480
+ delete: operations["PlanEntitlementAvailabilitiesController_delete"];
481
+ options?: never;
482
+ head?: never;
483
+ patch: operations["PlanEntitlementAvailabilitiesController_update"];
484
+ trace?: never;
485
+ };
449
486
  "/api/v1/plan-pricing-group-mappings/{id}": {
450
487
  parameters: {
451
488
  query?: never;
@@ -734,6 +771,70 @@ interface paths {
734
771
  patch: operations["PricingGroupsController_update"];
735
772
  trace?: never;
736
773
  };
774
+ "/api/v1/calendars": {
775
+ parameters: {
776
+ query?: never;
777
+ header?: never;
778
+ path?: never;
779
+ cookie?: never;
780
+ };
781
+ get: operations["CalendarsController_list"];
782
+ put?: never;
783
+ post: operations["CalendarsController_create"];
784
+ delete?: never;
785
+ options?: never;
786
+ head?: never;
787
+ patch?: never;
788
+ trace?: never;
789
+ };
790
+ "/api/v1/calendars/{id}": {
791
+ parameters: {
792
+ query?: never;
793
+ header?: never;
794
+ path?: never;
795
+ cookie?: never;
796
+ };
797
+ get: operations["CalendarsController_get"];
798
+ put?: never;
799
+ post?: never;
800
+ delete: operations["CalendarsController_delete"];
801
+ options?: never;
802
+ head?: never;
803
+ patch: operations["CalendarsController_update"];
804
+ trace?: never;
805
+ };
806
+ "/api/v1/calendars/{id}/rules": {
807
+ parameters: {
808
+ query?: never;
809
+ header?: never;
810
+ path?: never;
811
+ cookie?: never;
812
+ };
813
+ get: operations["CalendarsController_listRules"];
814
+ put?: never;
815
+ post: operations["CalendarsController_createRule"];
816
+ delete?: never;
817
+ options?: never;
818
+ head?: never;
819
+ patch?: never;
820
+ trace?: never;
821
+ };
822
+ "/api/v1/calendar-rules/{id}": {
823
+ parameters: {
824
+ query?: never;
825
+ header?: never;
826
+ path?: never;
827
+ cookie?: never;
828
+ };
829
+ get: operations["CalendarRulesController_get"];
830
+ put?: never;
831
+ post?: never;
832
+ delete: operations["CalendarRulesController_delete"];
833
+ options?: never;
834
+ head?: never;
835
+ patch: operations["CalendarRulesController_update"];
836
+ trace?: never;
837
+ };
737
838
  "/api/v1/memberships": {
738
839
  parameters: {
739
840
  query?: never;
@@ -974,6 +1075,38 @@ interface paths {
974
1075
  patch?: never;
975
1076
  trace?: never;
976
1077
  };
1078
+ "/api/v1/target-codes": {
1079
+ parameters: {
1080
+ query?: never;
1081
+ header?: never;
1082
+ path?: never;
1083
+ cookie?: never;
1084
+ };
1085
+ get: operations["TargetCodesController_list"];
1086
+ put?: never;
1087
+ post: operations["TargetCodesController_create"];
1088
+ delete?: never;
1089
+ options?: never;
1090
+ head?: never;
1091
+ patch?: never;
1092
+ trace?: never;
1093
+ };
1094
+ "/api/v1/target-codes/{id}": {
1095
+ parameters: {
1096
+ query?: never;
1097
+ header?: never;
1098
+ path?: never;
1099
+ cookie?: never;
1100
+ };
1101
+ get: operations["TargetCodesController_get"];
1102
+ put?: never;
1103
+ post?: never;
1104
+ delete: operations["TargetCodesController_delete"];
1105
+ options?: never;
1106
+ head?: never;
1107
+ patch: operations["TargetCodesController_update"];
1108
+ trace?: never;
1109
+ };
977
1110
  "/api/inngest": {
978
1111
  parameters: {
979
1112
  query?: never;
@@ -1178,12 +1311,27 @@ interface components {
1178
1311
  create_time: string; /** Format: date-time */
1179
1312
  update_time: string;
1180
1313
  };
1314
+ PlanEntitlementAvailability: {
1315
+ /** @description Calendar the row is restricted to. Null means the row places no date restriction. */calendar_id: string | null;
1316
+ /**
1317
+ * @description Registered target codes the row is restricted to. An empty array means anywhere.
1318
+ * @example [
1319
+ * "venue_a"
1320
+ * ]
1321
+ */
1322
+ targets: string[];
1323
+ id: string;
1324
+ plan_entitlement_id: string; /** Format: date-time */
1325
+ create_time: string; /** Format: date-time */
1326
+ update_time: string;
1327
+ };
1181
1328
  PlanEntitlementDefinition: {
1182
1329
  code: string; /** @enum {string} */
1183
1330
  type: "discount" | "early_access" | "free_entry" | "guest_pass";
1184
1331
  display_name: string;
1185
1332
  };
1186
1333
  PlanEntitlement: {
1334
+ /** @description When and where the entitlement applies. Rows are alternatives: the entitlement matches if any one of them does. An empty array means it is unrestricted. */availabilities: components["schemas"]["PlanEntitlementAvailability"][];
1187
1335
  id: string;
1188
1336
  plan_id: string;
1189
1337
  entitlement_id: string;
@@ -1287,12 +1435,58 @@ interface components {
1287
1435
  early_access_days: number;
1288
1436
  active_during_grace: boolean;
1289
1437
  };
1438
+ ListPlanEntitlementAvailabilitiesResponse: {
1439
+ /**
1440
+ * @description Opaque token for the next page; empty string on the last page.
1441
+ * @example
1442
+ */
1443
+ next_page_token: string;
1444
+ /**
1445
+ * @description Total number of results across all pages.
1446
+ * @example 42
1447
+ */
1448
+ total_size: number;
1449
+ availabilities: components["schemas"]["PlanEntitlementAvailability"][];
1450
+ };
1451
+ CreatePlanEntitlementAvailabilityDto: {
1452
+ /**
1453
+ * @description Registered target codes the row is restricted to. Omit or send an empty
1454
+ * array for anywhere. Every code must already exist in the project's target
1455
+ * code vocabulary.
1456
+ * @example [
1457
+ * "venue_a"
1458
+ * ]
1459
+ */
1460
+ targets?: string[];
1461
+ /**
1462
+ * Format: uuid
1463
+ * @description Calendar the row is restricted to. Omit or send null for a row that places
1464
+ * no date restriction.
1465
+ */
1466
+ calendar_id?: string | null;
1467
+ };
1468
+ UpdatePlanEntitlementAvailabilityDto: {
1469
+ /**
1470
+ * @description Registered target codes the row is restricted to. Omit or send an empty
1471
+ * array for anywhere. Every code must already exist in the project's target
1472
+ * code vocabulary.
1473
+ * @example [
1474
+ * "venue_a"
1475
+ * ]
1476
+ */
1477
+ targets?: string[];
1478
+ /**
1479
+ * Format: uuid
1480
+ * @description Calendar the row is restricted to. Omit or send null for a row that places
1481
+ * no date restriction.
1482
+ */
1483
+ calendar_id?: string | null;
1484
+ };
1290
1485
  Entitlement: {
1291
1486
  id: string;
1292
1487
  code: string;
1293
1488
  display_name: string; /** @enum {string} */
1294
1489
  type: "discount" | "early_access" | "free_entry" | "guest_pass";
1295
- target: string | null;
1296
1490
  description: string | null; /** Format: date-time */
1297
1491
  create_time: string; /** Format: date-time */
1298
1492
  update_time: string;
@@ -1338,13 +1532,11 @@ interface components {
1338
1532
  code: string;
1339
1533
  display_name: string; /** @enum {string} */
1340
1534
  type: "discount" | "early_access" | "free_entry" | "guest_pass";
1341
- target: string;
1342
1535
  description: string;
1343
1536
  };
1344
1537
  UpdateEntitlementDto: {
1345
1538
  code: string;
1346
1539
  display_name: string;
1347
- target: string;
1348
1540
  description: string;
1349
1541
  };
1350
1542
  SyncMember: {
@@ -1353,7 +1545,7 @@ interface components {
1353
1545
  name: string;
1354
1546
  role_code: string;
1355
1547
  pricing_group_code: string | null; /** @enum {string} */
1356
- membership_status: "active" | "grace_period"; /** Format: date-time */
1548
+ membership_status: "active" | "grace_period" | "past_due"; /** Format: date-time */
1357
1549
  end_time: string | null;
1358
1550
  };
1359
1551
  MemberSyncResponse: {
@@ -1388,7 +1580,6 @@ interface components {
1388
1580
  MemberEntitlement: {
1389
1581
  code: string; /** @enum {string} */
1390
1582
  type: "discount" | "early_access" | "free_entry" | "guest_pass";
1391
- target: string | null;
1392
1583
  display_name: string;
1393
1584
  plan_entitlement_id: string;
1394
1585
  discount_percentage: number | null;
@@ -1530,6 +1721,118 @@ interface components {
1530
1721
  display_name: string;
1531
1722
  description: string;
1532
1723
  };
1724
+ Calendar: {
1725
+ /**
1726
+ * @description How many plan entitlements restrict availability to this calendar. Populated only when `view=full`.
1727
+ * @example 3
1728
+ */
1729
+ plan_entitlement_count?: number;
1730
+ id: string; /** @description Stable identifier for the calendar, unique within a project. */
1731
+ code: string; /** @description Human-readable name, e.g. "Peak 2026". */
1732
+ display_name: string;
1733
+ description: string | null; /** Format: date-time */
1734
+ create_time: string; /** Format: date-time */
1735
+ update_time: string;
1736
+ };
1737
+ ListCalendarsResponse: {
1738
+ /**
1739
+ * @description Opaque token for the next page; empty string on the last page.
1740
+ * @example
1741
+ */
1742
+ next_page_token: string;
1743
+ /**
1744
+ * @description Total number of results across all pages.
1745
+ * @example 42
1746
+ */
1747
+ total_size: number;
1748
+ calendars: components["schemas"]["Calendar"][];
1749
+ };
1750
+ CreateCalendarDto: {
1751
+ /** @description Stable identifier for the calendar, unique within a project. */code: string; /** @description Human-readable name, e.g. "Peak 2026". */
1752
+ display_name: string;
1753
+ description: string;
1754
+ };
1755
+ UpdateCalendarDto: {
1756
+ /** @description Stable identifier for the calendar, unique within a project. */code: string; /** @description Human-readable name, e.g. "Peak 2026". */
1757
+ display_name: string;
1758
+ description: string;
1759
+ };
1760
+ CalendarRule: {
1761
+ id: string;
1762
+ calendar_id: string;
1763
+ /**
1764
+ * @description First date the rule covers, as a timezone-free calendar date
1765
+ * (`YYYY-MM-DD`), interpreted in the project timezone. Null means the rule
1766
+ * is open-ended at the start.
1767
+ */
1768
+ date_from: string | null;
1769
+ /**
1770
+ * @description Last date the rule covers, inclusive — `2026-08-31` includes the whole of
1771
+ * 31 August. Timezone-free (`YYYY-MM-DD`), interpreted in the project
1772
+ * timezone. Null means the rule is open-ended at the end.
1773
+ */
1774
+ date_until: string | null;
1775
+ /**
1776
+ * @description Weekdays the rule covers, in ISO-8601 numbering: 1 = Monday … 7 = Sunday.
1777
+ * An empty array means every day.
1778
+ */
1779
+ days_of_week: number[]; /** Format: date-time */
1780
+ create_time: string; /** Format: date-time */
1781
+ update_time: string;
1782
+ };
1783
+ ListCalendarRulesResponse: {
1784
+ /**
1785
+ * @description Opaque token for the next page; empty string on the last page.
1786
+ * @example
1787
+ */
1788
+ next_page_token: string;
1789
+ /**
1790
+ * @description Total number of results across all pages.
1791
+ * @example 42
1792
+ */
1793
+ total_size: number;
1794
+ rules: components["schemas"]["CalendarRule"][];
1795
+ };
1796
+ CreateCalendarRuleDto: {
1797
+ /**
1798
+ * @description First date the rule covers, as a timezone-free calendar date
1799
+ * (`YYYY-MM-DD`), interpreted in the project timezone. Omit or send null for
1800
+ * a rule that is open-ended at the start. An ISO instant is rejected.
1801
+ */
1802
+ date_from?: string | null;
1803
+ /**
1804
+ * @description Last date the rule covers, inclusive — `2026-08-31` includes the whole of
1805
+ * 31 August. Timezone-free (`YYYY-MM-DD`), interpreted in the project
1806
+ * timezone. Omit or send null for a rule that is open-ended at the end. An
1807
+ * ISO instant is rejected.
1808
+ */
1809
+ date_until?: string | null;
1810
+ /**
1811
+ * @description Weekdays the rule covers, in ISO-8601 numbering: 1 = Monday … 7 = Sunday.
1812
+ * Omit or send an empty array for every day.
1813
+ */
1814
+ days_of_week?: number[];
1815
+ };
1816
+ UpdateCalendarRuleDto: {
1817
+ /**
1818
+ * @description First date the rule covers, as a timezone-free calendar date
1819
+ * (`YYYY-MM-DD`), interpreted in the project timezone. Omit or send null for
1820
+ * a rule that is open-ended at the start. An ISO instant is rejected.
1821
+ */
1822
+ date_from?: string | null;
1823
+ /**
1824
+ * @description Last date the rule covers, inclusive — `2026-08-31` includes the whole of
1825
+ * 31 August. Timezone-free (`YYYY-MM-DD`), interpreted in the project
1826
+ * timezone. Omit or send null for a rule that is open-ended at the end. An
1827
+ * ISO instant is rejected.
1828
+ */
1829
+ date_until?: string | null;
1830
+ /**
1831
+ * @description Weekdays the rule covers, in ISO-8601 numbering: 1 = Monday … 7 = Sunday.
1832
+ * Omit or send an empty array for every day.
1833
+ */
1834
+ days_of_week?: number[];
1835
+ };
1533
1836
  MembershipCustomer: {
1534
1837
  id: string;
1535
1838
  name: string;
@@ -1784,6 +2087,45 @@ interface components {
1784
2087
  total_size: number;
1785
2088
  memberships: components["schemas"]["Membership"][];
1786
2089
  };
2090
+ TargetCode: {
2091
+ /**
2092
+ * @description Machine identifier a gate sends. Lowercase letters, numbers and single underscores; immutable once created, and matched exactly, never normalised.
2093
+ * @example venue_a
2094
+ */
2095
+ code: string; /** @example Venue A */
2096
+ display_name: string;
2097
+ /**
2098
+ * @description How many plan entitlements restrict availability to this target. Populated only when `view=full`.
2099
+ * @example 3
2100
+ */
2101
+ plan_entitlement_count?: number;
2102
+ id: string;
2103
+ description: string | null; /** Format: date-time */
2104
+ create_time: string; /** Format: date-time */
2105
+ update_time: string;
2106
+ };
2107
+ ListTargetCodesResponse: {
2108
+ /**
2109
+ * @description Opaque token for the next page; empty string on the last page.
2110
+ * @example
2111
+ */
2112
+ next_page_token: string;
2113
+ /**
2114
+ * @description Total number of results across all pages.
2115
+ * @example 42
2116
+ */
2117
+ total_size: number;
2118
+ target_codes: components["schemas"]["TargetCode"][];
2119
+ };
2120
+ CreateTargetCodeDto: {
2121
+ /** @example venue_a */code: string;
2122
+ display_name: string;
2123
+ description?: string | null;
2124
+ };
2125
+ UpdateTargetCodeDto: {
2126
+ display_name?: string;
2127
+ description?: string | null;
2128
+ };
1787
2129
  };
1788
2130
  responses: never;
1789
2131
  parameters: never;
@@ -2884,9 +3226,12 @@ interface operations {
2884
3226
  };
2885
3227
  };
2886
3228
  };
2887
- PlanPricingGroupMappingsController_delete: {
3229
+ PlanEntitlementsController_listAvailabilities: {
2888
3230
  parameters: {
2889
- query?: never;
3231
+ query?: {
3232
+ page_size?: number;
3233
+ page_token?: string;
3234
+ };
2890
3235
  header?: never;
2891
3236
  path?: never;
2892
3237
  cookie?: never;
@@ -2898,7 +3243,7 @@ interface operations {
2898
3243
  [name: string]: unknown;
2899
3244
  };
2900
3245
  content: {
2901
- "application/json": Record<string, never>;
3246
+ "application/json": components["schemas"]["ListPlanEntitlementAvailabilitiesResponse"];
2902
3247
  };
2903
3248
  };
2904
3249
  404: {
@@ -2911,44 +3256,203 @@ interface operations {
2911
3256
  };
2912
3257
  };
2913
3258
  };
2914
- EntitlementsController_list: {
3259
+ PlanEntitlementsController_createAvailability: {
2915
3260
  parameters: {
2916
3261
  query?: never;
2917
3262
  header?: never;
2918
3263
  path?: never;
2919
3264
  cookie?: never;
2920
3265
  };
2921
- requestBody?: never;
3266
+ requestBody: {
3267
+ content: {
3268
+ "application/json": components["schemas"]["CreatePlanEntitlementAvailabilityDto"];
3269
+ };
3270
+ };
2922
3271
  responses: {
2923
- 200: {
3272
+ 201: {
2924
3273
  headers: {
2925
3274
  [name: string]: unknown;
2926
3275
  };
2927
3276
  content: {
2928
- "application/json": components["schemas"]["ListEntitlementsResponse"];
3277
+ "application/json": components["schemas"]["PlanEntitlementAvailability"];
3278
+ };
3279
+ };
3280
+ 400: {
3281
+ headers: {
3282
+ [name: string]: unknown;
3283
+ };
3284
+ content: {
3285
+ "application/json": components["schemas"]["ErrorResponse"];
3286
+ };
3287
+ };
3288
+ 404: {
3289
+ headers: {
3290
+ [name: string]: unknown;
3291
+ };
3292
+ content: {
3293
+ "application/json": components["schemas"]["ErrorResponse"];
2929
3294
  };
2930
3295
  };
2931
3296
  };
2932
3297
  };
2933
- EntitlementsController_create: {
3298
+ PlanEntitlementAvailabilitiesController_get: {
2934
3299
  parameters: {
2935
3300
  query?: never;
2936
3301
  header?: never;
2937
3302
  path?: never;
2938
3303
  cookie?: never;
2939
3304
  };
2940
- requestBody: {
2941
- content: {
2942
- "application/json": components["schemas"]["CreateEntitlementDto"];
2943
- };
2944
- };
3305
+ requestBody?: never;
2945
3306
  responses: {
2946
- 201: {
3307
+ 200: {
2947
3308
  headers: {
2948
3309
  [name: string]: unknown;
2949
3310
  };
2950
3311
  content: {
2951
- "application/json": components["schemas"]["Entitlement"];
3312
+ "application/json": components["schemas"]["PlanEntitlementAvailability"];
3313
+ };
3314
+ };
3315
+ 404: {
3316
+ headers: {
3317
+ [name: string]: unknown;
3318
+ };
3319
+ content: {
3320
+ "application/json": components["schemas"]["ErrorResponse"];
3321
+ };
3322
+ };
3323
+ };
3324
+ };
3325
+ PlanEntitlementAvailabilitiesController_delete: {
3326
+ parameters: {
3327
+ query?: never;
3328
+ header?: never;
3329
+ path?: never;
3330
+ cookie?: never;
3331
+ };
3332
+ requestBody?: never;
3333
+ responses: {
3334
+ 200: {
3335
+ headers: {
3336
+ [name: string]: unknown;
3337
+ };
3338
+ content: {
3339
+ "application/json": Record<string, never>;
3340
+ };
3341
+ };
3342
+ 404: {
3343
+ headers: {
3344
+ [name: string]: unknown;
3345
+ };
3346
+ content: {
3347
+ "application/json": components["schemas"]["ErrorResponse"];
3348
+ };
3349
+ };
3350
+ };
3351
+ };
3352
+ PlanEntitlementAvailabilitiesController_update: {
3353
+ parameters: {
3354
+ query?: never;
3355
+ header?: never;
3356
+ path?: never;
3357
+ cookie?: never;
3358
+ };
3359
+ requestBody: {
3360
+ content: {
3361
+ "application/json": components["schemas"]["UpdatePlanEntitlementAvailabilityDto"];
3362
+ };
3363
+ };
3364
+ responses: {
3365
+ 200: {
3366
+ headers: {
3367
+ [name: string]: unknown;
3368
+ };
3369
+ content: {
3370
+ "application/json": components["schemas"]["PlanEntitlementAvailability"];
3371
+ };
3372
+ };
3373
+ 400: {
3374
+ headers: {
3375
+ [name: string]: unknown;
3376
+ };
3377
+ content: {
3378
+ "application/json": components["schemas"]["ErrorResponse"];
3379
+ };
3380
+ };
3381
+ 404: {
3382
+ headers: {
3383
+ [name: string]: unknown;
3384
+ };
3385
+ content: {
3386
+ "application/json": components["schemas"]["ErrorResponse"];
3387
+ };
3388
+ };
3389
+ };
3390
+ };
3391
+ PlanPricingGroupMappingsController_delete: {
3392
+ parameters: {
3393
+ query?: never;
3394
+ header?: never;
3395
+ path?: never;
3396
+ cookie?: never;
3397
+ };
3398
+ requestBody?: never;
3399
+ responses: {
3400
+ 200: {
3401
+ headers: {
3402
+ [name: string]: unknown;
3403
+ };
3404
+ content: {
3405
+ "application/json": Record<string, never>;
3406
+ };
3407
+ };
3408
+ 404: {
3409
+ headers: {
3410
+ [name: string]: unknown;
3411
+ };
3412
+ content: {
3413
+ "application/json": components["schemas"]["ErrorResponse"];
3414
+ };
3415
+ };
3416
+ };
3417
+ };
3418
+ EntitlementsController_list: {
3419
+ parameters: {
3420
+ query?: never;
3421
+ header?: never;
3422
+ path?: never;
3423
+ cookie?: never;
3424
+ };
3425
+ requestBody?: never;
3426
+ responses: {
3427
+ 200: {
3428
+ headers: {
3429
+ [name: string]: unknown;
3430
+ };
3431
+ content: {
3432
+ "application/json": components["schemas"]["ListEntitlementsResponse"];
3433
+ };
3434
+ };
3435
+ };
3436
+ };
3437
+ EntitlementsController_create: {
3438
+ parameters: {
3439
+ query?: never;
3440
+ header?: never;
3441
+ path?: never;
3442
+ cookie?: never;
3443
+ };
3444
+ requestBody: {
3445
+ content: {
3446
+ "application/json": components["schemas"]["CreateEntitlementDto"];
3447
+ };
3448
+ };
3449
+ responses: {
3450
+ 201: {
3451
+ headers: {
3452
+ [name: string]: unknown;
3453
+ };
3454
+ content: {
3455
+ "application/json": components["schemas"]["Entitlement"];
2952
3456
  };
2953
3457
  };
2954
3458
  };
@@ -3520,14 +4024,312 @@ interface operations {
3520
4024
  [name: string]: unknown;
3521
4025
  };
3522
4026
  content: {
3523
- "application/json": components["schemas"]["WebhookSubscription"];
4027
+ "application/json": components["schemas"]["WebhookSubscription"];
4028
+ };
4029
+ };
4030
+ };
4031
+ };
4032
+ WebhookSubscriptionsController_get: {
4033
+ parameters: {
4034
+ query?: never;
4035
+ header?: never;
4036
+ path?: never;
4037
+ cookie?: never;
4038
+ };
4039
+ requestBody?: never;
4040
+ responses: {
4041
+ 200: {
4042
+ headers: {
4043
+ [name: string]: unknown;
4044
+ };
4045
+ content: {
4046
+ "application/json": components["schemas"]["WebhookSubscription"];
4047
+ };
4048
+ };
4049
+ 404: {
4050
+ headers: {
4051
+ [name: string]: unknown;
4052
+ };
4053
+ content: {
4054
+ "application/json": components["schemas"]["ErrorResponse"];
4055
+ };
4056
+ };
4057
+ };
4058
+ };
4059
+ WebhookSubscriptionsController_delete: {
4060
+ parameters: {
4061
+ query?: never;
4062
+ header?: never;
4063
+ path?: never;
4064
+ cookie?: never;
4065
+ };
4066
+ requestBody?: never;
4067
+ responses: {
4068
+ 200: {
4069
+ headers: {
4070
+ [name: string]: unknown;
4071
+ };
4072
+ content: {
4073
+ "application/json": Record<string, never>;
4074
+ };
4075
+ };
4076
+ 404: {
4077
+ headers: {
4078
+ [name: string]: unknown;
4079
+ };
4080
+ content: {
4081
+ "application/json": components["schemas"]["ErrorResponse"];
4082
+ };
4083
+ };
4084
+ };
4085
+ };
4086
+ WebhookSubscriptionsController_update: {
4087
+ parameters: {
4088
+ query?: never;
4089
+ header?: never;
4090
+ path?: never;
4091
+ cookie?: never;
4092
+ };
4093
+ requestBody: {
4094
+ content: {
4095
+ "application/json": components["schemas"]["UpdateWebhookSubscriptionDto"];
4096
+ };
4097
+ };
4098
+ responses: {
4099
+ 200: {
4100
+ headers: {
4101
+ [name: string]: unknown;
4102
+ };
4103
+ content: {
4104
+ "application/json": components["schemas"]["WebhookSubscription"];
4105
+ };
4106
+ };
4107
+ 404: {
4108
+ headers: {
4109
+ [name: string]: unknown;
4110
+ };
4111
+ content: {
4112
+ "application/json": components["schemas"]["ErrorResponse"];
4113
+ };
4114
+ };
4115
+ };
4116
+ };
4117
+ WebhookSubscriptionsController_listDeliveries: {
4118
+ parameters: {
4119
+ query?: {
4120
+ page_size?: number;
4121
+ page_token?: string;
4122
+ };
4123
+ header?: never;
4124
+ path?: never;
4125
+ cookie?: never;
4126
+ };
4127
+ requestBody?: never;
4128
+ responses: {
4129
+ 200: {
4130
+ headers: {
4131
+ [name: string]: unknown;
4132
+ };
4133
+ content: {
4134
+ "application/json": components["schemas"]["ListWebhookDeliveriesResponse"];
4135
+ };
4136
+ };
4137
+ 404: {
4138
+ headers: {
4139
+ [name: string]: unknown;
4140
+ };
4141
+ content: {
4142
+ "application/json": components["schemas"]["ErrorResponse"];
4143
+ };
4144
+ };
4145
+ };
4146
+ };
4147
+ PricingGroupsController_list: {
4148
+ parameters: {
4149
+ query?: never;
4150
+ header?: never;
4151
+ path?: never;
4152
+ cookie?: never;
4153
+ };
4154
+ requestBody?: never;
4155
+ responses: {
4156
+ 200: {
4157
+ headers: {
4158
+ [name: string]: unknown;
4159
+ };
4160
+ content: {
4161
+ "application/json": components["schemas"]["ListPricingGroupsResponse"];
4162
+ };
4163
+ };
4164
+ };
4165
+ };
4166
+ PricingGroupsController_create: {
4167
+ parameters: {
4168
+ query?: never;
4169
+ header?: never;
4170
+ path?: never;
4171
+ cookie?: never;
4172
+ };
4173
+ requestBody: {
4174
+ content: {
4175
+ "application/json": components["schemas"]["CreatePricingGroupDto"];
4176
+ };
4177
+ };
4178
+ responses: {
4179
+ 201: {
4180
+ headers: {
4181
+ [name: string]: unknown;
4182
+ };
4183
+ content: {
4184
+ "application/json": components["schemas"]["PricingGroup"];
4185
+ };
4186
+ };
4187
+ };
4188
+ };
4189
+ PricingGroupsController_get: {
4190
+ parameters: {
4191
+ query?: never;
4192
+ header?: never;
4193
+ path?: never;
4194
+ cookie?: never;
4195
+ };
4196
+ requestBody?: never;
4197
+ responses: {
4198
+ 200: {
4199
+ headers: {
4200
+ [name: string]: unknown;
4201
+ };
4202
+ content: {
4203
+ "application/json": components["schemas"]["PricingGroup"];
4204
+ };
4205
+ };
4206
+ 404: {
4207
+ headers: {
4208
+ [name: string]: unknown;
4209
+ };
4210
+ content: {
4211
+ "application/json": components["schemas"]["ErrorResponse"];
4212
+ };
4213
+ };
4214
+ };
4215
+ };
4216
+ PricingGroupsController_delete: {
4217
+ parameters: {
4218
+ query?: never;
4219
+ header?: never;
4220
+ path?: never;
4221
+ cookie?: never;
4222
+ };
4223
+ requestBody?: never;
4224
+ responses: {
4225
+ 200: {
4226
+ headers: {
4227
+ [name: string]: unknown;
4228
+ };
4229
+ content: {
4230
+ "application/json": Record<string, never>;
4231
+ };
4232
+ };
4233
+ 404: {
4234
+ headers: {
4235
+ [name: string]: unknown;
4236
+ };
4237
+ content: {
4238
+ "application/json": components["schemas"]["ErrorResponse"];
4239
+ };
4240
+ };
4241
+ };
4242
+ };
4243
+ PricingGroupsController_update: {
4244
+ parameters: {
4245
+ query?: never;
4246
+ header?: never;
4247
+ path?: never;
4248
+ cookie?: never;
4249
+ };
4250
+ requestBody: {
4251
+ content: {
4252
+ "application/json": components["schemas"]["UpdatePricingGroupDto"];
4253
+ };
4254
+ };
4255
+ responses: {
4256
+ 200: {
4257
+ headers: {
4258
+ [name: string]: unknown;
4259
+ };
4260
+ content: {
4261
+ "application/json": components["schemas"]["PricingGroup"];
4262
+ };
4263
+ };
4264
+ 404: {
4265
+ headers: {
4266
+ [name: string]: unknown;
4267
+ };
4268
+ content: {
4269
+ "application/json": components["schemas"]["ErrorResponse"];
4270
+ };
4271
+ };
4272
+ };
4273
+ };
4274
+ CalendarsController_list: {
4275
+ parameters: {
4276
+ query?: {
4277
+ page_size?: number;
4278
+ page_token?: string; /** @description Response detail level; `full` populates `plan_entitlement_count`. */
4279
+ view?: "basic" | "full";
4280
+ };
4281
+ header?: never;
4282
+ path?: never;
4283
+ cookie?: never;
4284
+ };
4285
+ requestBody?: never;
4286
+ responses: {
4287
+ 200: {
4288
+ headers: {
4289
+ [name: string]: unknown;
4290
+ };
4291
+ content: {
4292
+ "application/json": components["schemas"]["ListCalendarsResponse"];
4293
+ };
4294
+ };
4295
+ };
4296
+ };
4297
+ CalendarsController_create: {
4298
+ parameters: {
4299
+ query?: never;
4300
+ header?: never;
4301
+ path?: never;
4302
+ cookie?: never;
4303
+ };
4304
+ requestBody: {
4305
+ content: {
4306
+ "application/json": components["schemas"]["CreateCalendarDto"];
4307
+ };
4308
+ };
4309
+ responses: {
4310
+ 201: {
4311
+ headers: {
4312
+ [name: string]: unknown;
4313
+ };
4314
+ content: {
4315
+ "application/json": components["schemas"]["Calendar"];
4316
+ };
4317
+ };
4318
+ 409: {
4319
+ headers: {
4320
+ [name: string]: unknown;
4321
+ };
4322
+ content: {
4323
+ "application/json": components["schemas"]["ErrorResponse"];
3524
4324
  };
3525
4325
  };
3526
4326
  };
3527
4327
  };
3528
- WebhookSubscriptionsController_get: {
4328
+ CalendarsController_get: {
3529
4329
  parameters: {
3530
- query?: never;
4330
+ query?: {
4331
+ /** @description Response detail level; `full` populates `plan_entitlement_count`. */view?: "basic" | "full";
4332
+ };
3531
4333
  header?: never;
3532
4334
  path?: never;
3533
4335
  cookie?: never;
@@ -3539,7 +4341,7 @@ interface operations {
3539
4341
  [name: string]: unknown;
3540
4342
  };
3541
4343
  content: {
3542
- "application/json": components["schemas"]["WebhookSubscription"];
4344
+ "application/json": components["schemas"]["Calendar"];
3543
4345
  };
3544
4346
  };
3545
4347
  404: {
@@ -3552,7 +4354,7 @@ interface operations {
3552
4354
  };
3553
4355
  };
3554
4356
  };
3555
- WebhookSubscriptionsController_delete: {
4357
+ CalendarsController_delete: {
3556
4358
  parameters: {
3557
4359
  query?: never;
3558
4360
  header?: never;
@@ -3577,9 +4379,17 @@ interface operations {
3577
4379
  "application/json": components["schemas"]["ErrorResponse"];
3578
4380
  };
3579
4381
  };
4382
+ 409: {
4383
+ headers: {
4384
+ [name: string]: unknown;
4385
+ };
4386
+ content: {
4387
+ "application/json": components["schemas"]["ErrorResponse"];
4388
+ };
4389
+ };
3580
4390
  };
3581
4391
  };
3582
- WebhookSubscriptionsController_update: {
4392
+ CalendarsController_update: {
3583
4393
  parameters: {
3584
4394
  query?: never;
3585
4395
  header?: never;
@@ -3588,7 +4398,7 @@ interface operations {
3588
4398
  };
3589
4399
  requestBody: {
3590
4400
  content: {
3591
- "application/json": components["schemas"]["UpdateWebhookSubscriptionDto"];
4401
+ "application/json": components["schemas"]["UpdateCalendarDto"];
3592
4402
  };
3593
4403
  };
3594
4404
  responses: {
@@ -3597,7 +4407,7 @@ interface operations {
3597
4407
  [name: string]: unknown;
3598
4408
  };
3599
4409
  content: {
3600
- "application/json": components["schemas"]["WebhookSubscription"];
4410
+ "application/json": components["schemas"]["Calendar"];
3601
4411
  };
3602
4412
  };
3603
4413
  404: {
@@ -3608,9 +4418,17 @@ interface operations {
3608
4418
  "application/json": components["schemas"]["ErrorResponse"];
3609
4419
  };
3610
4420
  };
4421
+ 409: {
4422
+ headers: {
4423
+ [name: string]: unknown;
4424
+ };
4425
+ content: {
4426
+ "application/json": components["schemas"]["ErrorResponse"];
4427
+ };
4428
+ };
3611
4429
  };
3612
4430
  };
3613
- WebhookSubscriptionsController_listDeliveries: {
4431
+ CalendarsController_listRules: {
3614
4432
  parameters: {
3615
4433
  query?: {
3616
4434
  page_size?: number;
@@ -3627,7 +4445,7 @@ interface operations {
3627
4445
  [name: string]: unknown;
3628
4446
  };
3629
4447
  content: {
3630
- "application/json": components["schemas"]["ListWebhookDeliveriesResponse"];
4448
+ "application/json": components["schemas"]["ListCalendarRulesResponse"];
3631
4449
  };
3632
4450
  };
3633
4451
  404: {
@@ -3640,49 +4458,46 @@ interface operations {
3640
4458
  };
3641
4459
  };
3642
4460
  };
3643
- PricingGroupsController_list: {
4461
+ CalendarsController_createRule: {
3644
4462
  parameters: {
3645
4463
  query?: never;
3646
4464
  header?: never;
3647
4465
  path?: never;
3648
4466
  cookie?: never;
3649
4467
  };
3650
- requestBody?: never;
4468
+ requestBody: {
4469
+ content: {
4470
+ "application/json": components["schemas"]["CreateCalendarRuleDto"];
4471
+ };
4472
+ };
3651
4473
  responses: {
3652
- 200: {
4474
+ 201: {
3653
4475
  headers: {
3654
4476
  [name: string]: unknown;
3655
4477
  };
3656
4478
  content: {
3657
- "application/json": components["schemas"]["ListPricingGroupsResponse"];
4479
+ "application/json": components["schemas"]["CalendarRule"];
3658
4480
  };
3659
4481
  };
3660
- };
3661
- };
3662
- PricingGroupsController_create: {
3663
- parameters: {
3664
- query?: never;
3665
- header?: never;
3666
- path?: never;
3667
- cookie?: never;
3668
- };
3669
- requestBody: {
3670
- content: {
3671
- "application/json": components["schemas"]["CreatePricingGroupDto"];
4482
+ 400: {
4483
+ headers: {
4484
+ [name: string]: unknown;
4485
+ };
4486
+ content: {
4487
+ "application/json": components["schemas"]["ErrorResponse"];
4488
+ };
3672
4489
  };
3673
- };
3674
- responses: {
3675
- 201: {
4490
+ 404: {
3676
4491
  headers: {
3677
4492
  [name: string]: unknown;
3678
4493
  };
3679
4494
  content: {
3680
- "application/json": components["schemas"]["PricingGroup"];
4495
+ "application/json": components["schemas"]["ErrorResponse"];
3681
4496
  };
3682
4497
  };
3683
4498
  };
3684
4499
  };
3685
- PricingGroupsController_get: {
4500
+ CalendarRulesController_get: {
3686
4501
  parameters: {
3687
4502
  query?: never;
3688
4503
  header?: never;
@@ -3696,7 +4511,7 @@ interface operations {
3696
4511
  [name: string]: unknown;
3697
4512
  };
3698
4513
  content: {
3699
- "application/json": components["schemas"]["PricingGroup"];
4514
+ "application/json": components["schemas"]["CalendarRule"];
3700
4515
  };
3701
4516
  };
3702
4517
  404: {
@@ -3709,7 +4524,7 @@ interface operations {
3709
4524
  };
3710
4525
  };
3711
4526
  };
3712
- PricingGroupsController_delete: {
4527
+ CalendarRulesController_delete: {
3713
4528
  parameters: {
3714
4529
  query?: never;
3715
4530
  header?: never;
@@ -3736,7 +4551,7 @@ interface operations {
3736
4551
  };
3737
4552
  };
3738
4553
  };
3739
- PricingGroupsController_update: {
4554
+ CalendarRulesController_update: {
3740
4555
  parameters: {
3741
4556
  query?: never;
3742
4557
  header?: never;
@@ -3745,7 +4560,7 @@ interface operations {
3745
4560
  };
3746
4561
  requestBody: {
3747
4562
  content: {
3748
- "application/json": components["schemas"]["UpdatePricingGroupDto"];
4563
+ "application/json": components["schemas"]["UpdateCalendarRuleDto"];
3749
4564
  };
3750
4565
  };
3751
4566
  responses: {
@@ -3754,7 +4569,15 @@ interface operations {
3754
4569
  [name: string]: unknown;
3755
4570
  };
3756
4571
  content: {
3757
- "application/json": components["schemas"]["PricingGroup"];
4572
+ "application/json": components["schemas"]["CalendarRule"];
4573
+ };
4574
+ };
4575
+ 400: {
4576
+ headers: {
4577
+ [name: string]: unknown;
4578
+ };
4579
+ content: {
4580
+ "application/json": components["schemas"]["ErrorResponse"];
3758
4581
  };
3759
4582
  };
3760
4583
  404: {
@@ -4435,6 +5258,171 @@ interface operations {
4435
5258
  };
4436
5259
  };
4437
5260
  };
5261
+ TargetCodesController_list: {
5262
+ parameters: {
5263
+ query?: {
5264
+ page_size?: number;
5265
+ page_token?: string; /** @description Response detail level; `full` populates `plan_entitlement_count`. */
5266
+ view?: "basic" | "full";
5267
+ };
5268
+ header?: never;
5269
+ path?: never;
5270
+ cookie?: never;
5271
+ };
5272
+ requestBody?: never;
5273
+ responses: {
5274
+ 200: {
5275
+ headers: {
5276
+ [name: string]: unknown;
5277
+ };
5278
+ content: {
5279
+ "application/json": components["schemas"]["ListTargetCodesResponse"];
5280
+ };
5281
+ };
5282
+ };
5283
+ };
5284
+ TargetCodesController_create: {
5285
+ parameters: {
5286
+ query?: never;
5287
+ header?: never;
5288
+ path?: never;
5289
+ cookie?: never;
5290
+ };
5291
+ requestBody: {
5292
+ content: {
5293
+ "application/json": components["schemas"]["CreateTargetCodeDto"];
5294
+ };
5295
+ };
5296
+ responses: {
5297
+ 201: {
5298
+ headers: {
5299
+ [name: string]: unknown;
5300
+ };
5301
+ content: {
5302
+ "application/json": components["schemas"]["TargetCode"];
5303
+ };
5304
+ };
5305
+ 400: {
5306
+ headers: {
5307
+ [name: string]: unknown;
5308
+ };
5309
+ content: {
5310
+ "application/json": components["schemas"]["ErrorResponse"];
5311
+ };
5312
+ };
5313
+ 409: {
5314
+ headers: {
5315
+ [name: string]: unknown;
5316
+ };
5317
+ content: {
5318
+ "application/json": components["schemas"]["ErrorResponse"];
5319
+ };
5320
+ };
5321
+ };
5322
+ };
5323
+ TargetCodesController_get: {
5324
+ parameters: {
5325
+ query?: {
5326
+ /** @description Response detail level; `full` populates `plan_entitlement_count`. */view?: "basic" | "full";
5327
+ };
5328
+ header?: never;
5329
+ path?: never;
5330
+ cookie?: never;
5331
+ };
5332
+ requestBody?: never;
5333
+ responses: {
5334
+ 200: {
5335
+ headers: {
5336
+ [name: string]: unknown;
5337
+ };
5338
+ content: {
5339
+ "application/json": components["schemas"]["TargetCode"];
5340
+ };
5341
+ };
5342
+ 404: {
5343
+ headers: {
5344
+ [name: string]: unknown;
5345
+ };
5346
+ content: {
5347
+ "application/json": components["schemas"]["ErrorResponse"];
5348
+ };
5349
+ };
5350
+ };
5351
+ };
5352
+ TargetCodesController_delete: {
5353
+ parameters: {
5354
+ query?: never;
5355
+ header?: never;
5356
+ path?: never;
5357
+ cookie?: never;
5358
+ };
5359
+ requestBody?: never;
5360
+ responses: {
5361
+ 200: {
5362
+ headers: {
5363
+ [name: string]: unknown;
5364
+ };
5365
+ content: {
5366
+ "application/json": Record<string, never>;
5367
+ };
5368
+ };
5369
+ 404: {
5370
+ headers: {
5371
+ [name: string]: unknown;
5372
+ };
5373
+ content: {
5374
+ "application/json": components["schemas"]["ErrorResponse"];
5375
+ };
5376
+ };
5377
+ 409: {
5378
+ headers: {
5379
+ [name: string]: unknown;
5380
+ };
5381
+ content: {
5382
+ "application/json": components["schemas"]["ErrorResponse"];
5383
+ };
5384
+ };
5385
+ };
5386
+ };
5387
+ TargetCodesController_update: {
5388
+ parameters: {
5389
+ query?: never;
5390
+ header?: never;
5391
+ path?: never;
5392
+ cookie?: never;
5393
+ };
5394
+ requestBody: {
5395
+ content: {
5396
+ "application/json": components["schemas"]["UpdateTargetCodeDto"];
5397
+ };
5398
+ };
5399
+ responses: {
5400
+ 200: {
5401
+ headers: {
5402
+ [name: string]: unknown;
5403
+ };
5404
+ content: {
5405
+ "application/json": components["schemas"]["TargetCode"];
5406
+ };
5407
+ };
5408
+ 400: {
5409
+ headers: {
5410
+ [name: string]: unknown;
5411
+ };
5412
+ content: {
5413
+ "application/json": components["schemas"]["ErrorResponse"];
5414
+ };
5415
+ };
5416
+ 404: {
5417
+ headers: {
5418
+ [name: string]: unknown;
5419
+ };
5420
+ content: {
5421
+ "application/json": components["schemas"]["ErrorResponse"];
5422
+ };
5423
+ };
5424
+ };
5425
+ };
4438
5426
  InngestController_handle_get: {
4439
5427
  parameters: {
4440
5428
  query?: never;
@@ -4582,12 +5570,16 @@ type Member = Schemas['Member'];
4582
5570
  type SyncMember = Schemas['SyncMember'];
4583
5571
  type MemberEntitlement = Schemas['MemberEntitlement'];
4584
5572
  type PlanEntitlement = Schemas['PlanEntitlement'];
5573
+ type PlanEntitlementAvailability = Schemas['PlanEntitlementAvailability'];
4585
5574
  type Transaction = Schemas['Transaction'];
4586
5575
  type EntitlementUsage = Schemas['EntitlementUsage'];
4587
5576
  type AdmitResult = Schemas['AdmitResult'];
4588
5577
  type MemberRole = Schemas['MemberRole'];
4589
5578
  type PricingGroup = Schemas['PricingGroup'];
4590
5579
  type SalesChannel = Schemas['SalesChannel'];
5580
+ type TargetCode = Schemas['TargetCode'];
5581
+ type Calendar = Schemas['Calendar'];
5582
+ type CalendarRule = Schemas['CalendarRule'];
4591
5583
  type Entitlement = Schemas['Entitlement'];
4592
5584
  type PlanLink = Schemas['PlanLink'];
4593
5585
  type PlanLinkView = Schemas['PlanLinkView'];
@@ -4634,11 +5626,19 @@ type CreatePricingGroupParams = Schemas['CreatePricingGroupDto'];
4634
5626
  type UpdatePricingGroupParams = Schemas['UpdatePricingGroupDto'];
4635
5627
  type CreateSalesChannelParams = Schemas['CreateSalesChannelDto'];
4636
5628
  type UpdateSalesChannelParams = Schemas['UpdateSalesChannelDto'];
5629
+ type CreateTargetCodeParams = Schemas['CreateTargetCodeDto'];
5630
+ type UpdateTargetCodeParams = Schemas['UpdateTargetCodeDto'];
5631
+ type CreateCalendarParams = Schemas['CreateCalendarDto'];
5632
+ type UpdateCalendarParams = Schemas['UpdateCalendarDto'];
5633
+ type CreateCalendarRuleParams = Schemas['CreateCalendarRuleDto'];
5634
+ type UpdateCalendarRuleParams = Schemas['UpdateCalendarRuleDto'];
4637
5635
  type CreateEntitlementParams = Schemas['CreateEntitlementDto'];
4638
5636
  type UpdateEntitlementParams = Schemas['UpdateEntitlementDto'];
4639
5637
  type CreatePlanLinkParams = Schemas['CreatePlanLinkDto'];
4640
5638
  type CreatePlanEntitlementParams = Schemas['CreatePlanEntitlementDto'];
4641
5639
  type UpdatePlanEntitlementParams = Schemas['UpdatePlanEntitlementDto'];
5640
+ type CreatePlanEntitlementAvailabilityParams = Schemas['CreatePlanEntitlementAvailabilityDto'];
5641
+ type UpdatePlanEntitlementAvailabilityParams = Schemas['UpdatePlanEntitlementAvailabilityDto'];
4642
5642
  type CreatePlanPricingGroupMappingParams = Schemas['CreatePlanPricingGroupMappingDto'];
4643
5643
  type CreateBillingOptionSalesChannelParams = Schemas['CreateBillingOptionSalesChannelDto'];
4644
5644
  type CreateWebhookSubscriptionParams = Schemas['CreateWebhookSubscriptionDto'];
@@ -4677,6 +5677,39 @@ declare class BillingOptionsResource extends APIResource {
4677
5677
  createSalesChannelLink(id: string, params: CreateBillingOptionSalesChannelParams, options?: RequestOptions): Promise<BillingOptionSalesChannel>;
4678
5678
  }
4679
5679
  //#endregion
5680
+ //#region src/resources/calendar-rules.d.ts
5681
+ /**
5682
+ * A calendar rule is one row of a calendar's date vocabulary. Conditions AND
5683
+ * within a rule and rules OR across a calendar, so "weekends in August" is a
5684
+ * single rule rather than two.
5685
+ *
5686
+ * Rules are created and listed through their calendar
5687
+ * (`ophelio.calendars.createRule` / `ophelio.calendars.listRules`); this
5688
+ * resource addresses an individual rule.
5689
+ */
5690
+ declare class CalendarRulesResource extends APIResource {
5691
+ get(id: string, options?: RequestOptions): Promise<CalendarRule>;
5692
+ update(id: string, params: UpdateCalendarRuleParams, options?: RequestOptions): Promise<CalendarRule>;
5693
+ delete(id: string, options?: RequestOptions): Promise<void>;
5694
+ }
5695
+ //#endregion
5696
+ //#region src/resources/calendars.d.ts
5697
+ /**
5698
+ * Calendars are named, reusable date vocabularies ("Peak 2026", "Weekends").
5699
+ * The dates themselves live in the rules attached to them.
5700
+ *
5701
+ * A calendar containing no rules is valid for **all** dates, not none.
5702
+ */
5703
+ declare class CalendarsResource extends APIResource {
5704
+ list(params?: PageParams, options?: RequestOptions): Promise<Page<Calendar>>;
5705
+ get(id: string, options?: RequestOptions): Promise<Calendar>;
5706
+ create(params: CreateCalendarParams, options?: RequestOptions): Promise<Calendar>;
5707
+ update(id: string, params: UpdateCalendarParams, options?: RequestOptions): Promise<Calendar>;
5708
+ delete(id: string, options?: RequestOptions): Promise<void>;
5709
+ listRules(id: string, params?: PageParams, options?: RequestOptions): Promise<Page<CalendarRule>>;
5710
+ createRule(id: string, params: CreateCalendarRuleParams, options?: RequestOptions): Promise<CalendarRule>;
5711
+ }
5712
+ //#endregion
4680
5713
  //#region src/resources/customers.d.ts
4681
5714
  declare class CustomersResource extends APIResource {
4682
5715
  /**
@@ -4812,12 +5845,31 @@ declare class MembershipsResource extends APIResource {
4812
5845
  listTermTransactions(id: string, termId: string, params?: PageParams, options?: RequestOptions): Promise<Page<Transaction>>;
4813
5846
  }
4814
5847
  //#endregion
5848
+ //#region src/resources/plan-entitlement-availabilities.d.ts
5849
+ /**
5850
+ * An availability row says when and where one plan entitlement applies: a
5851
+ * calendar (null = any date) and a set of registered target codes (empty =
5852
+ * anywhere). Rows OR, and a plan entitlement with no rows at all is
5853
+ * unrestricted.
5854
+ *
5855
+ * Rows are created and listed through their plan entitlement
5856
+ * (`ophelio.planEntitlements.createAvailability` / `listAvailabilities`); this
5857
+ * resource addresses an individual row.
5858
+ */
5859
+ declare class PlanEntitlementAvailabilitiesResource extends APIResource {
5860
+ get(id: string, options?: RequestOptions): Promise<PlanEntitlementAvailability>;
5861
+ update(id: string, params: UpdatePlanEntitlementAvailabilityParams, options?: RequestOptions): Promise<PlanEntitlementAvailability>;
5862
+ delete(id: string, options?: RequestOptions): Promise<void>;
5863
+ }
5864
+ //#endregion
4815
5865
  //#region src/resources/plan-entitlements.d.ts
4816
5866
  declare class PlanEntitlementsResource extends APIResource {
4817
5867
  get(id: string, options?: RequestOptions): Promise<PlanEntitlement>;
4818
5868
  update(id: string, params: UpdatePlanEntitlementParams, options?: RequestOptions): Promise<PlanEntitlement>;
4819
5869
  /** Detach an entitlement from its plan. Attach via plans.createEntitlement(). */
4820
5870
  delete(id: string, options?: RequestOptions): Promise<void>;
5871
+ listAvailabilities(id: string, params?: PageParams, options?: RequestOptions): Promise<Page<PlanEntitlementAvailability>>;
5872
+ createAvailability(id: string, params: CreatePlanEntitlementAvailabilityParams, options?: RequestOptions): Promise<PlanEntitlementAvailability>;
4821
5873
  }
4822
5874
  //#endregion
4823
5875
  //#region src/resources/plan-links.d.ts
@@ -4867,6 +5919,31 @@ declare class SalesChannelsResource extends APIResource {
4867
5919
  delete(id: string, options?: RequestOptions): Promise<void>;
4868
5920
  }
4869
5921
  //#endregion
5922
+ //#region src/resources/target-codes.d.ts
5923
+ /**
5924
+ * The registered vocabulary of locations a gate can report (`venue_a`,
5925
+ * `coffee_shop`). Codes are matched exactly — list them and send values back
5926
+ * verbatim rather than constructing or case-folding them.
5927
+ */
5928
+ declare class TargetCodesResource extends APIResource {
5929
+ list(params?: PageParams, options?: RequestOptions): Promise<Page<TargetCode>>;
5930
+ get(id: string, options?: RequestOptions): Promise<TargetCode>;
5931
+ /**
5932
+ * `code` is lowercase letters and digits with single underscores between
5933
+ * segments, at least one letter, 2–64 characters. Anything else is refused
5934
+ * with a 400 rather than normalised, so `Venue A` is an error, not
5935
+ * `venue_a`.
5936
+ */
5937
+ create(params: CreateTargetCodeParams, options?: RequestOptions): Promise<TargetCode>;
5938
+ /**
5939
+ * `display_name` and `description` only — `code` is immutable from
5940
+ * creation and sending it is a 400. To correct a typo, create the right
5941
+ * code, repoint whatever uses it, then delete the old one.
5942
+ */
5943
+ update(id: string, params: UpdateTargetCodeParams, options?: RequestOptions): Promise<TargetCode>;
5944
+ delete(id: string, options?: RequestOptions): Promise<void>;
5945
+ }
5946
+ //#endregion
4870
5947
  //#region src/resources/webhook-subscriptions.d.ts
4871
5948
  declare class WebhookSubscriptionsResource extends APIResource {
4872
5949
  list(options?: RequestOptions): Promise<WebhookSubscription[]>;
@@ -4942,7 +6019,11 @@ declare class Ophelio {
4942
6019
  readonly memberRoles: MemberRolesResource;
4943
6020
  readonly pricingGroups: PricingGroupsResource;
4944
6021
  readonly salesChannels: SalesChannelsResource;
6022
+ readonly targetCodes: TargetCodesResource;
6023
+ readonly calendars: CalendarsResource;
6024
+ readonly calendarRules: CalendarRulesResource;
4945
6025
  readonly planEntitlements: PlanEntitlementsResource;
6026
+ readonly planEntitlementAvailabilities: PlanEntitlementAvailabilitiesResource;
4946
6027
  readonly planLinks: PlanLinksResource;
4947
6028
  readonly planPricingGroupMappings: PlanPricingGroupMappingsResource;
4948
6029
  readonly billingOptionSalesChannels: BillingOptionSalesChannelsResource;
@@ -5025,4 +6106,4 @@ declare function paginate<T>(fetchPage: (params: PageParams) => Promise<Page<T>>
5025
6106
  */
5026
6107
  declare function collect<T>(fetchPage: (params: PageParams) => Promise<Page<T>>, params?: PageParams): Promise<T[]>;
5027
6108
  //#endregion
5028
- export { AddMemberParams, AdmitResult, AlreadyExistsError, BillingOption, BillingOptionSalesChannel, CancelMembershipParams, CreateBillingOptionParams, CreateBillingOptionSalesChannelParams, CreateCustomerParams, CreateEntitlementParams, CreateMemberRoleParams, CreateMembershipParams, CreatePlanEntitlementParams, CreatePlanLinkParams, CreatePlanParams, CreatePlanPricingGroupMappingParams, CreatePricingGroupParams, CreateSalesChannelParams, CreateTransactionParams, CreateWebhookSubscriptionParams, Customer, CustomerMembershipSummary, CustomerView, DEFAULT_BASE_URL, Entitlement, EntitlementType, EntitlementUsage, type IdempotentRequestOptions, InternalError, InvalidArgumentError, Member, MemberEntitlement, MemberRole, MemberSyncResponse, Membership, MembershipTerm, NotFoundError, Ophelio, OphelioConnectionError, OphelioError, type OphelioOptions, OphelioTimeoutError, type OphelioWebhookEvent, Page, PageParams, PermissionDeniedError, Plan, PlanChangeParams, PlanChangeResult, PlanEntitlement, PlanLink, PlanLinkView, PlanPricingGroupMapping, PricingGroup, RecordUsageParams, RedeemEntitlementParams, RedeemEntitlementResponse, ReissueCardParams, RenewMembershipParams, type RequestOptions, ResourceExhaustedError, SalesChannel, ScheduledChange, SyncMember, Transaction, UnauthenticatedError, UnavailableError, UnimplementedError, UpdateBillingOptionParams, UpdateCustomerParams, UpdateEntitlementParams, UpdateMemberParams, UpdateMemberRoleParams, UpdateMembershipParams, UpdatePlanEntitlementParams, UpdatePlanParams, UpdatePricingGroupParams, UpdateSalesChannelParams, UpdateWebhookSubscriptionParams, WEBHOOK_EVENT_CODES, WebhookDelivery, type WebhookEventCode, WebhookSignatureVerificationError, WebhookSubscription, collect, type components, constructEvent, type operations, paginate, type paths, verifyWebhookSignature };
6109
+ export { AddMemberParams, AdmitResult, AlreadyExistsError, BillingOption, BillingOptionSalesChannel, Calendar, CalendarRule, CancelMembershipParams, CreateBillingOptionParams, CreateBillingOptionSalesChannelParams, CreateCalendarParams, CreateCalendarRuleParams, CreateCustomerParams, CreateEntitlementParams, CreateMemberRoleParams, CreateMembershipParams, CreatePlanEntitlementAvailabilityParams, CreatePlanEntitlementParams, CreatePlanLinkParams, CreatePlanParams, CreatePlanPricingGroupMappingParams, CreatePricingGroupParams, CreateSalesChannelParams, CreateTargetCodeParams, CreateTransactionParams, CreateWebhookSubscriptionParams, Customer, CustomerMembershipSummary, CustomerView, DEFAULT_BASE_URL, Entitlement, EntitlementType, EntitlementUsage, type IdempotentRequestOptions, InternalError, InvalidArgumentError, Member, MemberEntitlement, MemberRole, MemberSyncResponse, Membership, MembershipTerm, NotFoundError, Ophelio, OphelioConnectionError, OphelioError, type OphelioOptions, OphelioTimeoutError, type OphelioWebhookEvent, Page, PageParams, PermissionDeniedError, Plan, PlanChangeParams, PlanChangeResult, PlanEntitlement, PlanEntitlementAvailability, PlanLink, PlanLinkView, PlanPricingGroupMapping, PricingGroup, RecordUsageParams, RedeemEntitlementParams, RedeemEntitlementResponse, ReissueCardParams, RenewMembershipParams, type RequestOptions, ResourceExhaustedError, SalesChannel, ScheduledChange, SyncMember, TargetCode, Transaction, UnauthenticatedError, UnavailableError, UnimplementedError, UpdateBillingOptionParams, UpdateCalendarParams, UpdateCalendarRuleParams, UpdateCustomerParams, UpdateEntitlementParams, UpdateMemberParams, UpdateMemberRoleParams, UpdateMembershipParams, UpdatePlanEntitlementAvailabilityParams, UpdatePlanEntitlementParams, UpdatePlanParams, UpdatePricingGroupParams, UpdateSalesChannelParams, UpdateTargetCodeParams, UpdateWebhookSubscriptionParams, WEBHOOK_EVENT_CODES, WebhookDelivery, type WebhookEventCode, WebhookSignatureVerificationError, WebhookSubscription, collect, type components, constructEvent, type operations, paginate, type paths, verifyWebhookSignature };