@bitbitpress/client 0.1.8 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +106 -118
  2. package/dist/examples/basic-usage.d.ts.map +1 -1
  3. package/dist/examples/basic-usage.js +39 -47
  4. package/dist/examples/basic-usage.js.map +1 -1
  5. package/dist/generated/openapi.d.ts +26 -39
  6. package/dist/index.d.ts +2 -2
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/user/batch-manager.d.ts +6 -5
  9. package/dist/user/batch-manager.d.ts.map +1 -1
  10. package/dist/user/batch-manager.js +15 -23
  11. package/dist/user/batch-manager.js.map +1 -1
  12. package/dist/user/index.d.ts +28 -32
  13. package/dist/user/index.d.ts.map +1 -1
  14. package/dist/user/index.js +44 -20
  15. package/dist/user/index.js.map +1 -1
  16. package/dist/user/profile.d.ts +2 -2
  17. package/dist/user/profile.d.ts.map +1 -1
  18. package/dist/user/profile.js +2 -2
  19. package/dist/user/profile.js.map +1 -1
  20. package/dist/user/recommendations.d.ts +5 -12
  21. package/dist/user/recommendations.d.ts.map +1 -1
  22. package/dist/user/recommendations.js +3 -3
  23. package/dist/user/recommendations.js.map +1 -1
  24. package/dist/user/report.d.ts +3 -3
  25. package/dist/user/report.d.ts.map +1 -1
  26. package/dist/user/report.js +3 -3
  27. package/dist/user/report.js.map +1 -1
  28. package/dist/user/signal-batch-manager.d.ts +5 -7
  29. package/dist/user/signal-batch-manager.d.ts.map +1 -1
  30. package/dist/user/signal-batch-manager.js +7 -7
  31. package/dist/user/signal-batch-manager.js.map +1 -1
  32. package/dist/user/signal.d.ts +3 -3
  33. package/dist/user/signal.d.ts.map +1 -1
  34. package/dist/user/signal.js +3 -3
  35. package/dist/user/signal.js.map +1 -1
  36. package/dist/user/synthesize.d.ts +19 -13
  37. package/dist/user/synthesize.d.ts.map +1 -1
  38. package/dist/user/synthesize.js +26 -4
  39. package/dist/user/synthesize.js.map +1 -1
  40. package/dist/user/token.d.ts +3 -3
  41. package/dist/user/token.d.ts.map +1 -1
  42. package/dist/user/token.js +3 -3
  43. package/dist/user/token.js.map +1 -1
  44. package/dist/user/typeDefs.d.ts +18 -0
  45. package/dist/user/typeDefs.d.ts.map +1 -1
  46. package/package.json +1 -1
package/README.md CHANGED
@@ -411,147 +411,128 @@ console.log('Signal 2 recorded:', response2.recorded);
411
411
 
412
412
  #### synthesizeItem
413
413
 
414
- Synthesize a single item (batched). Items are automatically batched and sent together after the configured timeout. Returns a promise that resolves with the `data` field from the event (excluding 'connected' and 'complete' events).
414
+ Synthesize a single item (batched). Items are automatically batched and sent together after the configured timeout. Returns a promise that resolves with the `data` field from the event for that item's index (excluding 'connected' and 'complete' events).
415
415
 
416
416
  ```typescript
417
- client.user.synthesizeItem(item: SynthesizeRequest['items'][number]): Promise<unknown>
417
+ client.user.synthesizeItem(item: SynthesizeItem): Promise<SynthesizeItemResponse>
418
418
  ```
419
419
 
420
420
  ##### Parameters
421
421
 
422
- - `item` (required): A single synthesize item (same format as items in `synthesize`)
422
+ - `item` (required): A single synthesize item (same shape as items in `synthesize`): `inputs`, `output` (schema as JSON string or Zod 4 schema, optional `staleAfter`), optional `configurationKeyName`
423
423
 
424
424
  ##### Returns
425
425
 
426
- - `Promise<unknown>`: A promise that resolves with the `data` field from the event for this specific item. The data will be:
427
- - For `DAILY_SUMMARY`: `{ summary: string | null }`
428
- - For `CUSTOM`: An object following your schema input, where `fieldNames` are keys
426
+ - `Promise<SynthesizeItemResponse>`: Resolves with the data event for this item — `data` is the synthesized object (keys match your output schema) when present; `error` is set on failure
429
427
 
