@flagpole/api-types 1.0.1

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.
@@ -0,0 +1,827 @@
1
+ "use strict";
2
+ /* eslint-disable */
3
+ /* tslint:disable */
4
+ /*
5
+ * ---------------------------------------------------------------
6
+ * ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##
7
+ * ## ##
8
+ * ## AUTHOR: acacode ##
9
+ * ## SOURCE: https://github.com/acacode/swagger-typescript-api ##
10
+ * ---------------------------------------------------------------
11
+ */
12
+ var __importDefault = (this && this.__importDefault) || function (mod) {
13
+ return (mod && mod.__esModule) ? mod : { "default": mod };
14
+ };
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.Api = exports.HttpClient = exports.ContentType = void 0;
17
+ const axios_1 = __importDefault(require("axios"));
18
+ var ContentType;
19
+ (function (ContentType) {
20
+ ContentType["Json"] = "application/json";
21
+ ContentType["FormData"] = "multipart/form-data";
22
+ ContentType["UrlEncoded"] = "application/x-www-form-urlencoded";
23
+ ContentType["Text"] = "text/plain";
24
+ })(ContentType || (exports.ContentType = ContentType = {}));
25
+ class HttpClient {
26
+ constructor({ securityWorker, secure, format, ...axiosConfig } = {}) {
27
+ this.securityData = null;
28
+ this.setSecurityData = (data) => {
29
+ this.securityData = data;
30
+ };
31
+ this.request = async ({ secure, path, type, query, format, body, ...params }) => {
32
+ const secureParams = ((typeof secure === "boolean" ? secure : this.secure) &&
33
+ this.securityWorker &&
34
+ (await this.securityWorker(this.securityData))) ||
35
+ {};
36
+ const requestParams = this.mergeRequestParams(params, secureParams);
37
+ const responseFormat = format || this.format || undefined;
38
+ if (type === ContentType.FormData && body && body !== null && typeof body === "object") {
39
+ body = this.createFormData(body);
40
+ }
41
+ if (type === ContentType.Text && body && body !== null && typeof body !== "string") {
42
+ body = JSON.stringify(body);
43
+ }
44
+ return this.instance.request({
45
+ ...requestParams,
46
+ headers: {
47
+ ...(requestParams.headers || {}),
48
+ ...(type && type !== ContentType.FormData ? { "Content-Type": type } : {}),
49
+ },
50
+ params: query,
51
+ responseType: responseFormat,
52
+ data: body,
53
+ url: path,
54
+ });
55
+ };
56
+ this.instance = axios_1.default.create({ ...axiosConfig, baseURL: axiosConfig.baseURL || "http://localhost:5000" });
57
+ this.secure = secure;
58
+ this.format = format;
59
+ this.securityWorker = securityWorker;
60
+ }
61
+ mergeRequestParams(params1, params2) {
62
+ const method = params1.method || (params2 && params2.method);
63
+ return {
64
+ ...this.instance.defaults,
65
+ ...params1,
66
+ ...(params2 || {}),
67
+ headers: {
68
+ ...((method && this.instance.defaults.headers[method.toLowerCase()]) || {}),
69
+ ...(params1.headers || {}),
70
+ ...((params2 && params2.headers) || {}),
71
+ },
72
+ };
73
+ }
74
+ stringifyFormItem(formItem) {
75
+ if (typeof formItem === "object" && formItem !== null) {
76
+ return JSON.stringify(formItem);
77
+ }
78
+ else {
79
+ return `${formItem}`;
80
+ }
81
+ }
82
+ createFormData(input) {
83
+ return Object.keys(input || {}).reduce((formData, key) => {
84
+ const property = input[key];
85
+ const propertyContent = property instanceof Array ? property : [property];
86
+ for (const formItem of propertyContent) {
87
+ const isFileType = formItem instanceof Blob || formItem instanceof File;
88
+ formData.append(key, isFileType ? formItem : this.stringifyFormItem(formItem));
89
+ }
90
+ return formData;
91
+ }, new FormData());
92
+ }
93
+ }
94
+ exports.HttpClient = HttpClient;
95
+ /**
96
+ * @title FlagPole API
97
+ * @version 1.0.0
98
+ * @license Proprietary (https://useflagpole.dev/terms)
99
+ * @baseUrl http://localhost:5000
100
+ * @contact FlagPole Support <support@useflagpole.dev> (https://useflagpole.dev)
101
+ *
102
+ * API for managing feature flags and organizations
103
+ */
104
+ class Api {
105
+ constructor(http) {
106
+ this.api = {
107
+ /**
108
+ * No description
109
+ *
110
+ * @tags auth
111
+ * @name AuthControllerLogin
112
+ * @summary Login with email and password
113
+ * @request POST:/api/auth/login
114
+ * @response `200` `AuthControllerLoginData` Returns JWT token and user information
115
+ */
116
+ authControllerLogin: (data, params = {}) => this.http.request({
117
+ path: `/api/auth/login`,
118
+ method: "POST",
119
+ body: data,
120
+ type: ContentType.Json,
121
+ ...params,
122
+ }),
123
+ /**
124
+ * No description
125
+ *
126
+ * @tags auth
127
+ * @name AuthControllerGoogleAuth
128
+ * @summary Login with Google
129
+ * @request GET:/api/auth/google
130
+ * @response `302` `void` Redirects to Google login page
131
+ */
132
+ authControllerGoogleAuth: (params = {}) => this.http.request({
133
+ path: `/api/auth/google`,
134
+ method: "GET",
135
+ ...params,
136
+ }),
137
+ /**
138
+ * No description
139
+ *
140
+ * @tags auth
141
+ * @name AuthControllerGoogleAuthRedirect
142
+ * @summary Google auth callback
143
+ * @request GET:/api/auth/google/callback
144
+ * @response `200` `AuthControllerGoogleAuthRedirectData` Returns JWT token and user information after successful Google login
145
+ */
146
+ authControllerGoogleAuthRedirect: (params = {}) => this.http.request({
147
+ path: `/api/auth/google/callback`,
148
+ method: "GET",
149
+ ...params,
150
+ }),
151
+ /**
152
+ * No description
153
+ *
154
+ * @tags auth
155
+ * @name AuthControllerGetCurrentUser
156
+ * @summary Get current user information
157
+ * @request GET:/api/auth/me
158
+ * @secure
159
+ * @response `200` `AuthControllerGetCurrentUserData` Returns current user information
160
+ */
161
+ authControllerGetCurrentUser: (params = {}) => this.http.request({
162
+ path: `/api/auth/me`,
163
+ method: "GET",
164
+ secure: true,
165
+ ...params,
166
+ }),
167
+ /**
168
+ * No description
169
+ *
170
+ * @tags auth
171
+ * @name AuthControllerLogout
172
+ * @summary Log user out
173
+ * @request POST:/api/auth/logout
174
+ * @secure
175
+ * @response `204` `AuthControllerLogoutData` User logged out successfully
176
+ * @response `500` `void` Error logging out
177
+ */
178
+ authControllerLogout: (params = {}) => this.http.request({
179
+ path: `/api/auth/logout`,
180
+ method: "POST",
181
+ secure: true,
182
+ ...params,
183
+ }),
184
+ /**
185
+ * No description
186
+ *
187
+ * @tags auth
188
+ * @name AuthControllerForgotPassword
189
+ * @summary Request password reset email
190
+ * @request POST:/api/auth/forgot-password
191
+ * @response `200` `AuthControllerForgotPasswordData` Password reset email sent if user exists
192
+ */
193
+ authControllerForgotPassword: (data, params = {}) => this.http.request({
194
+ path: `/api/auth/forgot-password`,
195
+ method: "POST",
196
+ body: data,
197
+ type: ContentType.Json,
198
+ ...params,
199
+ }),
200
+ /**
201
+ * No description
202
+ *
203
+ * @tags auth
204
+ * @name AuthControllerResetPassword
205
+ * @summary Reset password using token
206
+ * @request POST:/api/auth/reset-password
207
+ * @response `200` `AuthControllerResetPasswordData` Password reset successful
208
+ */
209
+ authControllerResetPassword: (data, params = {}) => this.http.request({
210
+ path: `/api/auth/reset-password`,
211
+ method: "POST",
212
+ body: data,
213
+ type: ContentType.Json,
214
+ ...params,
215
+ }),
216
+ /**
217
+ * No description
218
+ *
219
+ * @tags auth
220
+ * @name AuthControllerAcceptInvitation
221
+ * @request POST:/api/auth/accept-invitation
222
+ * @response `201` `AuthControllerAcceptInvitationData`
223
+ */
224
+ authControllerAcceptInvitation: (data, params = {}) => this.http.request({
225
+ path: `/api/auth/accept-invitation`,
226
+ method: "POST",
227
+ body: data,
228
+ type: ContentType.Json,
229
+ ...params,
230
+ }),
231
+ /**
232
+ * No description
233
+ *
234
+ * @name UsersControllerFindAll
235
+ * @request GET:/api/users
236
+ * @response `200` `UsersControllerFindAllData`
237
+ */
238
+ usersControllerFindAll: (params = {}) => this.http.request({
239
+ path: `/api/users`,
240
+ method: "GET",
241
+ ...params,
242
+ }),
243
+ /**
244
+ * No description
245
+ *
246
+ * @name UsersControllerInvite
247
+ * @request POST:/api/users/invite
248
+ * @response `201` `UsersControllerInviteData`
249
+ */
250
+ usersControllerInvite: (data, params = {}) => this.http.request({
251
+ path: `/api/users/invite`,
252
+ method: "POST",
253
+ body: data,
254
+ type: ContentType.Json,
255
+ ...params,
256
+ }),
257
+ /**
258
+ * No description
259
+ *
260
+ * @name UsersControllerUpdateRole
261
+ * @request PATCH:/api/users/{id}/role
262
+ * @response `200` `UsersControllerUpdateRoleData`
263
+ */
264
+ usersControllerUpdateRole: (id, data, params = {}) => this.http.request({
265
+ path: `/api/users/${id}/role`,
266
+ method: "PATCH",
267
+ body: data,
268
+ type: ContentType.Json,
269
+ ...params,
270
+ }),
271
+ /**
272
+ * No description
273
+ *
274
+ * @name UsersControllerUpdateProjects
275
+ * @request PATCH:/api/users/{id}/projects
276
+ * @response `200` `UsersControllerUpdateProjectsData`
277
+ */
278
+ usersControllerUpdateProjects: (id, data, params = {}) => this.http.request({
279
+ path: `/api/users/${id}/projects`,
280
+ method: "PATCH",
281
+ body: data,
282
+ type: ContentType.Json,
283
+ ...params,
284
+ }),
285
+ /**
286
+ * No description
287
+ *
288
+ * @name UsersControllerDeleteUser
289
+ * @request DELETE:/api/users/{id}
290
+ * @response `200` `UsersControllerDeleteUserData`
291
+ */
292
+ usersControllerDeleteUser: (id, params = {}) => this.http.request({
293
+ path: `/api/users/${id}`,
294
+ method: "DELETE",
295
+ ...params,
296
+ }),
297
+ /**
298
+ * No description
299
+ *
300
+ * @name UsersControllerResendInvitation
301
+ * @request POST:/api/users/{id}/resend-invitation
302
+ * @response `201` `UsersControllerResendInvitationData`
303
+ */
304
+ usersControllerResendInvitation: (id, params = {}) => this.http.request({
305
+ path: `/api/users/${id}/resend-invitation`,
306
+ method: "POST",
307
+ ...params,
308
+ }),
309
+ /**
310
+ * No description
311
+ *
312
+ * @name UsersControllerGetProfile
313
+ * @request GET:/api/users/profile
314
+ * @response `200` `UsersControllerGetProfileData`
315
+ */
316
+ usersControllerGetProfile: (params = {}) => this.http.request({
317
+ path: `/api/users/profile`,
318
+ method: "GET",
319
+ ...params,
320
+ }),
321
+ /**
322
+ * No description
323
+ *
324
+ * @name UsersControllerUpdateProfile
325
+ * @request PATCH:/api/users/profile
326
+ * @response `200` `UsersControllerUpdateProfileData`
327
+ */
328
+ usersControllerUpdateProfile: (data, params = {}) => this.http.request({
329
+ path: `/api/users/profile`,
330
+ method: "PATCH",
331
+ body: data,
332
+ type: ContentType.Json,
333
+ ...params,
334
+ }),
335
+ /**
336
+ * No description
337
+ *
338
+ * @tags organizations
339
+ * @name OrganizationsControllerCreate
340
+ * @summary Create a new organization
341
+ * @request POST:/api/organizations
342
+ * @secure
343
+ * @response `201` `OrganizationsControllerCreateData`
344
+ */
345
+ organizationsControllerCreate: (data, params = {}) => this.http.request({
346
+ path: `/api/organizations`,
347
+ method: "POST",
348
+ body: data,
349
+ secure: true,
350
+ type: ContentType.Json,
351
+ ...params,
352
+ }),
353
+ /**
354
+ * No description
355
+ *
356
+ * @tags organizations
357
+ * @name OrganizationsControllerFindAll
358
+ * @request GET:/api/organizations
359
+ * @secure
360
+ * @response `200` `OrganizationsControllerFindAllData`
361
+ */
362
+ organizationsControllerFindAll: (query, params = {}) => this.http.request({
363
+ path: `/api/organizations`,
364
+ method: "GET",
365
+ query: query,
366
+ secure: true,
367
+ ...params,
368
+ }),
369
+ /**
370
+ * No description
371
+ *
372
+ * @tags organizations
373
+ * @name OrganizationsControllerAddUser
374
+ * @summary Add a user to the organization
375
+ * @request POST:/api/organizations/{id}/users
376
+ * @secure
377
+ * @response `201` `OrganizationsControllerAddUserData`
378
+ */
379
+ organizationsControllerAddUser: (id, data, params = {}) => this.http.request({
380
+ path: `/api/organizations/${id}/users`,
381
+ method: "POST",
382
+ body: data,
383
+ secure: true,
384
+ type: ContentType.Json,
385
+ ...params,
386
+ }),
387
+ /**
388
+ * No description
389
+ *
390
+ * @tags organizations
391
+ * @name OrganizationsControllerSwitchOrganization
392
+ * @summary Switch current organization
393
+ * @request POST:/api/organizations/switch/{id}
394
+ * @secure
395
+ * @response `201` `OrganizationsControllerSwitchOrganizationData`
396
+ */
397
+ organizationsControllerSwitchOrganization: (id, params = {}) => this.http.request({
398
+ path: `/api/organizations/switch/${id}`,
399
+ method: "POST",
400
+ secure: true,
401
+ ...params,
402
+ }),
403
+ /**
404
+ * No description
405
+ *
406
+ * @tags organizations
407
+ * @name OrganizationsControllerGetDemoRequests
408
+ * @summary Get all demo requests
409
+ * @request GET:/api/organizations/demo-requests
410
+ * @secure
411
+ * @response `200` `OrganizationsControllerGetDemoRequestsData`
412
+ */
413
+ organizationsControllerGetDemoRequests: (params = {}) => this.http.request({
414
+ path: `/api/organizations/demo-requests`,
415
+ method: "GET",
416
+ secure: true,
417
+ ...params,
418
+ }),
419
+ /**
420
+ * @description Sets organization status to ACTIVE and optionally activates all users in the organization
421
+ *
422
+ * @tags organizations
423
+ * @name OrganizationsControllerActivateOrganization
424
+ * @summary Activate an organization
425
+ * @request PATCH:/api/organizations/{id}/activate
426
+ * @secure
427
+ * @response `200` `OrganizationsControllerActivateOrganizationData`
428
+ */
429
+ organizationsControllerActivateOrganization: (id, data, params = {}) => this.http.request({
430
+ path: `/api/organizations/${id}/activate`,
431
+ method: "PATCH",
432
+ body: data,
433
+ secure: true,
434
+ type: ContentType.Json,
435
+ ...params,
436
+ }),
437
+ /**
438
+ * No description
439
+ *
440
+ * @name ApiKeysControllerCreate
441
+ * @request POST:/api/api-keys
442
+ * @response `201` `ApiKeysControllerCreateData`
443
+ */
444
+ apiKeysControllerCreate: (data, params = {}) => this.http.request({
445
+ path: `/api/api-keys`,
446
+ method: "POST",
447
+ body: data,
448
+ type: ContentType.Json,
449
+ ...params,
450
+ }),
451
+ /**
452
+ * No description
453
+ *
454
+ * @name ApiKeysControllerFindAll
455
+ * @request GET:/api/api-keys
456
+ * @response `200` `ApiKeysControllerFindAllData`
457
+ */
458
+ apiKeysControllerFindAll: (params = {}) => this.http.request({
459
+ path: `/api/api-keys`,
460
+ method: "GET",
461
+ ...params,
462
+ }),
463
+ /**
464
+ * No description
465
+ *
466
+ * @name ApiKeysControllerDeactivate
467
+ * @request PATCH:/api/api-keys/{id}/deactivate
468
+ * @response `200` `ApiKeysControllerDeactivateData`
469
+ */
470
+ apiKeysControllerDeactivate: (id, params = {}) => this.http.request({
471
+ path: `/api/api-keys/${id}/deactivate`,
472
+ method: "PATCH",
473
+ ...params,
474
+ }),
475
+ /**
476
+ * No description
477
+ *
478
+ * @tags feature-flags
479
+ * @name FeatureFlagControllerCreate
480
+ * @summary Create a new feature flag
481
+ * @request POST:/api/feature-flags
482
+ * @secure
483
+ * @response `201` `FeatureFlagControllerCreateData` Feature flag created successfully
484
+ */
485
+ featureFlagControllerCreate: (data, params = {}) => this.http.request({
486
+ path: `/api/feature-flags`,
487
+ method: "POST",
488
+ body: data,
489
+ secure: true,
490
+ type: ContentType.Json,
491
+ ...params,
492
+ }),
493
+ /**
494
+ * No description
495
+ *
496
+ * @tags feature-flags
497
+ * @name FeatureFlagControllerFindAll
498
+ * @summary Get all feature flags for the current project
499
+ * @request GET:/api/feature-flags
500
+ * @secure
501
+ * @response `200` `FeatureFlagControllerFindAllData` Returns all feature flags
502
+ */
503
+ featureFlagControllerFindAll: (params = {}) => this.http.request({
504
+ path: `/api/feature-flags`,
505
+ method: "GET",
506
+ secure: true,
507
+ ...params,
508
+ }),
509
+ /**
510
+ * No description
511
+ *
512
+ * @tags feature-flags
513
+ * @name FeatureFlagControllerToggle
514
+ * @summary Toggle feature flag status
515
+ * @request PATCH:/api/feature-flags/{id}/toggle
516
+ * @secure
517
+ * @response `200` `FeatureFlagControllerToggleData` Feature flag toggled successfully
518
+ */
519
+ featureFlagControllerToggle: (id, params = {}) => this.http.request({
520
+ path: `/api/feature-flags/${id}/toggle`,
521
+ method: "PATCH",
522
+ secure: true,
523
+ ...params,
524
+ }),
525
+ /**
526
+ * No description
527
+ *
528
+ * @tags feature-flags
529
+ * @name FeatureFlagControllerUpdate
530
+ * @summary Update feature flag
531
+ * @request PATCH:/api/feature-flags/{id}
532
+ * @secure
533
+ * @response `200` `FeatureFlagControllerUpdateData`
534
+ */
535
+ featureFlagControllerUpdate: (id, params = {}) => this.http.request({
536
+ path: `/api/feature-flags/${id}`,
537
+ method: "PATCH",
538
+ secure: true,
539
+ ...params,
540
+ }),
541
+ /**
542
+ * No description
543
+ *
544
+ * @tags feature-flags
545
+ * @name FeatureFlagControllerDelete
546
+ * @summary Delete feature flag
547
+ * @request DELETE:/api/feature-flags/{id}
548
+ * @secure
549
+ * @response `200` `FeatureFlagControllerDeleteData`
550
+ */
551
+ featureFlagControllerDelete: (id, params = {}) => this.http.request({
552
+ path: `/api/feature-flags/${id}`,
553
+ method: "DELETE",
554
+ secure: true,
555
+ ...params,
556
+ }),
557
+ /**
558
+ * No description
559
+ *
560
+ * @tags feature-flags
561
+ * @name FeatureFlagControllerFindAllSdk
562
+ * @summary Get all feature flags for SDK
563
+ * @request GET:/api/feature-flags/sdk
564
+ * @response `200` `FeatureFlagControllerFindAllSdkData` Returns all feature flags
565
+ */
566
+ featureFlagControllerFindAllSdk: (query, params = {}) => this.http.request({
567
+ path: `/api/feature-flags/sdk`,
568
+ method: "GET",
569
+ query: query,
570
+ ...params,
571
+ }),
572
+ /**
573
+ * No description
574
+ *
575
+ * @name ProjectsControllerFindAll
576
+ * @request GET:/api/projects
577
+ * @response `200` `ProjectsControllerFindAllData`
578
+ */
579
+ projectsControllerFindAll: (params = {}) => this.http.request({
580
+ path: `/api/projects`,
581
+ method: "GET",
582
+ ...params,
583
+ }),
584
+ /**
585
+ * No description
586
+ *
587
+ * @name ProjectsControllerCreate
588
+ * @request POST:/api/projects
589
+ * @response `201` `ProjectsControllerCreateData`
590
+ */
591
+ projectsControllerCreate: (data, params = {}) => this.http.request({
592
+ path: `/api/projects`,
593
+ method: "POST",
594
+ body: data,
595
+ type: ContentType.Json,
596
+ ...params,
597
+ }),
598
+ /**
599
+ * No description
600
+ *
601
+ * @name ProjectsControllerUpdate
602
+ * @request PATCH:/api/projects/{id}
603
+ * @response `200` `ProjectsControllerUpdateData`
604
+ */
605
+ projectsControllerUpdate: (id, data, params = {}) => this.http.request({
606
+ path: `/api/projects/${id}`,
607
+ method: "PATCH",
608
+ body: data,
609
+ type: ContentType.Json,
610
+ ...params,
611
+ }),
612
+ /**
613
+ * No description
614
+ *
615
+ * @name ProjectsControllerDelete
616
+ * @request DELETE:/api/projects/{id}
617
+ * @response `200` `ProjectsControllerDeleteData`
618
+ */
619
+ projectsControllerDelete: (id, params = {}) => this.http.request({
620
+ path: `/api/projects/${id}`,
621
+ method: "DELETE",
622
+ ...params,
623
+ }),
624
+ /**
625
+ * No description
626
+ *
627
+ * @name FeedbackControllerSubmit
628
+ * @request POST:/api/feedback
629
+ * @response `201` `FeedbackControllerSubmitData`
630
+ */
631
+ feedbackControllerSubmit: (data, params = {}) => this.http.request({
632
+ path: `/api/feedback`,
633
+ method: "POST",
634
+ body: data,
635
+ type: ContentType.Json,
636
+ ...params,
637
+ }),
638
+ /**
639
+ * No description
640
+ *
641
+ * @tags stripe
642
+ * @name StripeControllerHandleWebhook
643
+ * @summary Handle Stripe webhooks
644
+ * @request POST:/api/stripe/webhook
645
+ * @response `200` `StripeControllerHandleWebhookData` Webhook processed successfully
646
+ * @response `400` `void` Bad request or webhook error
647
+ */
648
+ stripeControllerHandleWebhook: (params = {}) => this.http.request({
649
+ path: `/api/stripe/webhook`,
650
+ method: "POST",
651
+ ...params,
652
+ }),
653
+ /**
654
+ * No description
655
+ *
656
+ * @tags stripe
657
+ * @name StripeControllerHandleWebhookDebug
658
+ * @request POST:/api/stripe/webhook-debug
659
+ * @response `201` `StripeControllerHandleWebhookDebugData`
660
+ */
661
+ stripeControllerHandleWebhookDebug: (params = {}) => this.http.request({
662
+ path: `/api/stripe/webhook-debug`,
663
+ method: "POST",
664
+ ...params,
665
+ }),
666
+ /**
667
+ * No description
668
+ *
669
+ * @tags stripe
670
+ * @name StripeControllerCreateCheckoutSession
671
+ * @summary Create checkout session with specific price ID
672
+ * @request POST:/api/stripe/create-checkout-session
673
+ * @response `200` `StripeControllerCreateCheckoutSessionData` Checkout session created successfully
674
+ * @response `400` `void` Error creating checkout session
675
+ */
676
+ stripeControllerCreateCheckoutSession: (data, params = {}) => this.http.request({
677
+ path: `/api/stripe/create-checkout-session`,
678
+ method: "POST",
679
+ body: data,
680
+ type: ContentType.Json,
681
+ ...params,
682
+ }),
683
+ /**
684
+ * No description
685
+ *
686
+ * @tags stripe
687
+ * @name StripeControllerCreateCheckoutSessionByPlan
688
+ * @summary Create checkout session by plan type (automatically finds correct price)
689
+ * @request POST:/api/stripe/create-checkout-session-by-plan
690
+ * @response `200` `StripeControllerCreateCheckoutSessionByPlanData` Checkout session created successfully
691
+ * @response `400` `void` Error creating checkout session
692
+ */
693
+ stripeControllerCreateCheckoutSessionByPlan: (data, params = {}) => this.http.request({
694
+ path: `/api/stripe/create-checkout-session-by-plan`,
695
+ method: "POST",
696
+ body: data,
697
+ type: ContentType.Json,
698
+ ...params,
699
+ }),
700
+ /**
701
+ * No description
702
+ *
703
+ * @tags stripe
704
+ * @name StripeControllerGetProducts
705
+ * @summary Get all products with features and pricing
706
+ * @request GET:/api/stripe/products
707
+ * @response `200` `StripeControllerGetProductsData` Products retrieved successfully
708
+ * @response `400` `void` Error fetching products
709
+ */
710
+ stripeControllerGetProducts: (query, params = {}) => this.http.request({
711
+ path: `/api/stripe/products`,
712
+ method: "GET",
713
+ query: query,
714
+ ...params,
715
+ }),
716
+ /**
717
+ * No description
718
+ *
719
+ * @tags stripe
720
+ * @name StripeControllerGetEnvironment
721
+ * @summary Get current Stripe environment (test/live mode)
722
+ * @request GET:/api/stripe/environment
723
+ * @response `200` `StripeControllerGetEnvironmentData` Environment information
724
+ */
725
+ stripeControllerGetEnvironment: (params = {}) => this.http.request({
726
+ path: `/api/stripe/environment`,
727
+ method: "GET",
728
+ ...params,
729
+ }),
730
+ /**
731
+ * No description
732
+ *
733
+ * @tags stripe
734
+ * @name StripeControllerCreatePaymentIntent
735
+ * @summary Create a payment intent
736
+ * @request POST:/api/stripe/create-payment-intent
737
+ * @response `200` `StripeControllerCreatePaymentIntentData` Payment intent created successfully
738
+ * @response `400` `void` Error creating payment intent
739
+ */
740
+ stripeControllerCreatePaymentIntent: (data, params = {}) => this.http.request({
741
+ path: `/api/stripe/create-payment-intent`,
742
+ method: "POST",
743
+ body: data,
744
+ type: ContentType.Json,
745
+ ...params,
746
+ }),
747
+ /**
748
+ * No description
749
+ *
750
+ * @tags stripe
751
+ * @name StripeControllerGetSubscription
752
+ * @summary Get subscription by ID
753
+ * @request GET:/api/stripe/subscription/{id}
754
+ * @response `200` `StripeControllerGetSubscriptionData` Subscription retrieved successfully
755
+ * @response `404` `void` Subscription not found
756
+ */
757
+ stripeControllerGetSubscription: (id, params = {}) => this.http.request({
758
+ path: `/api/stripe/subscription/${id}`,
759
+ method: "GET",
760
+ ...params,
761
+ }),
762
+ /**
763
+ * No description
764
+ *
765
+ * @tags stripe
766
+ * @name StripeControllerUpdateSubscription
767
+ * @summary Update subscription
768
+ * @request PATCH:/api/stripe/subscription/{id}
769
+ * @response `200` `StripeControllerUpdateSubscriptionData` Subscription updated successfully
770
+ * @response `404` `void` Subscription not found
771
+ */
772
+ stripeControllerUpdateSubscription: (id, params = {}) => this.http.request({
773
+ path: `/api/stripe/subscription/${id}`,
774
+ method: "PATCH",
775
+ ...params,
776
+ }),
777
+ /**
778
+ * No description
779
+ *
780
+ * @tags stripe
781
+ * @name StripeControllerGetCustomerSubscriptions
782
+ * @summary Get all subscriptions for a customer
783
+ * @request GET:/api/stripe/customer/{id}/subscriptions
784
+ * @response `200` `StripeControllerGetCustomerSubscriptionsData` Customer subscriptions retrieved successfully
785
+ * @response `404` `void` Customer not found
786
+ */
787
+ stripeControllerGetCustomerSubscriptions: (id, params = {}) => this.http.request({
788
+ path: `/api/stripe/customer/${id}/subscriptions`,
789
+ method: "GET",
790
+ ...params,
791
+ }),
792
+ /**
793
+ * No description
794
+ *
795
+ * @tags stripe
796
+ * @name StripeControllerCancelSubscription
797
+ * @summary Cancel subscription
798
+ * @request POST:/api/stripe/subscription/{id}/cancel
799
+ * @response `200` `StripeControllerCancelSubscriptionData` Subscription canceled successfully
800
+ * @response `404` `void` Subscription not found
801
+ */
802
+ stripeControllerCancelSubscription: (id, params = {}) => this.http.request({
803
+ path: `/api/stripe/subscription/${id}/cancel`,
804
+ method: "POST",
805
+ ...params,
806
+ }),
807
+ /**
808
+ * No description
809
+ *
810
+ * @tags onboarding
811
+ * @name OnboardingControllerRequestDemo
812
+ * @summary Request a demo account
813
+ * @request POST:/api/onboarding/request-demo
814
+ * @response `201` `OnboardingControllerRequestDemoData`
815
+ */
816
+ onboardingControllerRequestDemo: (data, params = {}) => this.http.request({
817
+ path: `/api/onboarding/request-demo`,
818
+ method: "POST",
819
+ body: data,
820
+ type: ContentType.Json,
821
+ ...params,
822
+ }),
823
+ };
824
+ this.http = http;
825
+ }
826
+ }
827
+ exports.Api = Api;