@toolpack-sdk/knowledge 3.0.0 → 3.2.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.
package/dist/index.d.cts CHANGED
@@ -101,6 +101,8 @@ interface KnowledgeOptions {
101
101
  onError?: ErrorHandler;
102
102
  onSync?: SyncEventHandler;
103
103
  onEmbeddingProgress?: EmbeddingProgressHandler;
104
+ onAdd?: KnowledgeAddHandler;
105
+ onDelete?: KnowledgeDeleteHandler;
104
106
  streamingBatchSize?: number;
105
107
  }
106
108
  type ErrorHandler = (error: Error, context: {
@@ -121,6 +123,17 @@ interface EmbeddingProgressEvent {
121
123
  percent: number;
122
124
  }
123
125
  type EmbeddingProgressHandler = (event: EmbeddingProgressEvent) => void;
126
+ interface KnowledgeAddEvent {
127
+ id: string;
128
+ content: string;
129
+ metadata: Record<string, unknown>;
130
+ }
131
+ type KnowledgeAddHandler = (event: KnowledgeAddEvent) => void;
132
+ interface KnowledgeDeleteEvent {
133
+ ids: string[];
134
+ filter?: MetadataFilter;
135
+ }
136
+ type KnowledgeDeleteHandler = (event: KnowledgeDeleteEvent) => void;
124
137
  declare class Knowledge {
125
138
  private provider;
126
139
  private embedder;
@@ -144,6 +157,21 @@ declare class Knowledge {
144
157
  * @returns The ID of the added chunk
145
158
  */
146
159
  add(content: string, metadata?: Record<string, unknown>): Promise<string>;
160
+ /**
161
+ * Embeds and stores all chunks from a source without clearing existing data.
162
+ * Use this for adding or updating individual items in a persistent store.
163
+ * Returns the number of chunks ingested.
164
+ */
165
+ ingest(source: KnowledgeSource): Promise<number>;
166
+ delete(ids: string[]): Promise<void>;
167
+ /**
168
+ * Deletes all chunks whose metadata matches every key-value pair in the
169
+ * filter. Returns the IDs of the deleted chunks.
170
+ *
171
+ * Useful for cascade-deleting all chunks that belong to a platform item:
172
+ * `knowledge.deleteWhere({ knowledge_item_id: "abc" })`
173
+ */
174
+ deleteWhere(filter: MetadataFilter): Promise<string[]>;
147
175
  stop(): Promise<void>;
148
176
  toTool(): KnowledgeTool;
149
177
  }
@@ -257,6 +285,22 @@ declare class MarkdownSource implements KnowledgeSource {
257
285
  private generateChunkId;
258
286
  }
259
287
 
288
+ interface TextSourceOptions {
289
+ maxChunkSize?: number;
290
+ chunkOverlap?: number;
291
+ namespace?: string;
292
+ metadata?: Record<string, unknown>;
293
+ }
294
+ declare class TextSource implements KnowledgeSource {
295
+ private name;
296
+ private content;
297
+ private options;
298
+ constructor(name: string, content: string, options?: TextSourceOptions);
299
+ load(): AsyncIterable<Chunk>;
300
+ private chunkText;
301
+ private chunkId;
302
+ }
303
+
260
304
  interface WebUrlSourceOptions {
261
305
  maxChunkSize?: number;
262
306
  chunkOverlap?: number;
@@ -470,6 +514,12 @@ interface VertexAIEmbedderOptions {
470
514
  * Example: 500 adds a 0.5s pause between batches (120 QPM effective rate).
471
515
  */
472
516
  rateLimitMs?: number;
517
+ /**
518
+ * Inline service account credentials object (parsed JSON key).
519
+ * When provided, used instead of Application Default Credentials.
520
+ * Mirrors the googleAuthOptions.credentials pattern in VertexAIAdapter.
521
+ */
522
+ credentials?: Record<string, unknown>;
473
523
  }
474
524
  declare class VertexAIEmbedder implements Embedder {
475
525
  readonly dimensions: number;
@@ -480,6 +530,7 @@ declare class VertexAIEmbedder implements Embedder {
480
530
  private readonly retries;
481
531
  private readonly retryDelay;
482
532
  private readonly rateLimitMs;
533
+ private readonly credentials?;
483
534
  private lastEmbedAt;
484
535
  constructor(options?: VertexAIEmbedderOptions);
485
536
  embed(text: string): Promise<number[]>;
@@ -491,4 +542,6 @@ declare class VertexAIEmbedder implements Embedder {
491
542
  declare function keywordSearch(text: string, query: string): number;
492
543
  declare function combineScores(semanticScore: number, keywordScore: number, semanticWeight?: number): number;
493
544
 
494
- export { ApiDataSource, type ApiDataSourceOptions, type Chunk, ChunkTooLargeError, type ChunkUpdate, DimensionMismatchError, type Embedder, EmbeddingError, type EmbeddingProgressEvent, type EmbeddingProgressHandler, type ErrorHandler, IngestionError, JSONSource, type JSONSourceOptions, Knowledge, KnowledgeError, type KnowledgeOptions, type KnowledgeProvider, KnowledgeProviderError, type KnowledgeSource, type KnowledgeTool, type KnowledgeToolParams, type KnowledgeToolResult, MarkdownSource, type MarkdownSourceOptions, MemoryProvider, type MemoryProviderOptions, type MetadataFilter, OllamaEmbedder, type OllamaEmbedderOptions, OpenAIEmbedder, type OpenAIEmbedderOptions, OpenRouterEmbedder, type OpenRouterEmbedderOptions, PersistentKnowledgeProvider, type PersistentKnowledgeProviderOptions, PostgresSource, type PostgresSourceOptions, type QueryOptions, type QueryResult, SQLiteSource, type SQLiteSourceOptions, type SyncEvent, type SyncEventHandler, VertexAIEmbedder, type VertexAIEmbedderOptions, WebUrlSource, type WebUrlSourceOptions, combineScores, keywordSearch };
545
+ declare function matchesFilter(metadata: Record<string, unknown>, filter?: MetadataFilter): boolean;
546
+
547
+ export { ApiDataSource, type ApiDataSourceOptions, type Chunk, ChunkTooLargeError, type ChunkUpdate, DimensionMismatchError, type Embedder, EmbeddingError, type EmbeddingProgressEvent, type EmbeddingProgressHandler, type ErrorHandler, IngestionError, JSONSource, type JSONSourceOptions, Knowledge, type KnowledgeAddEvent, type KnowledgeAddHandler, type KnowledgeDeleteEvent, type KnowledgeDeleteHandler, KnowledgeError, type KnowledgeOptions, type KnowledgeProvider, KnowledgeProviderError, type KnowledgeSource, type KnowledgeTool, type KnowledgeToolParams, type KnowledgeToolResult, MarkdownSource, type MarkdownSourceOptions, MemoryProvider, type MemoryProviderOptions, type MetadataFilter, OllamaEmbedder, type OllamaEmbedderOptions, OpenAIEmbedder, type OpenAIEmbedderOptions, OpenRouterEmbedder, type OpenRouterEmbedderOptions, PersistentKnowledgeProvider, type PersistentKnowledgeProviderOptions, PostgresSource, type PostgresSourceOptions, type QueryOptions, type QueryResult, SQLiteSource, type SQLiteSourceOptions, type SyncEvent, type SyncEventHandler, TextSource, type TextSourceOptions, VertexAIEmbedder, type VertexAIEmbedderOptions, WebUrlSource, type WebUrlSourceOptions, combineScores, keywordSearch, matchesFilter };
package/dist/index.d.ts CHANGED
@@ -101,6 +101,8 @@ interface KnowledgeOptions {
101
101
  onError?: ErrorHandler;
102
102
  onSync?: SyncEventHandler;
103
103
  onEmbeddingProgress?: EmbeddingProgressHandler;
104
+ onAdd?: KnowledgeAddHandler;
105
+ onDelete?: KnowledgeDeleteHandler;
104
106
  streamingBatchSize?: number;
105
107
  }
106
108
  type ErrorHandler = (error: Error, context: {
@@ -121,6 +123,17 @@ interface EmbeddingProgressEvent {
121
123
  percent: number;
122
124
  }
123
125
  type EmbeddingProgressHandler = (event: EmbeddingProgressEvent) => void;
126
+ interface KnowledgeAddEvent {
127
+ id: string;
128
+ content: string;
129
+ metadata: Record<string, unknown>;
130
+ }
131
+ type KnowledgeAddHandler = (event: KnowledgeAddEvent) => void;
132
+ interface KnowledgeDeleteEvent {
133
+ ids: string[];
134
+ filter?: MetadataFilter;
135
+ }
136
+ type KnowledgeDeleteHandler = (event: KnowledgeDeleteEvent) => void;
124
137
  declare class Knowledge {
125
138
  private provider;
126
139
  private embedder;
@@ -144,6 +157,21 @@ declare class Knowledge {
144
157
  * @returns The ID of the added chunk
145
158
  */
146
159
  add(content: string, metadata?: Record<string, unknown>): Promise<string>;
160
+ /**
161
+ * Embeds and stores all chunks from a source without clearing existing data.
162
+ * Use this for adding or updating individual items in a persistent store.
163
+ * Returns the number of chunks ingested.
164
+ */
165
+ ingest(source: KnowledgeSource): Promise<number>;
166
+ delete(ids: string[]): Promise<void>;
167
+ /**
168
+ * Deletes all chunks whose metadata matches every key-value pair in the
169
+ * filter. Returns the IDs of the deleted chunks.
170
+ *
171
+ * Useful for cascade-deleting all chunks that belong to a platform item:
172
+ * `knowledge.deleteWhere({ knowledge_item_id: "abc" })`
173
+ */
174
+ deleteWhere(filter: MetadataFilter): Promise<string[]>;
147
175
  stop(): Promise<void>;
148
176
  toTool(): KnowledgeTool;
149
177
  }
@@ -257,6 +285,22 @@ declare class MarkdownSource implements KnowledgeSource {
257
285
  private generateChunkId;
258
286
  }
259
287
 
288
+ interface TextSourceOptions {
289
+ maxChunkSize?: number;
290
+ chunkOverlap?: number;
291
+ namespace?: string;
292
+ metadata?: Record<string, unknown>;
293
+ }
294
+ declare class TextSource implements KnowledgeSource {
295
+ private name;
296
+ private content;
297
+ private options;
298
+ constructor(name: string, content: string, options?: TextSourceOptions);
299
+ load(): AsyncIterable<Chunk>;
300
+ private chunkText;
301
+ private chunkId;
302
+ }
303
+
260
304
  interface WebUrlSourceOptions {
261
305
  maxChunkSize?: number;
262
306
  chunkOverlap?: number;
@@ -470,6 +514,12 @@ interface VertexAIEmbedderOptions {
470
514
  * Example: 500 adds a 0.5s pause between batches (120 QPM effective rate).
471
515
  */
472
516
  rateLimitMs?: number;
517
+ /**
518
+ * Inline service account credentials object (parsed JSON key).
519
+ * When provided, used instead of Application Default Credentials.
520
+ * Mirrors the googleAuthOptions.credentials pattern in VertexAIAdapter.
521
+ */
522
+ credentials?: Record<string, unknown>;
473
523
  }
474
524
  declare class VertexAIEmbedder implements Embedder {
475
525
  readonly dimensions: number;
@@ -480,6 +530,7 @@ declare class VertexAIEmbedder implements Embedder {
480
530
  private readonly retries;
481
531
  private readonly retryDelay;
482
532
  private readonly rateLimitMs;
533
+ private readonly credentials?;
483
534
  private lastEmbedAt;
484
535
  constructor(options?: VertexAIEmbedderOptions);
485
536
  embed(text: string): Promise<number[]>;
@@ -491,4 +542,6 @@ declare class VertexAIEmbedder implements Embedder {
491
542
  declare function keywordSearch(text: string, query: string): number;
492
543
  declare function combineScores(semanticScore: number, keywordScore: number, semanticWeight?: number): number;
493
544
 
494
- export { ApiDataSource, type ApiDataSourceOptions, type Chunk, ChunkTooLargeError, type ChunkUpdate, DimensionMismatchError, type Embedder, EmbeddingError, type EmbeddingProgressEvent, type EmbeddingProgressHandler, type ErrorHandler, IngestionError, JSONSource, type JSONSourceOptions, Knowledge, KnowledgeError, type KnowledgeOptions, type KnowledgeProvider, KnowledgeProviderError, type KnowledgeSource, type KnowledgeTool, type KnowledgeToolParams, type KnowledgeToolResult, MarkdownSource, type MarkdownSourceOptions, MemoryProvider, type MemoryProviderOptions, type MetadataFilter, OllamaEmbedder, type OllamaEmbedderOptions, OpenAIEmbedder, type OpenAIEmbedderOptions, OpenRouterEmbedder, type OpenRouterEmbedderOptions, PersistentKnowledgeProvider, type PersistentKnowledgeProviderOptions, PostgresSource, type PostgresSourceOptions, type QueryOptions, type QueryResult, SQLiteSource, type SQLiteSourceOptions, type SyncEvent, type SyncEventHandler, VertexAIEmbedder, type VertexAIEmbedderOptions, WebUrlSource, type WebUrlSourceOptions, combineScores, keywordSearch };
545
+ declare function matchesFilter(metadata: Record<string, unknown>, filter?: MetadataFilter): boolean;
546
+
547
+ export { ApiDataSource, type ApiDataSourceOptions, type Chunk, ChunkTooLargeError, type ChunkUpdate, DimensionMismatchError, type Embedder, EmbeddingError, type EmbeddingProgressEvent, type EmbeddingProgressHandler, type ErrorHandler, IngestionError, JSONSource, type JSONSourceOptions, Knowledge, type KnowledgeAddEvent, type KnowledgeAddHandler, type KnowledgeDeleteEvent, type KnowledgeDeleteHandler, KnowledgeError, type KnowledgeOptions, type KnowledgeProvider, KnowledgeProviderError, type KnowledgeSource, type KnowledgeTool, type KnowledgeToolParams, type KnowledgeToolResult, MarkdownSource, type MarkdownSourceOptions, MemoryProvider, type MemoryProviderOptions, type MetadataFilter, OllamaEmbedder, type OllamaEmbedderOptions, OpenAIEmbedder, type OpenAIEmbedderOptions, OpenRouterEmbedder, type OpenRouterEmbedderOptions, PersistentKnowledgeProvider, type PersistentKnowledgeProviderOptions, PostgresSource, type PostgresSourceOptions, type QueryOptions, type QueryResult, SQLiteSource, type SQLiteSourceOptions, type SyncEvent, type SyncEventHandler, TextSource, type TextSourceOptions, VertexAIEmbedder, type VertexAIEmbedderOptions, WebUrlSource, type WebUrlSourceOptions, combineScores, keywordSearch, matchesFilter };