430
428
  ##### Behavior
431
429
 
432
- - Items added within the batch timeout window (default: 250ms) are grouped together and sent in a single request
433
- - Each item's promise resolves immediately when its data event arrives (based on the `index` field)
434
- - The batching happens in the background - promises resolve as soon as the batch request is sent
435
- - Only data events (DAILY_SUMMARY or CUSTOM) resolve the promise - 'connected' and 'complete' events are ignored
436
- - The batch timeout can be configured when creating the client via `synthesizeBatchTimeout`
430
+ - Items added within the batch timeout window (default: 250ms) are grouped and sent in one request
431
+ - Each item's promise resolves when its data event arrives (by `index`)
432
+ - The batch timeout is configurable via `synthesizeBatchTimeout` when creating the client
437
433
 
438
434
  ##### Example
439
435
 
440
436
  ```typescript
441
- // Items are automatically batched and sent together after the timeout
442
- // Each promise resolves with the data field from the event
443
- const dailySummaryData = await client.user.synthesizeItem({
444
- type: 'DAILY_SUMMARY',
437
+ const result1 = await client.user.synthesizeItem({
438
+ inputs: [{ type: 'externalId', value: 'article-123' }],
439
+ output: {
440
+ schema: JSON.stringify({
441
+ type: 'object',
442
+ properties: { title: { type: 'string' }, summary: { type: 'string' } },
443
+ }),
444
+ },
445
445
  });
446
- // dailySummaryData will be: { summary: string | null }
447
- console.log('Daily summary:', dailySummaryData);
448
-
449
- const customData = await client.user.synthesizeItem({
450
- type: 'CUSTOM',
451
- schema: [
452
- {
453
- fieldName: 'title',
454
- fieldDescription: 'The article title',
455
- fieldCharacterLimitHint: 100,
456
- },
457
- ],
458
- contentContext: {
459
- contentId: 'article-123',
460
- contentType: 'article',
461
- expandOnContext: true,
446
+ console.log('Synthesized:', result1);
447
+
448
+ // Or pass a Zod 4 schema (converted to JSON schema string when sending)
449
+ // meta variables include:
450
+ // - description: formatting and purpose of the field
451
+ // - characterLimitHint: rough amount of max characters the field should have, works as a hint
452
+ import { z } from 'zod';
453
+ const result2 = await client.user.synthesizeItem({
454
+ inputs: [{ type: 'text', value: 'Summarize this' }],
455
+ output: {
456
+ schema: z.object({ headline: z.string().meta({ description: 'headline, uppercase', characterLimitHint: 100 }) }),
457
+ staleAfter: '30m',
462
458
  },
463
459
  });
464
- // customData will be an object with keys matching your schema fieldNames
465
- console.log('Custom data:', customData);
466
-
467
- // Both items are sent together in a single batch request
468
- // Each promise resolves immediately when its data event arrives
469
460
  ```
470
461
 
471
462
  ---
472
463
 
473
464
  #### synthesize
474
465
 
475
- Synthesize user content (streaming). Returns a stream of events for all items.
466
+ Synthesize content items personalized to the user (streaming SSE). Returns a stream of connection and data events.
476
467
 
477
468
  ```typescript
478
- client.user.synthesize(items: SynthesizeRequest['items']): Promise<AsyncIterable<SynthesizeEvent>>
469
+ client.user.synthesize(items: SynthesizeItems): Promise<AsyncIterable<SynthesizeEvent>>
479
470
  ```
480
471
 
481
472
  ##### Parameters
482
473
 
