@elqnt/kg 1.0.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/README.md ADDED
@@ -0,0 +1,72 @@
1
+ # @eloquent/kg
2
+
3
+ This package provides knowledge graph functionality for Eloquent applications.
4
+
5
+ ## Installation
6
+
7
+ Since this package is published to GitHub Packages, you'll need to configure npm to use GitHub Packages for the `@eloquent` scope.
8
+
9
+ 1. Create or edit an `.npmrc` file in your project root:
10
+
11
+ ```
12
+ @eloquent:registry=https://npm.pkg.github.com
13
+ //npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}
14
+ ```
15
+
16
+ 2. Set your GitHub token as an environment variable:
17
+
18
+ ```bash
19
+ export GITHUB_TOKEN=your_github_token
20
+ ```
21
+
22
+ 3. Install the package:
23
+
24
+ ```bash
25
+ npm install @eloquent/kg
26
+ ```
27
+
28
+ ## Usage
29
+
30
+ ```typescript
31
+ import {} from /* components or functions */ "@eloquent/kg";
32
+
33
+ // Your code here
34
+ ```
35
+
36
+ ## Development
37
+
38
+ To build the package locally:
39
+
40
+ ```bash
41
+ npm run build
42
+ ```
43
+
44
+ ## Publishing
45
+
46
+ This package is automatically published to GitHub Packages when changes are pushed to the main branch that affect files in the `packages/eloquent/kg` directory.
47
+
48
+ For manual publishing:
49
+
50
+ 1. Make sure you have the correct GitHub token set up
51
+ 2. Update the version in package.json
52
+ 3. Run:
53
+
54
+ ```bash
55
+ cd packages/eloquent/kg
56
+ npm run build
57
+ npm publish
58
+ ```
59
+
60
+ ## Monorepo Integration
61
+
62
+ This package is part of the auto-beam-frontend monorepo. When making changes:
63
+
64
+ 1. The package will be automatically published when changes are pushed to the main branch
65
+ 2. The package follows the early return pattern in its build process
66
+ 3. To use this package in other packages within the monorepo, add it as a dependency in the package.json file:
67
+
68
+ ```json
69
+ "dependencies": {
70
+ "@eloquent/kg": "*"
71
+ }
72
+ ```
@@ -0,0 +1,310 @@
1
+ import { ResponseMetadata } from '@elqnt/types';
2
+ import * as react_jsx_runtime from 'react/jsx-runtime';
3
+ import * as react from 'react';
4
+ import { ReactNode } from 'react';
5
+
6
+ declare const Test = "hi";
7
+
8
+ interface KGNode {
9
+ id: string;
10
+ label: string;
11
+ fields: {
12
+ [key: string]: any;
13
+ };
14
+ relationships?: KGEdge[];
15
+ score?: number;
16
+ }
17
+ interface KGEdge {
18
+ id: string;
19
+ label: string;
20
+ fields: {
21
+ [key: string]: any;
22
+ };
23
+ from: string;
24
+ to: string;
25
+ }
26
+ interface KGNodeIngestRequest {
27
+ label: string;
28
+ keyField?: string;
29
+ reverseEdgeLabel?: string;
30
+ fields: {
31
+ [key: string]: any;
32
+ };
33
+ edges?: KGEdgeIngestRequest[];
34
+ duplicatePolicy?: DuplicatePolicy;
35
+ generateEmbeddings?: boolean;
36
+ embeddingsSource?: string;
37
+ embeddingsFields?: string[];
38
+ }
39
+ type DuplicatePolicy = string;
40
+ declare const DuplicatePolicyCreateIf: DuplicatePolicy;
41
+ declare const DuplicatePolicyIgnore: DuplicatePolicy;
42
+ declare const DuplicatePolicyReplace: DuplicatePolicy;
43
+ declare const DuplicatePolicyFail: DuplicatePolicy;
44
+ declare const DuplicatePolicyCreate: DuplicatePolicy;
45
+ interface KGEdgeIngestRequest {
46
+ label: string;
47
+ fields: {
48
+ [key: string]: any;
49
+ };
50
+ toLabel: string;
51
+ toFieldKey: string;
52
+ toFieldValue: any;
53
+ createReciprocal: boolean;
54
+ reciprocalLabel: string;
55
+ allowEmbeddingsSearch?: boolean;
56
+ }
57
+ interface KGQuery {
58
+ label: string;
59
+ fields: KGFieldQuery[];
60
+ limit: number;
61
+ depth: number;
62
+ sortBy: string;
63
+ sortOrder: string;
64
+ edges?: KGEdgeQuery[];
65
+ embeddingsSource?: string;
66
+ skipEmbedding?: boolean;
67
+ }
68
+ interface KGFieldQuery {
69
+ name: string;
70
+ value: any;
71
+ operator: KGFieldQueryOperator;
72
+ }
73
+ type KGFieldQueryOperator = string;
74
+ declare const KGFieldQueryOperatorEqual: KGFieldQueryOperator;
75
+ declare const KGFieldQueryOperatorNotEqual: KGFieldQueryOperator;
76
+ declare const KGFieldQueryOperatorGreater: KGFieldQueryOperator;
77
+ declare const KGFieldQueryOperatorLess: KGFieldQueryOperator;
78
+ declare const KGFieldQueryOperatorGreaterOrEqual: KGFieldQueryOperator;
79
+ declare const KGFieldQueryOperatorLessOrEqual: KGFieldQueryOperator;
80
+ declare const KGFieldQueryOperatorLike: KGFieldQueryOperator;
81
+ declare const KGFieldQueryOperatorSimilar: KGFieldQueryOperator;
82
+ /**
83
+ * KGFieldQueryOperatorGreaterOrEqual KGFieldQueryOperator = "gte"
84
+ * KGFieldQueryOperatorLessOrEqual KGFieldQueryOperator = "lte"
85
+ */
86
+ declare const KGFieldQueryOperatorIn: KGFieldQueryOperator;
87
+ declare const KGFieldQueryOperatorArrayContains: KGFieldQueryOperator;
88
+ type KGRelationshipDirection = string;
89
+ declare const KGRelationshipDirectionIncoming: KGRelationshipDirection;
90
+ declare const KGRelationshipDirectionOutgoing: KGRelationshipDirection;
91
+ interface KGEdgeQuery {
92
+ label: string;
93
+ direction: 'incoming' | 'outgoing';
94
+ fields?: {
95
+ [key: string]: any;
96
+ };
97
+ /**
98
+ * FromLabel string `json:"fromLabel"`
99
+ * FromFieldKey string `json:"fromFieldKey"`
100
+ * FromValue interface{} `json:"fromValue"`
101
+ */
102
+ toLabel: string;
103
+ toFieldKey: string;
104
+ toFieldValue: any;
105
+ }
106
+ interface KGQueryResult {
107
+ nodes: KGNode[];
108
+ edges: KGEdge[];
109
+ }
110
+ interface KGLabelInfo {
111
+ label: string;
112
+ count: number;
113
+ }
114
+ interface KGPropertyInfo {
115
+ property: string;
116
+ count: number;
117
+ }
118
+ interface KGPLabelSchema {
119
+ label: string;
120
+ keys: string[];
121
+ }
122
+ interface KGArticle {
123
+ id: string;
124
+ title: string;
125
+ content: string;
126
+ lang?: string;
127
+ docUrl?: string;
128
+ paragraphs?: string;
129
+ }
130
+ interface KGPropertyFilter {
131
+ property: string;
132
+ value: string;
133
+ }
134
+ interface KGPropertyFilterRequest {
135
+ label: string;
136
+ filters: KGPropertyFilter[];
137
+ }
138
+ interface DeleteDocumentRequest {
139
+ documentId: string;
140
+ }
141
+ interface DeleteDocumentResponse {
142
+ success: boolean;
143
+ deletedNodes: {
144
+ [key: string]: number;
145
+ };
146
+ totalDeleted: number;
147
+ error?: string;
148
+ }
149
+ /**
150
+ * KGSyncJob represents a sync job record in the database
151
+ */
152
+ interface KGSyncJob {
153
+ id: string;
154
+ title: string;
155
+ stats: {
156
+ [key: string]: any;
157
+ };
158
+ startTime: string;
159
+ endTime: string;
160
+ updatedAt?: string;
161
+ }
162
+ /**
163
+ * KGSyncJobUpdateRequest is used to insert or update a sync job
164
+ */
165
+ interface KGSyncJobUpdateRequest {
166
+ id: string;
167
+ title: string;
168
+ stats: {
169
+ [key: string]: any;
170
+ };
171
+ startTime: string;
172
+ endTime: string;
173
+ }
174
+ interface KGSyncJobUpdateResponse {
175
+ jobId: string;
176
+ metadata: ResponseMetadata;
177
+ }
178
+ interface KGSyncJobListResponse {
179
+ jobs: KGSyncJob[];
180
+ metadata: ResponseMetadata;
181
+ }
182
+ /**
183
+ * KGSyncJobListRequest is used to list sync jobs with filters
184
+ */
185
+ interface KGSyncJobListRequest {
186
+ limit?: number;
187
+ offset?: number;
188
+ startFrom?: string;
189
+ endTo?: string;
190
+ }
191
+
192
+ /**
193
+ * GraphNodeDefinition represents a node type in the knowledge graph
194
+ */
195
+ interface GraphNodeDefinition {
196
+ label: string;
197
+ description: string;
198
+ schema: {
199
+ [key: string]: any;
200
+ };
201
+ createdAt: string;
202
+ updatedAt: string;
203
+ }
204
+ /**
205
+ * GraphEdgeDefinition represents an edge type in the knowledge graph
206
+ */
207
+ interface GraphEdgeDefinition {
208
+ label: string;
209
+ description: string;
210
+ fromNode: string;
211
+ toNode: string;
212
+ schema: {
213
+ [key: string]: any;
214
+ };
215
+ createdAt: string;
216
+ updatedAt: string;
217
+ }
218
+ /**
219
+ * Request/Response types
220
+ */
221
+ interface GraphNodeRequest {
222
+ node: GraphNodeDefinition;
223
+ }
224
+ interface GraphNodeResponse {
225
+ node?: GraphNodeDefinition;
226
+ nodes?: GraphNodeDefinition[];
227
+ success: boolean;
228
+ error?: string;
229
+ }
230
+ interface GraphEdgeRequest {
231
+ edge: GraphEdgeDefinition;
232
+ }
233
+ interface GraphEdgeResponse {
234
+ edge?: GraphEdgeDefinition;
235
+ edges?: GraphEdgeDefinition[];
236
+ success: boolean;
237
+ error?: string;
238
+ }
239
+ /**
240
+ * KG Designer Node subjects
241
+ */
242
+ declare const KGDesignerNodeCreate = "kg.designer.node.create";
243
+ declare const KGDesignerNodeUpdate = "kg.designer.node.update.*";
244
+ declare const KGDesignerNodeDelete = "kg.designer.node.delete.*";
245
+ declare const KGDesignerNodeGet = "kg.designer.node.get.*";
246
+ declare const KGDesignerNodeList = "kg.designer.node.list";
247
+ /**
248
+ * KG Designer Edge subjects
249
+ */
250
+ declare const KGDesignerEdgeCreate = "kg.designer.edge.create";
251
+ declare const KGDesignerEdgeUpdate = "kg.designer.edge.update.*";
252
+ declare const KGDesignerEdgeDelete = "kg.designer.edge.delete.*";
253
+ declare const KGDesignerEdgeGet = "kg.designer.edge.get.*";
254
+ declare const KGDesignerEdgeList = "kg.designer.edge.list";
255
+ /**
256
+ * KG Database subjects
257
+ */
258
+ declare const KGDBCreate = "kg.db.create";
259
+ /**
260
+ * KG Document subjects
261
+ */
262
+ declare const KGDocumentDelete = "kg_ingest.document.delete";
263
+ /**
264
+ * KG Sync Job subjects
265
+ */
266
+ declare const KGSyncJobUpdate = "kg.sync.job.update";
267
+ declare const KGSyncJobList = "kg.sync.job.list";
268
+ /**
269
+ * KG Optimization subjects
270
+ */
271
+ declare const KGGraphOptimize = "kg.graph.optimize";
272
+
273
+ type Success = {
274
+ success: boolean;
275
+ };
276
+ type UseKnowledgeGraphType = {
277
+ isLoading: boolean;
278
+ ingestNode: (node: KGNodeIngestRequest) => Promise<Success | Error>;
279
+ ingestNodes: (node: KGNodeIngestRequest[]) => Promise<Success | Error>;
280
+ updateNode: (nodeId: string, label: string, fields: Record<string, any>) => Promise<Success | Error>;
281
+ ingestDocs: (urls: string[], mode: "documents" | "entities" | "snippets", brief: string, labels: string[]) => Promise<Success | Error>;
282
+ ingestText: (text: string, mode: "entities" | "snippets") => Promise<Success | Error>;
283
+ ingestYT: (url: string) => Promise<Success | Error>;
284
+ queryGraph: (query: KGQuery) => Promise<KGQueryResult>;
285
+ getGraphLabels: () => Promise<KGLabelInfo[] | Error>;
286
+ labels: KGLabelInfo[] | undefined;
287
+ selectedLabel: string | undefined;
288
+ setSelectedLabel: (label: string) => void;
289
+ queryResult: KGQueryResult | undefined;
290
+ setQueryResult: (res: KGQueryResult) => void;
291
+ refreshState: () => void;
292
+ selectedNodeId: string | undefined;
293
+ setSelectedNodeId: (id: string | undefined) => void;
294
+ getNodeById: (id: string) => Promise<KGNode | Error>;
295
+ };
296
+ declare const useKnowledgeGraph: (overrideOrgId?: string) => UseKnowledgeGraphType;
297
+
298
+ type UseKnowledgeGraphAnalyticsType = {
299
+ isLoading: boolean;
300
+ };
301
+ declare const useKnowledgeGraphAnalytics: (overrideOrgId?: string) => UseKnowledgeGraphAnalyticsType;
302
+
303
+ declare const KnowledgeGraphContext: react.Context<UseKnowledgeGraphType | undefined>;
304
+ declare function KnowledgeGraphContextProvider(props: {
305
+ children: ReactNode;
306
+ overrideOrgId?: string;
307
+ }): react_jsx_runtime.JSX.Element;
308
+ declare const useKnowledgeGraphContext: () => UseKnowledgeGraphType;
309
+
310
+ export { type DeleteDocumentRequest, type DeleteDocumentResponse, type DuplicatePolicy, DuplicatePolicyCreate, DuplicatePolicyCreateIf, DuplicatePolicyFail, DuplicatePolicyIgnore, DuplicatePolicyReplace, type GraphEdgeDefinition, type GraphEdgeRequest, type GraphEdgeResponse, type GraphNodeDefinition, type GraphNodeRequest, type GraphNodeResponse, type KGArticle, KGDBCreate, KGDesignerEdgeCreate, KGDesignerEdgeDelete, KGDesignerEdgeGet, KGDesignerEdgeList, KGDesignerEdgeUpdate, KGDesignerNodeCreate, KGDesignerNodeDelete, KGDesignerNodeGet, KGDesignerNodeList, KGDesignerNodeUpdate, KGDocumentDelete, type KGEdge, type KGEdgeIngestRequest, type KGEdgeQuery, type KGFieldQuery, type KGFieldQueryOperator, KGFieldQueryOperatorArrayContains, KGFieldQueryOperatorEqual, KGFieldQueryOperatorGreater, KGFieldQueryOperatorGreaterOrEqual, KGFieldQueryOperatorIn, KGFieldQueryOperatorLess, KGFieldQueryOperatorLessOrEqual, KGFieldQueryOperatorLike, KGFieldQueryOperatorNotEqual, KGFieldQueryOperatorSimilar, KGGraphOptimize, type KGLabelInfo, type KGNode, type KGNodeIngestRequest, type KGPLabelSchema, type KGPropertyFilter, type KGPropertyFilterRequest, type KGPropertyInfo, type KGQuery, type KGQueryResult, type KGRelationshipDirection, KGRelationshipDirectionIncoming, KGRelationshipDirectionOutgoing, type KGSyncJob, KGSyncJobList, type KGSyncJobListRequest, type KGSyncJobListResponse, KGSyncJobUpdate, type KGSyncJobUpdateRequest, type KGSyncJobUpdateResponse, KnowledgeGraphContext, KnowledgeGraphContextProvider, Test, type UseKnowledgeGraphAnalyticsType, type UseKnowledgeGraphType, useKnowledgeGraph, useKnowledgeGraphAnalytics, useKnowledgeGraphContext };
@@ -0,0 +1,310 @@
1
+ import { ResponseMetadata } from '@elqnt/types';
2
+ import * as react_jsx_runtime from 'react/jsx-runtime';
3
+ import * as react from 'react';
4
+ import { ReactNode } from 'react';
5
+
6
+ declare const Test = "hi";
7
+
8
+ interface KGNode {
9
+ id: string;
10
+ label: string;
11
+ fields: {
12
+ [key: string]: any;
13
+ };
14
+ relationships?: KGEdge[];
15
+ score?: number;
16
+ }
17
+ interface KGEdge {
18
+ id: string;
19
+ label: string;
20
+ fields: {
21
+ [key: string]: any;
22
+ };
23
+ from: string;
24
+ to: string;
25
+ }
26
+ interface KGNodeIngestRequest {
27
+ label: string;
28
+ keyField?: string;
29
+ reverseEdgeLabel?: string;
30
+ fields: {
31
+ [key: string]: any;
32
+ };
33
+ edges?: KGEdgeIngestRequest[];
34
+ duplicatePolicy?: DuplicatePolicy;
35
+ generateEmbeddings?: boolean;
36
+ embeddingsSource?: string;
37
+ embeddingsFields?: string[];
38
+ }
39
+ type DuplicatePolicy = string;
40
+ declare const DuplicatePolicyCreateIf: DuplicatePolicy;
41
+ declare const DuplicatePolicyIgnore: DuplicatePolicy;
42
+ declare const DuplicatePolicyReplace: DuplicatePolicy;
43
+ declare const DuplicatePolicyFail: DuplicatePolicy;
44
+ declare const DuplicatePolicyCreate: DuplicatePolicy;
45
+ interface KGEdgeIngestRequest {
46
+ label: string;
47
+ fields: {
48
+ [key: string]: any;
49
+ };
50
+ toLabel: string;
51
+ toFieldKey: string;
52
+ toFieldValue: any;
53
+ createReciprocal: boolean;
54
+ reciprocalLabel: string;
55
+ allowEmbeddingsSearch?: boolean;
56
+ }
57
+ interface KGQuery {
58
+ label: string;
59
+ fields: KGFieldQuery[];
60
+ limit: number;
61
+ depth: number;
62
+ sortBy: string;
63
+ sortOrder: string;
64
+ edges?: KGEdgeQuery[];
65
+ embeddingsSource?: string;
66
+ skipEmbedding?: boolean;
67
+ }
68
+ interface KGFieldQuery {
69
+ name: string;
70
+ value: any;
71
+ operator: KGFieldQueryOperator;
72
+ }
73
+ type KGFieldQueryOperator = string;
74
+ declare const KGFieldQueryOperatorEqual: KGFieldQueryOperator;
75
+ declare const KGFieldQueryOperatorNotEqual: KGFieldQueryOperator;
76
+ declare const KGFieldQueryOperatorGreater: KGFieldQueryOperator;
77
+ declare const KGFieldQueryOperatorLess: KGFieldQueryOperator;
78
+ declare const KGFieldQueryOperatorGreaterOrEqual: KGFieldQueryOperator;
79
+ declare const KGFieldQueryOperatorLessOrEqual: KGFieldQueryOperator;
80
+ declare const KGFieldQueryOperatorLike: KGFieldQueryOperator;
81
+ declare const KGFieldQueryOperatorSimilar: KGFieldQueryOperator;
82
+ /**
83
+ * KGFieldQueryOperatorGreaterOrEqual KGFieldQueryOperator = "gte"
84
+ * KGFieldQueryOperatorLessOrEqual KGFieldQueryOperator = "lte"
85
+ */
86
+ declare const KGFieldQueryOperatorIn: KGFieldQueryOperator;
87
+ declare const KGFieldQueryOperatorArrayContains: KGFieldQueryOperator;
88
+ type KGRelationshipDirection = string;
89
+ declare const KGRelationshipDirectionIncoming: KGRelationshipDirection;
90
+ declare const KGRelationshipDirectionOutgoing: KGRelationshipDirection;
91
+ interface KGEdgeQuery {
92
+ label: string;
93
+ direction: 'incoming' | 'outgoing';
94
+ fields?: {
95
+ [key: string]: any;
96
+ };
97
+ /**
98
+ * FromLabel string `json:"fromLabel"`
99
+ * FromFieldKey string `json:"fromFieldKey"`
100
+ * FromValue interface{} `json:"fromValue"`
101
+ */
102
+ toLabel: string;
103
+ toFieldKey: string;
104
+ toFieldValue: any;
105
+ }
106
+ interface KGQueryResult {
107
+ nodes: KGNode[];
108
+ edges: KGEdge[];
109
+ }
110
+ interface KGLabelInfo {
111
+ label: string;
112
+ count: number;
113
+ }
114
+ interface KGPropertyInfo {
115
+ property: string;
116
+ count: number;
117
+ }
118
+ interface KGPLabelSchema {
119
+ label: string;
120
+ keys: string[];
121
+ }
122
+ interface KGArticle {
123
+ id: string;
124
+ title: string;
125
+ content: string;
126
+ lang?: string;
127
+ docUrl?: string;
128
+ paragraphs?: string;
129
+ }
130
+ interface KGPropertyFilter {
131
+ property: string;
132
+ value: string;
133
+ }
134
+ interface KGPropertyFilterRequest {
135
+ label: string;
136
+ filters: KGPropertyFilter[];
137
+ }
138
+ interface DeleteDocumentRequest {
139
+ documentId: string;
140
+ }
141
+ interface DeleteDocumentResponse {
142
+ success: boolean;
143
+ deletedNodes: {
144
+ [key: string]: number;
145
+ };
146
+ totalDeleted: number;
147
+ error?: string;
148
+ }
149
+ /**
150
+ * KGSyncJob represents a sync job record in the database
151
+ */
152
+ interface KGSyncJob {
153
+ id: string;
154
+ title: string;
155
+ stats: {
156
+ [key: string]: any;
157
+ };
158
+ startTime: string;
159
+ endTime: string;
160
+ updatedAt?: string;
161
+ }
162
+ /**
163
+ * KGSyncJobUpdateRequest is used to insert or update a sync job
164
+ */
165
+ interface KGSyncJobUpdateRequest {
166
+ id: string;
167
+ title: string;
168
+ stats: {
169
+ [key: string]: any;
170
+ };
171
+ startTime: string;
172
+ endTime: string;
173
+ }
174
+ interface KGSyncJobUpdateResponse {
175
+ jobId: string;
176
+ metadata: ResponseMetadata;
177
+ }
178
+ interface KGSyncJobListResponse {
179
+ jobs: KGSyncJob[];
180
+ metadata: ResponseMetadata;
181
+ }
182
+ /**
183
+ * KGSyncJobListRequest is used to list sync jobs with filters
184
+ */
185
+ interface KGSyncJobListRequest {
186
+ limit?: number;
187
+ offset?: number;
188
+ startFrom?: string;
189
+ endTo?: string;
190
+ }
191
+
192
+ /**
193
+ * GraphNodeDefinition represents a node type in the knowledge graph
194
+ */
195
+ interface GraphNodeDefinition {
196
+ label: string;
197
+ description: string;
198
+ schema: {
199
+ [key: string]: any;
200
+ };
201
+ createdAt: string;
202
+ updatedAt: string;
203
+ }
204
+ /**
205
+ * GraphEdgeDefinition represents an edge type in the knowledge graph
206
+ */
207
+ interface GraphEdgeDefinition {
208
+ label: string;
209
+ description: string;
210
+ fromNode: string;
211
+ toNode: string;
212
+ schema: {
213
+ [key: string]: any;
214
+ };
215
+ createdAt: string;
216
+ updatedAt: string;
217
+ }
218
+ /**
219
+ * Request/Response types
220
+ */
221
+ interface GraphNodeRequest {
222
+ node: GraphNodeDefinition;
223
+ }
224
+ interface GraphNodeResponse {
225
+ node?: GraphNodeDefinition;
226
+ nodes?: GraphNodeDefinition[];
227
+ success: boolean;
228
+ error?: string;
229
+ }
230
+ interface GraphEdgeRequest {
231
+ edge: GraphEdgeDefinition;
232
+ }
233
+ interface GraphEdgeResponse {
234
+ edge?: GraphEdgeDefinition;
235
+ edges?: GraphEdgeDefinition[];
236
+ success: boolean;
237
+ error?: string;
238
+ }
239
+ /**
240
+ * KG Designer Node subjects
241
+ */
242
+ declare const KGDesignerNodeCreate = "kg.designer.node.create";
243
+ declare const KGDesignerNodeUpdate = "kg.designer.node.update.*";
244
+ declare const KGDesignerNodeDelete = "kg.designer.node.delete.*";
245
+ declare const KGDesignerNodeGet = "kg.designer.node.get.*";
246
+ declare const KGDesignerNodeList = "kg.designer.node.list";
247
+ /**
248
+ * KG Designer Edge subjects
249
+ */
250
+ declare const KGDesignerEdgeCreate = "kg.designer.edge.create";
251
+ declare const KGDesignerEdgeUpdate = "kg.designer.edge.update.*";
252
+ declare const KGDesignerEdgeDelete = "kg.designer.edge.delete.*";
253
+ declare const KGDesignerEdgeGet = "kg.designer.edge.get.*";
254
+ declare const KGDesignerEdgeList = "kg.designer.edge.list";
255
+ /**
256
+ * KG Database subjects
257
+ */
258
+ declare const KGDBCreate = "kg.db.create";
259
+ /**
260
+ * KG Document subjects
261
+ */
262
+ declare const KGDocumentDelete = "kg_ingest.document.delete";
263
+ /**
264
+ * KG Sync Job subjects
265
+ */
266
+ declare const KGSyncJobUpdate = "kg.sync.job.update";
267
+ declare const KGSyncJobList = "kg.sync.job.list";
268
+ /**
269
+ * KG Optimization subjects
270
+ */
271
+ declare const KGGraphOptimize = "kg.graph.optimize";
272
+
273
+ type Success = {
274
+ success: boolean;
275
+ };
276
+ type UseKnowledgeGraphType = {
277
+ isLoading: boolean;
278
+ ingestNode: (node: KGNodeIngestRequest) => Promise<Success | Error>;
279
+ ingestNodes: (node: KGNodeIngestRequest[]) => Promise<Success | Error>;
280
+ updateNode: (nodeId: string, label: string, fields: Record<string, any>) => Promise<Success | Error>;
281
+ ingestDocs: (urls: string[], mode: "documents" | "entities" | "snippets", brief: string, labels: string[]) => Promise<Success | Error>;
282
+ ingestText: (text: string, mode: "entities" | "snippets") => Promise<Success | Error>;
283
+ ingestYT: (url: string) => Promise<Success | Error>;
284
+ queryGraph: (query: KGQuery) => Promise<KGQueryResult>;
285
+ getGraphLabels: () => Promise<KGLabelInfo[] | Error>;
286
+ labels: KGLabelInfo[] | undefined;
287
+ selectedLabel: string | undefined;
288
+ setSelectedLabel: (label: string) => void;
289
+ queryResult: KGQueryResult | undefined;
290
+ setQueryResult: (res: KGQueryResult) => void;
291
+ refreshState: () => void;
292
+ selectedNodeId: string | undefined;
293
+ setSelectedNodeId: (id: string | undefined) => void;
294
+ getNodeById: (id: string) => Promise<KGNode | Error>;
295
+ };
296
+ declare const useKnowledgeGraph: (overrideOrgId?: string) => UseKnowledgeGraphType;
297
+
298
+ type UseKnowledgeGraphAnalyticsType = {
299
+ isLoading: boolean;
300
+ };
301
+ declare const useKnowledgeGraphAnalytics: (overrideOrgId?: string) => UseKnowledgeGraphAnalyticsType;
302
+
303
+ declare const KnowledgeGraphContext: react.Context<UseKnowledgeGraphType | undefined>;
304
+ declare function KnowledgeGraphContextProvider(props: {
305
+ children: ReactNode;
306
+ overrideOrgId?: string;
307
+ }): react_jsx_runtime.JSX.Element;
308
+ declare const useKnowledgeGraphContext: () => UseKnowledgeGraphType;
309
+
310
+ export { type DeleteDocumentRequest, type DeleteDocumentResponse, type DuplicatePolicy, DuplicatePolicyCreate, DuplicatePolicyCreateIf, DuplicatePolicyFail, DuplicatePolicyIgnore, DuplicatePolicyReplace, type GraphEdgeDefinition, type GraphEdgeRequest, type GraphEdgeResponse, type GraphNodeDefinition, type GraphNodeRequest, type GraphNodeResponse, type KGArticle, KGDBCreate, KGDesignerEdgeCreate, KGDesignerEdgeDelete, KGDesignerEdgeGet, KGDesignerEdgeList, KGDesignerEdgeUpdate, KGDesignerNodeCreate, KGDesignerNodeDelete, KGDesignerNodeGet, KGDesignerNodeList, KGDesignerNodeUpdate, KGDocumentDelete, type KGEdge, type KGEdgeIngestRequest, type KGEdgeQuery, type KGFieldQuery, type KGFieldQueryOperator, KGFieldQueryOperatorArrayContains, KGFieldQueryOperatorEqual, KGFieldQueryOperatorGreater, KGFieldQueryOperatorGreaterOrEqual, KGFieldQueryOperatorIn, KGFieldQueryOperatorLess, KGFieldQueryOperatorLessOrEqual, KGFieldQueryOperatorLike, KGFieldQueryOperatorNotEqual, KGFieldQueryOperatorSimilar, KGGraphOptimize, type KGLabelInfo, type KGNode, type KGNodeIngestRequest, type KGPLabelSchema, type KGPropertyFilter, type KGPropertyFilterRequest, type KGPropertyInfo, type KGQuery, type KGQueryResult, type KGRelationshipDirection, KGRelationshipDirectionIncoming, KGRelationshipDirectionOutgoing, type KGSyncJob, KGSyncJobList, type KGSyncJobListRequest, type KGSyncJobListResponse, KGSyncJobUpdate, type KGSyncJobUpdateRequest, type KGSyncJobUpdateResponse, KnowledgeGraphContext, KnowledgeGraphContextProvider, Test, type UseKnowledgeGraphAnalyticsType, type UseKnowledgeGraphType, useKnowledgeGraph, useKnowledgeGraphAnalytics, useKnowledgeGraphContext };