@toolpack-sdk/knowledge 3.0.0 → 3.1.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;
@@ -491,4 +535,6 @@ declare class VertexAIEmbedder implements Embedder {
491
535
  declare function keywordSearch(text: string, query: string): number;
492
536
  declare function combineScores(semanticScore: number, keywordScore: number, semanticWeight?: number): number;
493
537
 
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 };
538
+ declare function matchesFilter(metadata: Record<string, unknown>, filter?: MetadataFilter): boolean;
539
+
540
+ 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;
@@ -491,4 +535,6 @@ declare class VertexAIEmbedder implements Embedder {
491
535
  declare function keywordSearch(text: string, query: string): number;
492
536
  declare function combineScores(semanticScore: number, keywordScore: number, semanticWeight?: number): number;
493
537
 
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 };
538
+ declare function matchesFilter(metadata: Record<string, unknown>, filter?: MetadataFilter): boolean;
539
+
540
+ 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 };