483
- - `items` (required): Array of items to synthesize. Each item can be:
484
- - `{ type: "DAILY_SUMMARY" }`: Generate a daily summary
485
- - `{ type: "CUSTOM", schema: Array<SchemaField>, contentContext: ContentContext }`: Custom synthesis with schema (contentContext is required for CUSTOM items)
486
-
487
- ##### SchemaField
488
-
489
- - `fieldName` (required): Name of the field
490
- - `fieldDescription` (required): A prompt describing the value of the field
491
- - `fieldCharacterLimitHint` (optional): Optional hint for max number of characters that should be returned for this field. Not a guarantee.
492
-
493
- ##### ContentContext (required for CUSTOM items)
494
-
495
- - `contentId` (optional): Your content ID
496
- - `contentType` (optional): The type of content to synthesize (currently only `"article"`)
497
- - `expandOnContext` (optional): If `true`, expands on the current context to provide more data to the synthesis. Determines if the synthesis should focus on the content provided, or if it should expand on it.
474
+ - `items` (required): Array of items. Each item has:
475
+ - `inputs` (optional): Context for synthesis — array of `{ type: "externalId" | "text" | "excludeExternalIds", value: string }` (article ID, freeform text, or comma-separated external IDs to exclude)
476
+ - `output`: `{ schema: string | ZodType, staleAfter?: string }` — output schema as a JSON string or Zod 4 schema (top-level type must be `"object"`); optional staleness (e.g. `"1h"`, `"30m"`, `"1d"`)
477
+ - `configurationKeyName` (optional): Key name for configuration
498
478
 
499
479
  ##### Returns
500
480
 
501
- - `Promise<AsyncIterable<SynthesizeEvent>>`: An async iterable stream of events
481
+ - `Promise<AsyncIterable<SynthesizeEvent>>`: Async iterable of events
502
482
 
503
483
  ##### SynthesizeEvent
504
484
 
505
- Events in the stream can be:
506
-
507
485
  - `{ type: "connected" }`: Connection established
508
- - `{ type: "DAILY_SUMMARY", index: number, data: { summary: string | null } }`: Daily summary data
509
- - `{ type: "CUSTOM", index: number, data: {...} }`: Custom data following your schema
510
486
  - `{ type: "complete" }`: Stream complete
487
+ - `{ index: number, data?: unknown, error?: string }`: Data event for that item — `data` is the synthesized object (keys match your output schema) when present; `error` is set on failure
511
488
 
512
489
  ##### Example
513
490
 
514
491
  ```typescript
492
+ import { z } from 'zod';
493
+
515
494
  const stream = await client.user.synthesize([
516
495
  {
517
- type: 'DAILY_SUMMARY',
496
+ inputs: [{ type: 'externalId', value: 'article-123' }],
497
+ output: {
498
+ schema: JSON.stringify({
499
+ type: 'object',
500
+ properties: { title: { type: 'string' }, summary: { type: 'string' } },
501
+ }),
502
+ },
518
503
  },
519
- {
520
- type: 'CUSTOM',
521
- schema: [
522
- {
523
- fieldName: 'title',
524
- fieldDescription: 'The article title',
525
- fieldCharacterLimitHint: 100,
526
- },
527
- {
528
- fieldName: 'summary',
529
- fieldDescription: 'A brief summary',
530
- fieldCharacterLimitHint: 200,
531
- },
532
- ],
533
- contentContext: {
534
- contentId: 'article-123',
535
- contentType: 'article',
536
- expandOnContext: true,
537
- },
504
+ {
505
+ inputs: [{ type: 'text', value: 'Summarize recent tech news' }],
506
+ output: {
507
+ schema: z.object({ headline: z.string() }),
508
+ staleAfter: '1h',
509
+ },
510
+ },
511
+ // Richer Zod schema: array of objects with description and characterLimitHint
512
+ {
513
+ inputs: [{ type: 'text', value: 'Summarize key points by topic' }],
514
+ output: {
515
+ schema: z.object({
516
+ summaries: z.array(
517
+ z.object({
518
+ summary: z.string().meta({
519
+ description: 'a single sentence summary of a specific topic or facts',
520
+ characterLimitHint: 100,
521
+ }),
522
+ }),
523
+ ),
524
+ }),
538
525
  },
526
+ ],
539
527
  ]);
540
528
 
541
529
  for await (const event of stream) {
542
- switch (event.type) {
543
- case 'connected':
544
- console.log('Stream connected');
545
- break;
546
- case 'DAILY_SUMMARY':
547
- console.log('Daily summary:', event.data);
548
- break;
549
- case 'CUSTOM':
550
- console.log('Custom data:', event.data);
551
- break;
552
- case 'complete':
553
- console.log('Stream complete');
554
- break;
530
+ if ('type' in event) {
531
+ if (event.type === 'connected') console.log('Stream connected');
532
+ else if (event.type === 'complete') console.log('Stream complete');
533
+ } else if ('index' in event) {
534
+ if (event.error) console.error(`Item ${event.index}:`, event.error);
535
+ else console.log(`Item ${event.index}:`, event.data);
555
536
  }
556
537
  }
557
538
  ```
