@usethrottle/api-client 2.7.0 → 2.8.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.
@@ -0,0 +1,1578 @@
1
+ import type { CancelablePromise } from '../core/CancelablePromise.js';
2
+ export declare class QuotesService {
3
+ /**
4
+ * List quotes with cursor pagination
5
+ * @param cursor Cursor for pagination (last item ID)
6
+ * @param limit Number of items per page
7
+ * @param status Comma-separated status filter, e.g. proposed,accepted
8
+ * @param q Search quote number, customer email, or buyer reference
9
+ * @param assignedMemberId
10
+ * @param customerId
11
+ * @returns any Default Response
12
+ * @throws ApiError
13
+ */
14
+ static getApiV1Quotes(cursor?: string, limit?: number, status?: string, q?: string, assignedMemberId?: string, customerId?: string): CancelablePromise<{
15
+ data?: Array<{
16
+ id?: string;
17
+ quoteNumber?: string;
18
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
19
+ customerId?: string | null;
20
+ customerEmail?: string | null;
21
+ buyerReference?: string | null;
22
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
23
+ sourceCartId?: string | null;
24
+ assignedMemberId?: string | null;
25
+ currency?: string;
26
+ currentRevisionId?: string | null;
27
+ acceptedRevisionId?: string | null;
28
+ acceptedAt?: string | null;
29
+ checkoutSessionId?: string | null;
30
+ orderId?: string | null;
31
+ declinedAt?: string | null;
32
+ declinedReason?: string | null;
33
+ expiresAt?: string | null;
34
+ /**
35
+ * qtl_ capability token — the buyer link is /q/{shareToken}
36
+ */
37
+ shareToken?: string;
38
+ shareTokenPrefix?: string;
39
+ firstViewedAt?: string | null;
40
+ lastViewedAt?: string | null;
41
+ internalNotes?: string | null;
42
+ /**
43
+ * Arbitrary key-value metadata
44
+ */
45
+ metadata?: Record<string, any>;
46
+ environmentId?: string;
47
+ createdAt?: string;
48
+ updatedAt?: string;
49
+ /**
50
+ * Current revision's frozen total (minor units) — list responses only
51
+ */
52
+ total?: number | null;
53
+ }>;
54
+ meta?: {
55
+ requestId?: string;
56
+ pagination?: {
57
+ cursor?: string | null;
58
+ hasMore?: boolean;
59
+ };
60
+ };
61
+ }>;
62
+ /**
63
+ * Create a quote (draft, or requested for RFQ intake)
64
+ * @returns any Default Response
65
+ * @throws ApiError
66
+ */
67
+ static postApiV1Quotes(): CancelablePromise<{
68
+ data?: {
69
+ quote?: {
70
+ id?: string;
71
+ quoteNumber?: string;
72
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
73
+ customerId?: string | null;
74
+ customerEmail?: string | null;
75
+ buyerReference?: string | null;
76
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
77
+ sourceCartId?: string | null;
78
+ assignedMemberId?: string | null;
79
+ currency?: string;
80
+ currentRevisionId?: string | null;
81
+ acceptedRevisionId?: string | null;
82
+ acceptedAt?: string | null;
83
+ checkoutSessionId?: string | null;
84
+ orderId?: string | null;
85
+ declinedAt?: string | null;
86
+ declinedReason?: string | null;
87
+ expiresAt?: string | null;
88
+ /**
89
+ * qtl_ capability token — the buyer link is /q/{shareToken}
90
+ */
91
+ shareToken?: string;
92
+ shareTokenPrefix?: string;
93
+ firstViewedAt?: string | null;
94
+ lastViewedAt?: string | null;
95
+ internalNotes?: string | null;
96
+ /**
97
+ * Arbitrary key-value metadata
98
+ */
99
+ metadata?: Record<string, any>;
100
+ environmentId?: string;
101
+ createdAt?: string;
102
+ updatedAt?: string;
103
+ };
104
+ revision?: {
105
+ id?: string;
106
+ quoteId?: string;
107
+ revisionNumber?: number;
108
+ state?: 'working' | 'issued' | 'superseded';
109
+ issuedAt?: string | null;
110
+ expiresAt?: string | null;
111
+ subtotal?: number;
112
+ taxTotal?: number;
113
+ discountTotal?: number;
114
+ shippingTotal?: number;
115
+ total?: number;
116
+ shippingMode?: 'none' | 'flat' | 'checkout_calculated' | 'free';
117
+ shippingFlatAmount?: number | null;
118
+ /**
119
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
120
+ */
121
+ paymentTerms?: Record<string, any>;
122
+ depositAmount?: number | null;
123
+ buyerNote?: string | null;
124
+ changeSummary?: string | null;
125
+ leadTime?: string | null;
126
+ pdfStorageKey?: string | null;
127
+ /**
128
+ * Arbitrary key-value metadata
129
+ */
130
+ metadata?: Record<string, any>;
131
+ items?: Array<{
132
+ id?: string;
133
+ revisionId?: string;
134
+ type?: string;
135
+ referenceId?: string | null;
136
+ sku?: string | null;
137
+ name?: string;
138
+ description?: string | null;
139
+ unitPrice?: number;
140
+ quantity?: number;
141
+ subtotal?: number;
142
+ taxAmount?: number;
143
+ discountAmount?: number;
144
+ total?: number;
145
+ priceSource?: 'catalog' | 'override' | 'custom';
146
+ optional?: boolean;
147
+ optionalSelected?: boolean;
148
+ qtyEditable?: boolean;
149
+ imageUrl?: string | null;
150
+ position?: number;
151
+ /**
152
+ * Arbitrary key-value metadata
153
+ */
154
+ metadata?: Record<string, any>;
155
+ createdAt?: string;
156
+ updatedAt?: string;
157
+ }>;
158
+ createdAt?: string;
159
+ updatedAt?: string;
160
+ };
161
+ items?: Array<{
162
+ id?: string;
163
+ revisionId?: string;
164
+ type?: string;
165
+ referenceId?: string | null;
166
+ sku?: string | null;
167
+ name?: string;
168
+ description?: string | null;
169
+ unitPrice?: number;
170
+ quantity?: number;
171
+ subtotal?: number;
172
+ taxAmount?: number;
173
+ discountAmount?: number;
174
+ total?: number;
175
+ priceSource?: 'catalog' | 'override' | 'custom';
176
+ optional?: boolean;
177
+ optionalSelected?: boolean;
178
+ qtyEditable?: boolean;
179
+ imageUrl?: string | null;
180
+ position?: number;
181
+ /**
182
+ * Arbitrary key-value metadata
183
+ */
184
+ metadata?: Record<string, any>;
185
+ createdAt?: string;
186
+ updatedAt?: string;
187
+ }>;
188
+ };
189
+ meta?: {
190
+ requestId?: string;
191
+ pagination?: {
192
+ cursor?: string | null;
193
+ hasMore?: boolean;
194
+ };
195
+ };
196
+ }>;
197
+ /**
198
+ * Get a quote with revisions, comments, and timeline (merchant view)
199
+ * @param id
200
+ * @returns any Default Response
201
+ * @throws ApiError
202
+ */
203
+ static getApiV1Quotes1(id: string): CancelablePromise<{
204
+ data?: {
205
+ id?: string;
206
+ quoteNumber?: string;
207
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
208
+ customerId?: string | null;
209
+ customerEmail?: string | null;
210
+ buyerReference?: string | null;
211
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
212
+ sourceCartId?: string | null;
213
+ assignedMemberId?: string | null;
214
+ currency?: string;
215
+ currentRevisionId?: string | null;
216
+ acceptedRevisionId?: string | null;
217
+ acceptedAt?: string | null;
218
+ checkoutSessionId?: string | null;
219
+ orderId?: string | null;
220
+ declinedAt?: string | null;
221
+ declinedReason?: string | null;
222
+ expiresAt?: string | null;
223
+ /**
224
+ * qtl_ capability token — the buyer link is /q/{shareToken}
225
+ */
226
+ shareToken?: string;
227
+ shareTokenPrefix?: string;
228
+ firstViewedAt?: string | null;
229
+ lastViewedAt?: string | null;
230
+ internalNotes?: string | null;
231
+ /**
232
+ * Arbitrary key-value metadata
233
+ */
234
+ metadata?: Record<string, any>;
235
+ environmentId?: string;
236
+ createdAt?: string;
237
+ updatedAt?: string;
238
+ revisions?: Array<{
239
+ id?: string;
240
+ quoteId?: string;
241
+ revisionNumber?: number;
242
+ state?: 'working' | 'issued' | 'superseded';
243
+ issuedAt?: string | null;
244
+ expiresAt?: string | null;
245
+ subtotal?: number;
246
+ taxTotal?: number;
247
+ discountTotal?: number;
248
+ shippingTotal?: number;
249
+ total?: number;
250
+ shippingMode?: 'none' | 'flat' | 'checkout_calculated' | 'free';
251
+ shippingFlatAmount?: number | null;
252
+ /**
253
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
254
+ */
255
+ paymentTerms?: Record<string, any>;
256
+ depositAmount?: number | null;
257
+ buyerNote?: string | null;
258
+ changeSummary?: string | null;
259
+ leadTime?: string | null;
260
+ pdfStorageKey?: string | null;
261
+ /**
262
+ * Arbitrary key-value metadata
263
+ */
264
+ metadata?: Record<string, any>;
265
+ items?: Array<{
266
+ id?: string;
267
+ revisionId?: string;
268
+ type?: string;
269
+ referenceId?: string | null;
270
+ sku?: string | null;
271
+ name?: string;
272
+ description?: string | null;
273
+ unitPrice?: number;
274
+ quantity?: number;
275
+ subtotal?: number;
276
+ taxAmount?: number;
277
+ discountAmount?: number;
278
+ total?: number;
279
+ priceSource?: 'catalog' | 'override' | 'custom';
280
+ optional?: boolean;
281
+ optionalSelected?: boolean;
282
+ qtyEditable?: boolean;
283
+ imageUrl?: string | null;
284
+ position?: number;
285
+ /**
286
+ * Arbitrary key-value metadata
287
+ */
288
+ metadata?: Record<string, any>;
289
+ createdAt?: string;
290
+ updatedAt?: string;
291
+ }>;
292
+ createdAt?: string;
293
+ updatedAt?: string;
294
+ }>;
295
+ comments?: Array<{
296
+ id?: string;
297
+ quoteId?: string;
298
+ revisionId?: string | null;
299
+ authorType?: 'buyer' | 'merchant' | 'system';
300
+ authorMemberId?: string | null;
301
+ authorName?: string | null;
302
+ authorEmail?: string | null;
303
+ body?: string;
304
+ visibility?: 'shared' | 'internal';
305
+ createdAt?: string;
306
+ }>;
307
+ timeline?: Array<{
308
+ id?: string;
309
+ quoteId?: string;
310
+ type?: string;
311
+ actorType?: 'buyer' | 'merchant' | 'system';
312
+ actorId?: string | null;
313
+ data?: Record<string, any>;
314
+ createdAt?: string;
315
+ }>;
316
+ };
317
+ meta?: {
318
+ requestId?: string;
319
+ pagination?: {
320
+ cursor?: string | null;
321
+ hasMore?: boolean;
322
+ };
323
+ };
324
+ }>;
325
+ /**
326
+ * Update quote assignment, linkage, internal notes, or archive it
327
+ * @param id
328
+ * @param requestBody
329
+ * @returns any Default Response
330
+ * @throws ApiError
331
+ */
332
+ static patchApiV1Quotes(id: string, requestBody: {
333
+ assignedMemberId?: string | null;
334
+ customerId?: string | null;
335
+ customerEmail?: string | null;
336
+ buyerReference?: string | null;
337
+ internalNotes?: string | null;
338
+ /**
339
+ * Arbitrary key-value metadata
340
+ */
341
+ metadata?: Record<string, any>;
342
+ status?: 'archived';
343
+ }): CancelablePromise<{
344
+ data?: {
345
+ id?: string;
346
+ quoteNumber?: string;
347
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
348
+ customerId?: string | null;
349
+ customerEmail?: string | null;
350
+ buyerReference?: string | null;
351
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
352
+ sourceCartId?: string | null;
353
+ assignedMemberId?: string | null;
354
+ currency?: string;
355
+ currentRevisionId?: string | null;
356
+ acceptedRevisionId?: string | null;
357
+ acceptedAt?: string | null;
358
+ checkoutSessionId?: string | null;
359
+ orderId?: string | null;
360
+ declinedAt?: string | null;
361
+ declinedReason?: string | null;
362
+ expiresAt?: string | null;
363
+ /**
364
+ * qtl_ capability token — the buyer link is /q/{shareToken}
365
+ */
366
+ shareToken?: string;
367
+ shareTokenPrefix?: string;
368
+ firstViewedAt?: string | null;
369
+ lastViewedAt?: string | null;
370
+ internalNotes?: string | null;
371
+ /**
372
+ * Arbitrary key-value metadata
373
+ */
374
+ metadata?: Record<string, any>;
375
+ environmentId?: string;
376
+ createdAt?: string;
377
+ updatedAt?: string;
378
+ };
379
+ meta?: {
380
+ requestId?: string;
381
+ pagination?: {
382
+ cursor?: string | null;
383
+ hasMore?: boolean;
384
+ };
385
+ };
386
+ }>;
387
+ /**
388
+ * Start a new working revision cloned from the latest issued revision
389
+ * @param id
390
+ * @returns any Default Response
391
+ * @throws ApiError
392
+ */
393
+ static postApiV1QuotesRevisions(id: string): CancelablePromise<{
394
+ data?: {
395
+ revision?: {
396
+ id?: string;
397
+ quoteId?: string;
398
+ revisionNumber?: number;
399
+ state?: 'working' | 'issued' | 'superseded';
400
+ issuedAt?: string | null;
401
+ expiresAt?: string | null;
402
+ subtotal?: number;
403
+ taxTotal?: number;
404
+ discountTotal?: number;
405
+ shippingTotal?: number;
406
+ total?: number;
407
+ shippingMode?: 'none' | 'flat' | 'checkout_calculated' | 'free';
408
+ shippingFlatAmount?: number | null;
409
+ /**
410
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
411
+ */
412
+ paymentTerms?: Record<string, any>;
413
+ depositAmount?: number | null;
414
+ buyerNote?: string | null;
415
+ changeSummary?: string | null;
416
+ leadTime?: string | null;
417
+ pdfStorageKey?: string | null;
418
+ /**
419
+ * Arbitrary key-value metadata
420
+ */
421
+ metadata?: Record<string, any>;
422
+ items?: Array<{
423
+ id?: string;
424
+ revisionId?: string;
425
+ type?: string;
426
+ referenceId?: string | null;
427
+ sku?: string | null;
428
+ name?: string;
429
+ description?: string | null;
430
+ unitPrice?: number;
431
+ quantity?: number;
432
+ subtotal?: number;
433
+ taxAmount?: number;
434
+ discountAmount?: number;
435
+ total?: number;
436
+ priceSource?: 'catalog' | 'override' | 'custom';
437
+ optional?: boolean;
438
+ optionalSelected?: boolean;
439
+ qtyEditable?: boolean;
440
+ imageUrl?: string | null;
441
+ position?: number;
442
+ /**
443
+ * Arbitrary key-value metadata
444
+ */
445
+ metadata?: Record<string, any>;
446
+ createdAt?: string;
447
+ updatedAt?: string;
448
+ }>;
449
+ createdAt?: string;
450
+ updatedAt?: string;
451
+ };
452
+ items?: Array<{
453
+ id?: string;
454
+ revisionId?: string;
455
+ type?: string;
456
+ referenceId?: string | null;
457
+ sku?: string | null;
458
+ name?: string;
459
+ description?: string | null;
460
+ unitPrice?: number;
461
+ quantity?: number;
462
+ subtotal?: number;
463
+ taxAmount?: number;
464
+ discountAmount?: number;
465
+ total?: number;
466
+ priceSource?: 'catalog' | 'override' | 'custom';
467
+ optional?: boolean;
468
+ optionalSelected?: boolean;
469
+ qtyEditable?: boolean;
470
+ imageUrl?: string | null;
471
+ position?: number;
472
+ /**
473
+ * Arbitrary key-value metadata
474
+ */
475
+ metadata?: Record<string, any>;
476
+ createdAt?: string;
477
+ updatedAt?: string;
478
+ }>;
479
+ };
480
+ meta?: {
481
+ requestId?: string;
482
+ pagination?: {
483
+ cursor?: string | null;
484
+ hasMore?: boolean;
485
+ };
486
+ };
487
+ }>;
488
+ /**
489
+ * Edit the working revision (items, terms, expiry, notes)
490
+ * @param id
491
+ * @param revId
492
+ * @returns any Default Response
493
+ * @throws ApiError
494
+ */
495
+ static patchApiV1QuotesRevisions(id: string, revId: string): CancelablePromise<{
496
+ data?: {
497
+ revision?: {
498
+ id?: string;
499
+ quoteId?: string;
500
+ revisionNumber?: number;
501
+ state?: 'working' | 'issued' | 'superseded';
502
+ issuedAt?: string | null;
503
+ expiresAt?: string | null;
504
+ subtotal?: number;
505
+ taxTotal?: number;
506
+ discountTotal?: number;
507
+ shippingTotal?: number;
508
+ total?: number;
509
+ shippingMode?: 'none' | 'flat' | 'checkout_calculated' | 'free';
510
+ shippingFlatAmount?: number | null;
511
+ /**
512
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
513
+ */
514
+ paymentTerms?: Record<string, any>;
515
+ depositAmount?: number | null;
516
+ buyerNote?: string | null;
517
+ changeSummary?: string | null;
518
+ leadTime?: string | null;
519
+ pdfStorageKey?: string | null;
520
+ /**
521
+ * Arbitrary key-value metadata
522
+ */
523
+ metadata?: Record<string, any>;
524
+ items?: Array<{
525
+ id?: string;
526
+ revisionId?: string;
527
+ type?: string;
528
+ referenceId?: string | null;
529
+ sku?: string | null;
530
+ name?: string;
531
+ description?: string | null;
532
+ unitPrice?: number;
533
+ quantity?: number;
534
+ subtotal?: number;
535
+ taxAmount?: number;
536
+ discountAmount?: number;
537
+ total?: number;
538
+ priceSource?: 'catalog' | 'override' | 'custom';
539
+ optional?: boolean;
540
+ optionalSelected?: boolean;
541
+ qtyEditable?: boolean;
542
+ imageUrl?: string | null;
543
+ position?: number;
544
+ /**
545
+ * Arbitrary key-value metadata
546
+ */
547
+ metadata?: Record<string, any>;
548
+ createdAt?: string;
549
+ updatedAt?: string;
550
+ }>;
551
+ createdAt?: string;
552
+ updatedAt?: string;
553
+ };
554
+ items?: Array<{
555
+ id?: string;
556
+ revisionId?: string;
557
+ type?: string;
558
+ referenceId?: string | null;
559
+ sku?: string | null;
560
+ name?: string;
561
+ description?: string | null;
562
+ unitPrice?: number;
563
+ quantity?: number;
564
+ subtotal?: number;
565
+ taxAmount?: number;
566
+ discountAmount?: number;
567
+ total?: number;
568
+ priceSource?: 'catalog' | 'override' | 'custom';
569
+ optional?: boolean;
570
+ optionalSelected?: boolean;
571
+ qtyEditable?: boolean;
572
+ imageUrl?: string | null;
573
+ position?: number;
574
+ /**
575
+ * Arbitrary key-value metadata
576
+ */
577
+ metadata?: Record<string, any>;
578
+ createdAt?: string;
579
+ updatedAt?: string;
580
+ }>;
581
+ };
582
+ meta?: {
583
+ requestId?: string;
584
+ pagination?: {
585
+ cursor?: string | null;
586
+ hasMore?: boolean;
587
+ };
588
+ };
589
+ }>;
590
+ /**
591
+ * Freeze the working revision, supersede the prior one, and propose the quote
592
+ * @param id
593
+ * @returns any Default Response
594
+ * @throws ApiError
595
+ */
596
+ static postApiV1QuotesIssue(id: string): CancelablePromise<{
597
+ data?: {
598
+ quote?: {
599
+ id?: string;
600
+ quoteNumber?: string;
601
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
602
+ customerId?: string | null;
603
+ customerEmail?: string | null;
604
+ buyerReference?: string | null;
605
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
606
+ sourceCartId?: string | null;
607
+ assignedMemberId?: string | null;
608
+ currency?: string;
609
+ currentRevisionId?: string | null;
610
+ acceptedRevisionId?: string | null;
611
+ acceptedAt?: string | null;
612
+ checkoutSessionId?: string | null;
613
+ orderId?: string | null;
614
+ declinedAt?: string | null;
615
+ declinedReason?: string | null;
616
+ expiresAt?: string | null;
617
+ /**
618
+ * qtl_ capability token — the buyer link is /q/{shareToken}
619
+ */
620
+ shareToken?: string;
621
+ shareTokenPrefix?: string;
622
+ firstViewedAt?: string | null;
623
+ lastViewedAt?: string | null;
624
+ internalNotes?: string | null;
625
+ /**
626
+ * Arbitrary key-value metadata
627
+ */
628
+ metadata?: Record<string, any>;
629
+ environmentId?: string;
630
+ createdAt?: string;
631
+ updatedAt?: string;
632
+ };
633
+ revision?: {
634
+ id?: string;
635
+ quoteId?: string;
636
+ revisionNumber?: number;
637
+ state?: 'working' | 'issued' | 'superseded';
638
+ issuedAt?: string | null;
639
+ expiresAt?: string | null;
640
+ subtotal?: number;
641
+ taxTotal?: number;
642
+ discountTotal?: number;
643
+ shippingTotal?: number;
644
+ total?: number;
645
+ shippingMode?: 'none' | 'flat' | 'checkout_calculated' | 'free';
646
+ shippingFlatAmount?: number | null;
647
+ /**
648
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
649
+ */
650
+ paymentTerms?: Record<string, any>;
651
+ depositAmount?: number | null;
652
+ buyerNote?: string | null;
653
+ changeSummary?: string | null;
654
+ leadTime?: string | null;
655
+ pdfStorageKey?: string | null;
656
+ /**
657
+ * Arbitrary key-value metadata
658
+ */
659
+ metadata?: Record<string, any>;
660
+ items?: Array<{
661
+ id?: string;
662
+ revisionId?: string;
663
+ type?: string;
664
+ referenceId?: string | null;
665
+ sku?: string | null;
666
+ name?: string;
667
+ description?: string | null;
668
+ unitPrice?: number;
669
+ quantity?: number;
670
+ subtotal?: number;
671
+ taxAmount?: number;
672
+ discountAmount?: number;
673
+ total?: number;
674
+ priceSource?: 'catalog' | 'override' | 'custom';
675
+ optional?: boolean;
676
+ optionalSelected?: boolean;
677
+ qtyEditable?: boolean;
678
+ imageUrl?: string | null;
679
+ position?: number;
680
+ /**
681
+ * Arbitrary key-value metadata
682
+ */
683
+ metadata?: Record<string, any>;
684
+ createdAt?: string;
685
+ updatedAt?: string;
686
+ }>;
687
+ createdAt?: string;
688
+ updatedAt?: string;
689
+ };
690
+ items?: Array<{
691
+ id?: string;
692
+ revisionId?: string;
693
+ type?: string;
694
+ referenceId?: string | null;
695
+ sku?: string | null;
696
+ name?: string;
697
+ description?: string | null;
698
+ unitPrice?: number;
699
+ quantity?: number;
700
+ subtotal?: number;
701
+ taxAmount?: number;
702
+ discountAmount?: number;
703
+ total?: number;
704
+ priceSource?: 'catalog' | 'override' | 'custom';
705
+ optional?: boolean;
706
+ optionalSelected?: boolean;
707
+ qtyEditable?: boolean;
708
+ imageUrl?: string | null;
709
+ position?: number;
710
+ /**
711
+ * Arbitrary key-value metadata
712
+ */
713
+ metadata?: Record<string, any>;
714
+ createdAt?: string;
715
+ updatedAt?: string;
716
+ }>;
717
+ };
718
+ meta?: {
719
+ requestId?: string;
720
+ pagination?: {
721
+ cursor?: string | null;
722
+ hasMore?: boolean;
723
+ };
724
+ };
725
+ }>;
726
+ /**
727
+ * Rotate the buyer link token (invalidates the old link)
728
+ * @param id
729
+ * @returns any Default Response
730
+ * @throws ApiError
731
+ */
732
+ static postApiV1QuotesRotateLink(id: string): CancelablePromise<{
733
+ data?: {
734
+ quote?: {
735
+ id?: string;
736
+ quoteNumber?: string;
737
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
738
+ customerId?: string | null;
739
+ customerEmail?: string | null;
740
+ buyerReference?: string | null;
741
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
742
+ sourceCartId?: string | null;
743
+ assignedMemberId?: string | null;
744
+ currency?: string;
745
+ currentRevisionId?: string | null;
746
+ acceptedRevisionId?: string | null;
747
+ acceptedAt?: string | null;
748
+ checkoutSessionId?: string | null;
749
+ orderId?: string | null;
750
+ declinedAt?: string | null;
751
+ declinedReason?: string | null;
752
+ expiresAt?: string | null;
753
+ /**
754
+ * qtl_ capability token — the buyer link is /q/{shareToken}
755
+ */
756
+ shareToken?: string;
757
+ shareTokenPrefix?: string;
758
+ firstViewedAt?: string | null;
759
+ lastViewedAt?: string | null;
760
+ internalNotes?: string | null;
761
+ /**
762
+ * Arbitrary key-value metadata
763
+ */
764
+ metadata?: Record<string, any>;
765
+ environmentId?: string;
766
+ createdAt?: string;
767
+ updatedAt?: string;
768
+ };
769
+ shareToken?: string;
770
+ };
771
+ meta?: {
772
+ requestId?: string;
773
+ pagination?: {
774
+ cursor?: string | null;
775
+ hasMore?: boolean;
776
+ };
777
+ };
778
+ }>;
779
+ /**
780
+ * Add a merchant comment (shared with the buyer, or internal)
781
+ * @param id
782
+ * @param requestBody
783
+ * @returns any Default Response
784
+ * @throws ApiError
785
+ */
786
+ static postApiV1QuotesComments(id: string, requestBody: {
787
+ body: string;
788
+ visibility?: 'shared' | 'internal';
789
+ revisionId?: string | null;
790
+ }): CancelablePromise<{
791
+ data?: {
792
+ id?: string;
793
+ quoteId?: string;
794
+ revisionId?: string | null;
795
+ authorType?: 'buyer' | 'merchant' | 'system';
796
+ authorMemberId?: string | null;
797
+ authorName?: string | null;
798
+ authorEmail?: string | null;
799
+ body?: string;
800
+ visibility?: 'shared' | 'internal';
801
+ createdAt?: string;
802
+ };
803
+ meta?: {
804
+ requestId?: string;
805
+ pagination?: {
806
+ cursor?: string | null;
807
+ hasMore?: boolean;
808
+ };
809
+ };
810
+ }>;
811
+ /**
812
+ * Snapshot a cart's lines into a requested quote (the cart is unchanged)
813
+ * @param id
814
+ * @param requestBody
815
+ * @returns any Default Response
816
+ * @throws ApiError
817
+ */
818
+ static postApiV1CartsRequestQuote(id: string, requestBody: {
819
+ buyerReference?: string | null;
820
+ note?: string | null;
821
+ }): CancelablePromise<{
822
+ data?: {
823
+ quote?: {
824
+ id?: string;
825
+ quoteNumber?: string;
826
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
827
+ customerId?: string | null;
828
+ customerEmail?: string | null;
829
+ buyerReference?: string | null;
830
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
831
+ sourceCartId?: string | null;
832
+ assignedMemberId?: string | null;
833
+ currency?: string;
834
+ currentRevisionId?: string | null;
835
+ acceptedRevisionId?: string | null;
836
+ acceptedAt?: string | null;
837
+ checkoutSessionId?: string | null;
838
+ orderId?: string | null;
839
+ declinedAt?: string | null;
840
+ declinedReason?: string | null;
841
+ expiresAt?: string | null;
842
+ /**
843
+ * qtl_ capability token — the buyer link is /q/{shareToken}
844
+ */
845
+ shareToken?: string;
846
+ shareTokenPrefix?: string;
847
+ firstViewedAt?: string | null;
848
+ lastViewedAt?: string | null;
849
+ internalNotes?: string | null;
850
+ /**
851
+ * Arbitrary key-value metadata
852
+ */
853
+ metadata?: Record<string, any>;
854
+ environmentId?: string;
855
+ createdAt?: string;
856
+ updatedAt?: string;
857
+ };
858
+ revision?: {
859
+ id?: string;
860
+ quoteId?: string;
861
+ revisionNumber?: number;
862
+ state?: 'working' | 'issued' | 'superseded';
863
+ issuedAt?: string | null;
864
+ expiresAt?: string | null;
865
+ subtotal?: number;
866
+ taxTotal?: number;
867
+ discountTotal?: number;
868
+ shippingTotal?: number;
869
+ total?: number;
870
+ shippingMode?: 'none' | 'flat' | 'checkout_calculated' | 'free';
871
+ shippingFlatAmount?: number | null;
872
+ /**
873
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
874
+ */
875
+ paymentTerms?: Record<string, any>;
876
+ depositAmount?: number | null;
877
+ buyerNote?: string | null;
878
+ changeSummary?: string | null;
879
+ leadTime?: string | null;
880
+ pdfStorageKey?: string | null;
881
+ /**
882
+ * Arbitrary key-value metadata
883
+ */
884
+ metadata?: Record<string, any>;
885
+ items?: Array<{
886
+ id?: string;
887
+ revisionId?: string;
888
+ type?: string;
889
+ referenceId?: string | null;
890
+ sku?: string | null;
891
+ name?: string;
892
+ description?: string | null;
893
+ unitPrice?: number;
894
+ quantity?: number;
895
+ subtotal?: number;
896
+ taxAmount?: number;
897
+ discountAmount?: number;
898
+ total?: number;
899
+ priceSource?: 'catalog' | 'override' | 'custom';
900
+ optional?: boolean;
901
+ optionalSelected?: boolean;
902
+ qtyEditable?: boolean;
903
+ imageUrl?: string | null;
904
+ position?: number;
905
+ /**
906
+ * Arbitrary key-value metadata
907
+ */
908
+ metadata?: Record<string, any>;
909
+ createdAt?: string;
910
+ updatedAt?: string;
911
+ }>;
912
+ createdAt?: string;
913
+ updatedAt?: string;
914
+ };
915
+ items?: Array<{
916
+ id?: string;
917
+ revisionId?: string;
918
+ type?: string;
919
+ referenceId?: string | null;
920
+ sku?: string | null;
921
+ name?: string;
922
+ description?: string | null;
923
+ unitPrice?: number;
924
+ quantity?: number;
925
+ subtotal?: number;
926
+ taxAmount?: number;
927
+ discountAmount?: number;
928
+ total?: number;
929
+ priceSource?: 'catalog' | 'override' | 'custom';
930
+ optional?: boolean;
931
+ optionalSelected?: boolean;
932
+ qtyEditable?: boolean;
933
+ imageUrl?: string | null;
934
+ position?: number;
935
+ /**
936
+ * Arbitrary key-value metadata
937
+ */
938
+ metadata?: Record<string, any>;
939
+ createdAt?: string;
940
+ updatedAt?: string;
941
+ }>;
942
+ };
943
+ meta?: {
944
+ requestId?: string;
945
+ pagination?: {
946
+ cursor?: string | null;
947
+ hasMore?: boolean;
948
+ };
949
+ };
950
+ }>;
951
+ /**
952
+ * Get a quote by its buyer link token (public, buyer-shaped)
953
+ * @param token
954
+ * @returns any Default Response
955
+ * @throws ApiError
956
+ */
957
+ static getApiV1QuoteLinks(token: string): CancelablePromise<{
958
+ data?: {
959
+ quoteNumber?: string;
960
+ status?: 'in_progress' | 'ready' | 'being_revised' | 'accepted' | 'ordered' | 'declined' | 'expired';
961
+ buyerReference?: string | null;
962
+ currency?: string;
963
+ expiresAt?: string | null;
964
+ currentRevision?: any | null;
965
+ revisionHistory?: Array<{
966
+ id?: string;
967
+ revisionNumber?: number;
968
+ issuedAt?: string | null;
969
+ expiresAt?: string | null;
970
+ subtotal?: number;
971
+ taxTotal?: number;
972
+ discountTotal?: number;
973
+ shippingTotal?: number;
974
+ total?: number;
975
+ shippingMode?: string;
976
+ shippingFlatAmount?: number | null;
977
+ /**
978
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
979
+ */
980
+ paymentTerms?: Record<string, any>;
981
+ depositAmount?: number | null;
982
+ buyerNote?: string | null;
983
+ changeSummary?: string | null;
984
+ leadTime?: string | null;
985
+ items?: Array<{
986
+ id?: string;
987
+ type?: string;
988
+ sku?: string | null;
989
+ name?: string;
990
+ description?: string | null;
991
+ unitPrice?: number;
992
+ quantity?: number;
993
+ subtotal?: number;
994
+ taxAmount?: number;
995
+ discountAmount?: number;
996
+ total?: number;
997
+ optional?: boolean;
998
+ optionalSelected?: boolean;
999
+ qtyEditable?: boolean;
1000
+ imageUrl?: string | null;
1001
+ position?: number;
1002
+ }>;
1003
+ }>;
1004
+ comments?: Array<{
1005
+ id?: string;
1006
+ authorType?: 'buyer' | 'merchant' | 'system';
1007
+ authorName?: string | null;
1008
+ body?: string;
1009
+ createdAt?: string;
1010
+ }>;
1011
+ orderId?: string | null;
1012
+ branding?: any | null;
1013
+ };
1014
+ meta?: {
1015
+ requestId?: string;
1016
+ pagination?: {
1017
+ cursor?: string | null;
1018
+ hasMore?: boolean;
1019
+ };
1020
+ };
1021
+ }>;
1022
+ /**
1023
+ * Record a buyer view of the quote link (throttled quote.viewed webhook)
1024
+ * @param token
1025
+ * @returns any Default Response
1026
+ * @throws ApiError
1027
+ */
1028
+ static postApiV1QuoteLinksView(token: string): CancelablePromise<{
1029
+ data?: {
1030
+ quote?: {
1031
+ quoteNumber?: string;
1032
+ status?: 'in_progress' | 'ready' | 'being_revised' | 'accepted' | 'ordered' | 'declined' | 'expired';
1033
+ buyerReference?: string | null;
1034
+ currency?: string;
1035
+ expiresAt?: string | null;
1036
+ currentRevision?: any | null;
1037
+ revisionHistory?: Array<{
1038
+ id?: string;
1039
+ revisionNumber?: number;
1040
+ issuedAt?: string | null;
1041
+ expiresAt?: string | null;
1042
+ subtotal?: number;
1043
+ taxTotal?: number;
1044
+ discountTotal?: number;
1045
+ shippingTotal?: number;
1046
+ total?: number;
1047
+ shippingMode?: string;
1048
+ shippingFlatAmount?: number | null;
1049
+ /**
1050
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
1051
+ */
1052
+ paymentTerms?: Record<string, any>;
1053
+ depositAmount?: number | null;
1054
+ buyerNote?: string | null;
1055
+ changeSummary?: string | null;
1056
+ leadTime?: string | null;
1057
+ items?: Array<{
1058
+ id?: string;
1059
+ type?: string;
1060
+ sku?: string | null;
1061
+ name?: string;
1062
+ description?: string | null;
1063
+ unitPrice?: number;
1064
+ quantity?: number;
1065
+ subtotal?: number;
1066
+ taxAmount?: number;
1067
+ discountAmount?: number;
1068
+ total?: number;
1069
+ optional?: boolean;
1070
+ optionalSelected?: boolean;
1071
+ qtyEditable?: boolean;
1072
+ imageUrl?: string | null;
1073
+ position?: number;
1074
+ }>;
1075
+ }>;
1076
+ comments?: Array<{
1077
+ id?: string;
1078
+ authorType?: 'buyer' | 'merchant' | 'system';
1079
+ authorName?: string | null;
1080
+ body?: string;
1081
+ createdAt?: string;
1082
+ }>;
1083
+ orderId?: string | null;
1084
+ branding?: any | null;
1085
+ };
1086
+ expiredVisit?: boolean;
1087
+ };
1088
+ meta?: {
1089
+ requestId?: string;
1090
+ pagination?: {
1091
+ cursor?: string | null;
1092
+ hasMore?: boolean;
1093
+ };
1094
+ };
1095
+ }>;
1096
+ /**
1097
+ * Add a buyer comment (always shared)
1098
+ * @param token
1099
+ * @returns any Default Response
1100
+ * @throws ApiError
1101
+ */
1102
+ static postApiV1QuoteLinksComments(token: string): CancelablePromise<{
1103
+ data?: {
1104
+ id?: string;
1105
+ authorType?: 'buyer' | 'merchant' | 'system';
1106
+ authorName?: string | null;
1107
+ body?: string;
1108
+ createdAt?: string;
1109
+ };
1110
+ meta?: {
1111
+ requestId?: string;
1112
+ pagination?: {
1113
+ cursor?: string | null;
1114
+ hasMore?: boolean;
1115
+ };
1116
+ };
1117
+ }>;
1118
+ /**
1119
+ * Ask for changes instead of accepting the current proposal
1120
+ * @param token
1121
+ * @returns any Default Response
1122
+ * @throws ApiError
1123
+ */
1124
+ static postApiV1QuoteLinksRequestRevision(token: string): CancelablePromise<{
1125
+ data?: {
1126
+ quoteNumber?: string;
1127
+ status?: 'in_progress' | 'ready' | 'being_revised' | 'accepted' | 'ordered' | 'declined' | 'expired';
1128
+ buyerReference?: string | null;
1129
+ currency?: string;
1130
+ expiresAt?: string | null;
1131
+ currentRevision?: any | null;
1132
+ revisionHistory?: Array<{
1133
+ id?: string;
1134
+ revisionNumber?: number;
1135
+ issuedAt?: string | null;
1136
+ expiresAt?: string | null;
1137
+ subtotal?: number;
1138
+ taxTotal?: number;
1139
+ discountTotal?: number;
1140
+ shippingTotal?: number;
1141
+ total?: number;
1142
+ shippingMode?: string;
1143
+ shippingFlatAmount?: number | null;
1144
+ /**
1145
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
1146
+ */
1147
+ paymentTerms?: Record<string, any>;
1148
+ depositAmount?: number | null;
1149
+ buyerNote?: string | null;
1150
+ changeSummary?: string | null;
1151
+ leadTime?: string | null;
1152
+ items?: Array<{
1153
+ id?: string;
1154
+ type?: string;
1155
+ sku?: string | null;
1156
+ name?: string;
1157
+ description?: string | null;
1158
+ unitPrice?: number;
1159
+ quantity?: number;
1160
+ subtotal?: number;
1161
+ taxAmount?: number;
1162
+ discountAmount?: number;
1163
+ total?: number;
1164
+ optional?: boolean;
1165
+ optionalSelected?: boolean;
1166
+ qtyEditable?: boolean;
1167
+ imageUrl?: string | null;
1168
+ position?: number;
1169
+ }>;
1170
+ }>;
1171
+ comments?: Array<{
1172
+ id?: string;
1173
+ authorType?: 'buyer' | 'merchant' | 'system';
1174
+ authorName?: string | null;
1175
+ body?: string;
1176
+ createdAt?: string;
1177
+ }>;
1178
+ orderId?: string | null;
1179
+ branding?: any | null;
1180
+ };
1181
+ meta?: {
1182
+ requestId?: string;
1183
+ pagination?: {
1184
+ cursor?: string | null;
1185
+ hasMore?: boolean;
1186
+ };
1187
+ };
1188
+ }>;
1189
+ /**
1190
+ * Decline the quote
1191
+ * @param token
1192
+ * @returns any Default Response
1193
+ * @throws ApiError
1194
+ */
1195
+ static postApiV1QuoteLinksDecline(token: string): CancelablePromise<{
1196
+ data?: {
1197
+ quoteNumber?: string;
1198
+ status?: 'in_progress' | 'ready' | 'being_revised' | 'accepted' | 'ordered' | 'declined' | 'expired';
1199
+ buyerReference?: string | null;
1200
+ currency?: string;
1201
+ expiresAt?: string | null;
1202
+ currentRevision?: any | null;
1203
+ revisionHistory?: Array<{
1204
+ id?: string;
1205
+ revisionNumber?: number;
1206
+ issuedAt?: string | null;
1207
+ expiresAt?: string | null;
1208
+ subtotal?: number;
1209
+ taxTotal?: number;
1210
+ discountTotal?: number;
1211
+ shippingTotal?: number;
1212
+ total?: number;
1213
+ shippingMode?: string;
1214
+ shippingFlatAmount?: number | null;
1215
+ /**
1216
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
1217
+ */
1218
+ paymentTerms?: Record<string, any>;
1219
+ depositAmount?: number | null;
1220
+ buyerNote?: string | null;
1221
+ changeSummary?: string | null;
1222
+ leadTime?: string | null;
1223
+ items?: Array<{
1224
+ id?: string;
1225
+ type?: string;
1226
+ sku?: string | null;
1227
+ name?: string;
1228
+ description?: string | null;
1229
+ unitPrice?: number;
1230
+ quantity?: number;
1231
+ subtotal?: number;
1232
+ taxAmount?: number;
1233
+ discountAmount?: number;
1234
+ total?: number;
1235
+ optional?: boolean;
1236
+ optionalSelected?: boolean;
1237
+ qtyEditable?: boolean;
1238
+ imageUrl?: string | null;
1239
+ position?: number;
1240
+ }>;
1241
+ }>;
1242
+ comments?: Array<{
1243
+ id?: string;
1244
+ authorType?: 'buyer' | 'merchant' | 'system';
1245
+ authorName?: string | null;
1246
+ body?: string;
1247
+ createdAt?: string;
1248
+ }>;
1249
+ orderId?: string | null;
1250
+ branding?: any | null;
1251
+ };
1252
+ meta?: {
1253
+ requestId?: string;
1254
+ pagination?: {
1255
+ cursor?: string | null;
1256
+ hasMore?: boolean;
1257
+ };
1258
+ };
1259
+ }>;
1260
+ /**
1261
+ * Buyer accepts the current issued revision; materializes a checkout session (spec §8)
1262
+ * @param token
1263
+ * @returns any Default Response
1264
+ * @throws ApiError
1265
+ */
1266
+ static postApiV1QuoteLinksAccept(token: string): CancelablePromise<{
1267
+ data?: {
1268
+ quote?: {
1269
+ quoteNumber?: string;
1270
+ status?: 'in_progress' | 'ready' | 'being_revised' | 'accepted' | 'ordered' | 'declined' | 'expired';
1271
+ buyerReference?: string | null;
1272
+ currency?: string;
1273
+ expiresAt?: string | null;
1274
+ currentRevision?: any | null;
1275
+ revisionHistory?: Array<{
1276
+ id?: string;
1277
+ revisionNumber?: number;
1278
+ issuedAt?: string | null;
1279
+ expiresAt?: string | null;
1280
+ subtotal?: number;
1281
+ taxTotal?: number;
1282
+ discountTotal?: number;
1283
+ shippingTotal?: number;
1284
+ total?: number;
1285
+ shippingMode?: string;
1286
+ shippingFlatAmount?: number | null;
1287
+ /**
1288
+ * { mode: 'pay_in_full' } | { mode: 'net_terms', netN } | { mode: 'deposit_balance', deposit: { type, value }, balanceNetN }
1289
+ */
1290
+ paymentTerms?: Record<string, any>;
1291
+ depositAmount?: number | null;
1292
+ buyerNote?: string | null;
1293
+ changeSummary?: string | null;
1294
+ leadTime?: string | null;
1295
+ items?: Array<{
1296
+ id?: string;
1297
+ type?: string;
1298
+ sku?: string | null;
1299
+ name?: string;
1300
+ description?: string | null;
1301
+ unitPrice?: number;
1302
+ quantity?: number;
1303
+ subtotal?: number;
1304
+ taxAmount?: number;
1305
+ discountAmount?: number;
1306
+ total?: number;
1307
+ optional?: boolean;
1308
+ optionalSelected?: boolean;
1309
+ qtyEditable?: boolean;
1310
+ imageUrl?: string | null;
1311
+ position?: number;
1312
+ }>;
1313
+ }>;
1314
+ comments?: Array<{
1315
+ id?: string;
1316
+ authorType?: 'buyer' | 'merchant' | 'system';
1317
+ authorName?: string | null;
1318
+ body?: string;
1319
+ createdAt?: string;
1320
+ }>;
1321
+ orderId?: string | null;
1322
+ branding?: any | null;
1323
+ };
1324
+ checkoutUrl?: string;
1325
+ };
1326
+ meta?: {
1327
+ requestId?: string;
1328
+ pagination?: {
1329
+ cursor?: string | null;
1330
+ hasMore?: boolean;
1331
+ };
1332
+ };
1333
+ }>;
1334
+ /**
1335
+ * Record a rep-given acceptance (phone/email deal) and start checkout (spec §8, §9)
1336
+ * @param id
1337
+ * @returns any Default Response
1338
+ * @throws ApiError
1339
+ */
1340
+ static postApiV1QuotesAccept(id: string): CancelablePromise<{
1341
+ data?: {
1342
+ quote?: {
1343
+ id?: string;
1344
+ quoteNumber?: string;
1345
+ status?: 'draft' | 'requested' | 'under_review' | 'proposed' | 'revision_requested' | 'accepted' | 'converted' | 'declined' | 'expired' | 'archived';
1346
+ customerId?: string | null;
1347
+ customerEmail?: string | null;
1348
+ buyerReference?: string | null;
1349
+ source?: 'dashboard' | 'api' | 'cart' | 'request_form';
1350
+ sourceCartId?: string | null;
1351
+ assignedMemberId?: string | null;
1352
+ currency?: string;
1353
+ currentRevisionId?: string | null;
1354
+ acceptedRevisionId?: string | null;
1355
+ acceptedAt?: string | null;
1356
+ checkoutSessionId?: string | null;
1357
+ orderId?: string | null;
1358
+ declinedAt?: string | null;
1359
+ declinedReason?: string | null;
1360
+ expiresAt?: string | null;
1361
+ /**
1362
+ * qtl_ capability token — the buyer link is /q/{shareToken}
1363
+ */
1364
+ shareToken?: string;
1365
+ shareTokenPrefix?: string;
1366
+ firstViewedAt?: string | null;
1367
+ lastViewedAt?: string | null;
1368
+ internalNotes?: string | null;
1369
+ /**
1370
+ * Arbitrary key-value metadata
1371
+ */
1372
+ metadata?: Record<string, any>;
1373
+ environmentId?: string;
1374
+ createdAt?: string;
1375
+ updatedAt?: string;
1376
+ };
1377
+ checkoutUrl?: string;
1378
+ };
1379
+ meta?: {
1380
+ requestId?: string;
1381
+ pagination?: {
1382
+ cursor?: string | null;
1383
+ hasMore?: boolean;
1384
+ };
1385
+ };
1386
+ }>;
1387
+ /**
1388
+ * Download the quote PDF (302 redirect to a short-lived signed URL; lazy-rendered from the frozen issued revision)
1389
+ * @param token
1390
+ * @returns void
1391
+ * @throws ApiError
1392
+ */
1393
+ static getApiV1QuoteLinksPdf(token: string): CancelablePromise<void>;
1394
+ /**
1395
+ * Create a hosted RFQ intake form (token revealed once)
1396
+ * @returns any Default Response
1397
+ * @throws ApiError
1398
+ */
1399
+ static postApiV1QuoteRequestForms(): CancelablePromise<{
1400
+ data?: {
1401
+ form?: {
1402
+ id?: string;
1403
+ slug?: string;
1404
+ /**
1405
+ * First 10 chars of the qrf_ token — the full token is shown once at create/rotate
1406
+ */
1407
+ tokenPrefix?: string;
1408
+ isActive?: boolean;
1409
+ title?: string | null;
1410
+ introText?: string | null;
1411
+ successMessage?: string | null;
1412
+ redirectUrl?: string | null;
1413
+ fields?: Record<string, any>;
1414
+ environmentId?: string;
1415
+ createdAt?: string;
1416
+ updatedAt?: string;
1417
+ };
1418
+ /**
1419
+ * The raw qrf_ token — REVEAL-ONCE; hash-only stored. Hosted form URL: /q/request/{formToken}.
1420
+ */
1421
+ formToken?: string;
1422
+ };
1423
+ meta?: {
1424
+ requestId?: string;
1425
+ pagination?: {
1426
+ cursor?: string | null;
1427
+ hasMore?: boolean;
1428
+ };
1429
+ };
1430
+ }>;
1431
+ /**
1432
+ * List RFQ intake forms for the application + environment
1433
+ * @returns any Default Response
1434
+ * @throws ApiError
1435
+ */
1436
+ static getApiV1QuoteRequestForms(): CancelablePromise<{
1437
+ data?: Array<{
1438
+ id?: string;
1439
+ slug?: string;
1440
+ /**
1441
+ * First 10 chars of the qrf_ token — the full token is shown once at create/rotate
1442
+ */
1443
+ tokenPrefix?: string;
1444
+ isActive?: boolean;
1445
+ title?: string | null;
1446
+ introText?: string | null;
1447
+ successMessage?: string | null;
1448
+ redirectUrl?: string | null;
1449
+ fields?: Record<string, any>;
1450
+ environmentId?: string;
1451
+ createdAt?: string;
1452
+ updatedAt?: string;
1453
+ }>;
1454
+ meta?: {
1455
+ requestId?: string;
1456
+ pagination?: {
1457
+ cursor?: string | null;
1458
+ hasMore?: boolean;
1459
+ };
1460
+ };
1461
+ }>;
1462
+ /**
1463
+ * Update an RFQ intake form (activate/deactivate, texts, fields)
1464
+ * @param id
1465
+ * @returns any Default Response
1466
+ * @throws ApiError
1467
+ */
1468
+ static patchApiV1QuoteRequestForms(id: string): CancelablePromise<{
1469
+ data?: {
1470
+ id?: string;
1471
+ slug?: string;
1472
+ /**
1473
+ * First 10 chars of the qrf_ token — the full token is shown once at create/rotate
1474
+ */
1475
+ tokenPrefix?: string;
1476
+ isActive?: boolean;
1477
+ title?: string | null;
1478
+ introText?: string | null;
1479
+ successMessage?: string | null;
1480
+ redirectUrl?: string | null;
1481
+ fields?: Record<string, any>;
1482
+ environmentId?: string;
1483
+ createdAt?: string;
1484
+ updatedAt?: string;
1485
+ };
1486
+ meta?: {
1487
+ requestId?: string;
1488
+ pagination?: {
1489
+ cursor?: string | null;
1490
+ hasMore?: boolean;
1491
+ };
1492
+ };
1493
+ }>;
1494
+ /**
1495
+ * Rotate the form token (old URL 404s immediately; new token revealed once)
1496
+ * @param id
1497
+ * @returns any Default Response
1498
+ * @throws ApiError
1499
+ */
1500
+ static postApiV1QuoteRequestFormsRotateToken(id: string): CancelablePromise<{
1501
+ data?: {
1502
+ form?: {
1503
+ id?: string;
1504
+ slug?: string;
1505
+ /**
1506
+ * First 10 chars of the qrf_ token — the full token is shown once at create/rotate
1507
+ */
1508
+ tokenPrefix?: string;
1509
+ isActive?: boolean;
1510
+ title?: string | null;
1511
+ introText?: string | null;
1512
+ successMessage?: string | null;
1513
+ redirectUrl?: string | null;
1514
+ fields?: Record<string, any>;
1515
+ environmentId?: string;
1516
+ createdAt?: string;
1517
+ updatedAt?: string;
1518
+ };
1519
+ /**
1520
+ * The raw qrf_ token — REVEAL-ONCE; hash-only stored. Hosted form URL: /q/request/{formToken}.
1521
+ */
1522
+ formToken?: string;
1523
+ };
1524
+ meta?: {
1525
+ requestId?: string;
1526
+ pagination?: {
1527
+ cursor?: string | null;
1528
+ hasMore?: boolean;
1529
+ };
1530
+ };
1531
+ }>;
1532
+ /**
1533
+ * Public form config for the hosted RFQ page (token-authenticated)
1534
+ * @param token
1535
+ * @returns any Default Response
1536
+ * @throws ApiError
1537
+ */
1538
+ static getApiV1QuoteRequestFormsPublic(token: string): CancelablePromise<{
1539
+ data?: {
1540
+ slug?: string;
1541
+ title?: string | null;
1542
+ introText?: string | null;
1543
+ successMessage?: string | null;
1544
+ redirectUrl?: string | null;
1545
+ fields?: {
1546
+ companyName?: boolean;
1547
+ phone?: boolean;
1548
+ buyerReference?: boolean;
1549
+ requireTurnstile?: boolean;
1550
+ };
1551
+ };
1552
+ meta?: {
1553
+ requestId?: string;
1554
+ pagination?: {
1555
+ cursor?: string | null;
1556
+ hasMore?: boolean;
1557
+ };
1558
+ };
1559
+ }>;
1560
+ /**
1561
+ * Public RFQ submission (honeypot + min-fill-time + rate limit + optional Turnstile)
1562
+ * @returns any Default Response
1563
+ * @throws ApiError
1564
+ */
1565
+ static postApiV1QuoteRequests(): CancelablePromise<{
1566
+ data?: {
1567
+ submitted?: boolean;
1568
+ };
1569
+ meta?: {
1570
+ requestId?: string;
1571
+ pagination?: {
1572
+ cursor?: string | null;
1573
+ hasMore?: boolean;
1574
+ };
1575
+ };
1576
+ }>;
1577
+ }
1578
+ //# sourceMappingURL=QuotesService.d.ts.map