@@ -682,42 +663,49 @@ type SignalResponse = {
682
663
 
683
664
  #### SynthesizeRequest
684
665
 
666
+ Request body for POST `/v1/user/synthesize` (from OpenAPI). Each item has `inputs`, `output`, and optional `configurationKeyName`.
667
+
685
668
  ```typescript
686
669
  type SynthesizeRequest = {
687
- items: Array<
688
- | { type: 'DAILY_SUMMARY' }
689
- | {
690
- type: 'CUSTOM';
691
- schema: Array<{
692
- fieldName: string;
693
- fieldDescription: string;
694
- fieldCharacterLimitHint?: number;
695
- }>;
696
- contentContext: {
697
- contentId?: string;
698
- contentType?: 'article';
699
- expandOnContext?: boolean;
700
- };
701
- }
702
- >;
670
+ items: Array<{
671
+ configurationKeyName?: string;
672
+ inputs?: Array<{ type: 'externalId' | 'text' | 'excludeExternalIds'; value: string }>;
673
+ output: {
674
+ schema: string; // JSON schema string; top-level type must be "object"
675
+ staleAfter?: string;
676
+ };
677
+ }>;
703
678
  }
704
679
  ```
705
680
 
681
+ #### SynthesizeItem / SynthesizeItems
682
+
683
+ Same shape as the request items above, but `output.schema` may be a **string or a Zod 4 schema**; Zod schemas are converted to the expected JSON schema string when sending.
684
+
685
+ - `SynthesizeItem`: Single item (for `synthesizeItem`).
686
+ - `SynthesizeItems`: Array of items (for `synthesize`).
687
+ - `SynthesizeOutputSchema`: `string | ZodType` (exported for typing `output.schema`).
688
+
706
689
  #### SynthesizeEvent
707
690
 
691
+ Stream events (SSE). Connection events use `type`; data events use `index`, optional `data`, and optional `error`.
692
+
708
693
  ```typescript
709
- type SynthesizeEvent = {
710
- type: 'DAILY_SUMMARY' | 'CUSTOM' | 'connected' | 'complete';
711
- index?: number;
712
- data?: unknown;
713
- }
694
+ type SynthesizeEvent =
695
+ | { type: 'connected' }
696
+ | { type: 'complete' }
697
+ | { index: number; data?: unknown; error?: string };
714
698
  ```
715
699
 
716
- For `DAILY_SUMMARY` events, `data` will be:
700
+ `data` is the synthesized object (keys match your output schema) when present; `error` is set on failure.
701
+
702
+ #### SynthesizeItemResponse
703
+
704
+ Return type of `synthesizeItem`. Same shape as a data event payload (without `index`).
705
+
717
706
  ```typescript
718
- {
719
- summary: string | null;
720
- }
707
+ type SynthesizeItemResponse = {
708
+ data?: unknown; // synthesized object when present
709
+ error?: string; // set on failure
710
+ };
721
711
  ```
722
-
723
- For `CUSTOM` events, `data` will be an object following your schema input, where `fieldNames` are keys.
@@ -1 +1 @@
1
- {"version":3,"file":"basic-usage.d.ts","sourceRoot":"","sources":["../../src/examples/basic-usage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,iBAAe,YAAY,kBA4B1B;AAGD,iBAAe,gBAAgB,kBAkD9B;AAGD,iBAAe,uBAAuB,kBAmCrC;AAGD,iBAAe,aAAa,kBAqC3B;AAGD,iBAAe,oBAAoB,kBAiClC;AAED,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,aAAa,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"basic-usage.d.ts","sourceRoot":"","sources":["../../src/examples/basic-usage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,iBAAe,YAAY,kBA4B1B;AAGD,iBAAe,gBAAgB,kBAuC9B;AAGD,iBAAe,uBAAuB,kBAiCrC;AAGD,iBAAe,aAAa,kBAqC3B;AAGD,iBAAe,oBAAoB,kBAiClC;AAED,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,aAAa,EAAE,oBAAoB,EAAE,CAAC"}
@@ -40,43 +40,37 @@ async function streamingExample() {
40
40
  await client.user.authenticate("your-user's-auth-sso-token");
41
41
  const stream = await client.user.synthesize([
42
42
  {
43
- type: 'DAILY_SUMMARY',
43
+ inputs: [{ type: 'externalId', value: 'article-123' }],
44
+ output: {
45
+ schema: JSON.stringify({
46
+ type: 'object',
47
+ properties: { title: { type: 'string' }, summary: { type: 'string' } },
48
+ }),
49
+ },
44
50
  },
45
51
  {
46
- type: 'CUSTOM',
47
- schema: [
48
- {
49
- fieldName: 'title',
50
- fieldDescription: 'The article title',
51
- fieldCharacterLimitHint: 100,
52
- },
53
- {
54
- fieldName: 'summary',
55
- fieldDescription: 'A brief summary',
56
- fieldCharacterLimitHint: 200,
57
- },
58
- ],
59
- contentContext: {
60
- contentId: 'article-123',
61
- contentType: 'article',
62
- expandOnContext: true,
52
+ inputs: [{ type: 'text', value: 'Summarize recent tech news' }],
53
+ output: {
54
+ schema: JSON.stringify({
55
+ type: 'object',
56
+ properties: { headline: { type: 'string' } },
57
+ }),
58
+ staleAfter: '1h',
63
59
  },
64
60
  },
65
61
  ]);
66
62
  for await (const event of stream) {
67
- switch (event.type) {
68
- case 'connected':
63
+ if ('type' in event) {
64
+ if (event.type === 'connected')
69
65
  console.log('Stream connected');
70
- break;
71
- case 'DAILY_SUMMARY':
72
- console.log('Daily summary:', event.data);
73
- break;
74
- case 'CUSTOM':
75
- console.log('Custom data:', event.data);
76
- break;
77
- case 'complete':
66
+ else if (event.type === 'complete')
78
67
  console.log('Stream complete');
79
- break;
68
+ }
69
+ else if ('index' in event) {
70
+ if (event.error)
71
+ console.error(`Item ${event.index}:`, event.error);
72
+ else
73
+ console.log(`Item ${event.index}:`, event.data);
80
74
  }
81
75
  }
82
76
  }
@@ -89,27 +83,25 @@ async function batchedSynthesisExample() {
89
83
  // Authenticate first
90
84
  await client.user.authenticate("your-user's-auth-sso-token");
91
85
  // Items are automatically batched and sent together after the timeout
92
- // Each promise resolves with the data field from the event
93
- const dailySummaryData = await client.user.synthesizeItem({
94
- type: 'DAILY_SUMMARY',
86
+ // Each promise resolves with the synthesized data for that item's index
87
+ const result1 = await client.user.synthesizeItem({
88
+ inputs: [{ type: 'externalId', value: 'article-123' }],
89
+ output: {
90
+ schema: JSON.stringify({
91
+ type: 'object',
92
+ properties: { title: { type: 'string' }, summary: { type: 'string' } },
93
+ }),
94
+ },
95
95
  });
96
- console.log('Daily summary:', dailySummaryData);
97
- const customData = await client.user.synthesizeItem({
98
- type: 'CUSTOM',
99
- schema: [
100
- {
101
- fieldName: 'title',
102
- fieldDescription: 'The article title',
103
- fieldCharacterLimitHint: 100,
104
- },
105
- ],
106
- contentContext: {
107
- contentId: 'article-123',
108
- contentType: 'article',
109
- expandOnContext: true,
96
+ console.log('Synthesized:', result1);
97
+ const result2 = await client.user.synthesizeItem({
98
+ inputs: [{ type: 'text', value: 'Summarize this' }],
99
+ output: {
100
+ schema: JSON.stringify({ type: 'object', properties: { headline: { type: 'string' } } }),
101
+ staleAfter: '30m',
110
102
  },
111
103
  });
112
- console.log('Custom data:', customData);
104
+ console.log('Synthesized:', result2);
113
105
  // Both items are sent together in a single batch request
114
106
  // Each promise resolves immediately when its data event arrives
115
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"basic-usage.js","sourceRoot":"","sources":["../../src/examples/basic-usage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"basic-usage.js","sourceRoot":"","sources":["../../src/examples/basic-usage.ts"],"names":[],"mappings":"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"}
@@ -573,7 +573,7 @@ export interface paths {
573
573
  * Synthesize User Content
574
574
  * @description **POST** `/v1/user/synthesize`
575
575
  *
576
- * Synthesize content items personalized to the user. Each item specifies a type to inform the type of synthesis to perform.
576
+ * Synthesize content items personalized to the user.
577
577
  */
578
578
  post: {
579
579
  parameters: {
@@ -588,70 +588,57 @@ export interface paths {
588
588
  requestBody: {
589
589
  content: {
590
590
  "application/json": {
591
- /** @description Array of items to synthesize */
592
- items: ({
593
- /**
594
- * @description Type of synthesis item.
595
- * @enum {string}
596
- */
597
- type: "DAILY_SUMMARY" | "CUSTOM";
598
- } | {
599
- /** @enum {unknown} */
600
- type?: "DAILY_SUMMARY";
601
- } | {
602
- /** @enum {unknown} */
603
- type?: "CUSTOM";
604
- /** @description Schema describing the output format. */
605
- schema: {
606
- /** @description Name of the field */
607
- fieldName: string;
608
- /** @description A prompt describing the value of the field */
609
- fieldDescription: string;
610
- /** @description Optional hint for max number of characters that should be returned for this field. Not a guarantee. */
611
- fieldCharacterLimitHint?: number;
612
- }[];
613
- /** @description Context data to provide to the prompt. */
614
- contentContext: {
615
- /** @description Your content id */
616
- contentId?: string;
591
+ /** @description Array of items to synthesize. Each item has inputs and output; optional configurationKeyName to use a named config (omit for default). */
592
+ items: {
593
+ /** @description Optional configuration key name. Loads an existing synthesis config by this name; omit for default configuration. */
594
+ configurationKeyName?: string;
595
+ /** @description Inputs used as context for the synthesis: externalId (article ID), or text (freeform text). */
596
+ inputs?: {
617
597
  /**
618
- * @description The type of content to synthesize
598
+ * @description Type of input: externalId (article) or text (freeform).
619
599
  * @enum {string}
620
600
  */
621
- contentType?: "article";
622
- /** @description If true, expands on the current context to provide more data to the synthesis. Determines if the synthesis should focus on the content provided, or if it should expand on it. */
623
- expandOnContext?: boolean;
601
+ type: "externalId" | "text" | "excludeExternalIds";
602
+ /** @description External ID (e.g. article) for externalId, freeform text for text, or comma-separated list of external IDs to exclude */
603
+ value: string;
604
+ }[];
605
+ /** @description Output definition: schema and optional staleness. */
606
+ output: {
607
+ /** @description Output schema as a JSON string. Top-level type must be "object". Example: {"type":"object","properties":{"title":{"type":"string","description":"title"}}} */
608
+ schema: string;
609
+ /** @description Time after which the result is considered stale and will be regenerated again. Examples: "1h", "30m", "1d", "3600" (seconds). */
610
+ staleAfter?: string;
624
611
  };
625
- })[];
612
+ }[];
626
613
  };
627
614
  };
628
615
  };
629
616
  responses: {
630
617
  /**
631
- * @description Streaming response (Server-Sent Events). Each event is a JSON object sent as `data: {JSON}\n\n`. Event types:
618
+ * @description Streaming response (Server-Sent Events). Each event is a JSON object sent as `data: {JSON}\n\n`.
632
619
  *
633
620
  * **Connection Events:**
634
621
  * ```json
635
622
  * {"type":"connected" | "complete"}
636
623
  * ```
637
624
  *
638
- * **Data Events:**
625
+ * **Data Events (success):**
639
626
  * ```json
640
627
  * {
641
- * "type": "DAILY_SUMMARY" | "CUSTOM",
642
628
  * "index": number,
643
629
  * "data": {...}
644
630
  * }
645
631
  * ```
632
+ * `data` is the synthesized object (keys match your output schema).
646
633
  *
647
- * For `DAILY_SUMMARY` type, `data` will be:
634
+ * **Data Events (error):**
648
635
  * ```json
649
636
  * {
650
- * "summary": string | null
637
+ * "index": number,
638
+ * "error": "error message"
651
639
  * }
652
640
  * ```
653
- *
654
- * For `CUSTOM` type, `data` will be an object following your schema input, where `fieldNames` are keys.
641
+ * Sent when synthesis fails for that item (e.g. resolve failure, exception).
655
642
  */
656
643
  200: {
657
644
  headers: {
package/dist/index.d.ts CHANGED
@@ -14,6 +14,6 @@ export type { RecommendationsRequest, RecommendationsResponse } from './user/rec
14
14
  export type { ProfileResponse } from './user/profile.js';
15
15
  export type { ReportRequest, ReportResponse } from './user/report.js';
16
16
  export type { TokenRequest, TokenResponse } from './user/token.js';
17
- export type { SynthesizeRequest } from './user/typeDefs.js';
18
- export type { SynthesizeEvent } from './user/synthesize.js';
17
+ export type { BitBitPressSynthesizeRequest, RecommendationsRequestBody, SynthesizeInput, SynthesizeItem, SynthesizeItems, SynthesizeOutputSchema, SynthesizeRequest, } from './user/typeDefs.js';
18
+ export type { SynthesizeEvent, SynthesizeItemResponse } from './user/synthesize.js';
19
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,WAAW,EACX,QAAQ,GACT,MAAM,cAAc,CAAC;AAGtB,mBAAmB,wBAAwB,CAAC;AAG5C,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9E,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACjG,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACtE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,WAAW,EACX,QAAQ,GACT,MAAM,cAAc,CAAC;AAGtB,mBAAmB,wBAAwB,CAAC;AAG5C,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9E,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACjG,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACtE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EACV,4BAA4B,EAC5B,0BAA0B,EAC1B,eAAe,EACf,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { RequestConfig } from '../request.js';
2
- import type { SynthesizeRequest } from './typeDefs.js';
2
+ import { SynthesizeItemResponse } from './synthesize.js';
3
+ import type { SynthesizeItem } from './typeDefs.js';
3
4
  /**
4
5
  * Batch manager for synthesizeItem
5
6
  * Resolves each item individually based on its index in the response
@@ -7,14 +8,14 @@ import type { SynthesizeRequest } from './typeDefs.js';
7
8
  export declare class SynthesizeBatchManager {
8
9
  private queue;
9
10
  private timer;
10
- private config;
11
+ private getConfig;
11
12
  private batchTimeout;
12
- constructor(config: RequestConfig, batchTimeout: number);
13
+ constructor(getConfig: () => Promise<RequestConfig>, batchTimeout: number);
13
14
  /**
14
- * Update the request configuration (e.g., when token changes)
15
+ * Update the config getter (e.g., when token refresh logic changes)
15
16
  */
16
17
  updateConfig(config: RequestConfig): void;
17
- addItem(item: SynthesizeRequest['items'][number]): Promise<unknown>;
18
+ addItem(item: SynthesizeItem): Promise<SynthesizeItemResponse>;
18
19
  private flush;
19
20
  }
20
21
  //# sourceMappingURL=batch-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch-manager.d.ts","sourceRoot":"","sources":["../../src/user/batch-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAkBvD;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,KAAK,CAIL;IACR,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM;IAKvD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAIzC,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAenE,OAAO,CAAC,KAAK;CA4Bd"}
1
+ {"version":3,"file":"batch-manager.d.ts","sourceRoot":"","sources":["../../src/user/batch-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAwB,sBAAsB,EAAc,MAAM,iBAAiB,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAkBpD;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,KAAK,CAIL;IACR,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,YAAY,CAAS;gBAEjB,SAAS,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,MAAM;IAKzE;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAIzC,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC;YAehD,KAAK;CAyBpB"}