@crewdle/web-sdk-types 1.0.23 → 1.0.24

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 (147) hide show
  1. package/dist/core/cluster/Cluster.d.ts +16 -1
  2. package/dist/core/sdk/SDKOptions.d.ts +6 -1
  3. package/dist/core/stream/ContentType.d.ts +5 -1
  4. package/dist/core/stream/ContentType.js +4 -0
  5. package/dist/external-storage/ExternalStorageConnection.d.ts +54 -0
  6. package/dist/external-storage/ExternalStorageConnection.js +10 -0
  7. package/dist/external-storage/ExternalStorageConnectionConnector.d.ts +25 -0
  8. package/dist/external-storage/ExternalStorageConnectionConnectorConstructor.d.ts +6 -0
  9. package/dist/external-storage/ExternalStorageListOptions.d.ts +10 -0
  10. package/dist/external-storage/index.d.ts +4 -0
  11. package/dist/external-storage/index.js +4 -0
  12. package/dist/generative-ai/GenerativeAIContext.d.ts +42 -0
  13. package/dist/generative-ai/GenerativeAIJobType.d.ts +18 -0
  14. package/dist/{ai → generative-ai}/GenerativeAIWorkerConnector.d.ts +3 -1
  15. package/dist/generative-ai/IIndex.d.ts +18 -0
  16. package/dist/generative-ai/IIndex.js +1 -0
  17. package/dist/generative-ai/NLPLibraryConnector.js +1 -0
  18. package/dist/generative-ai/NLPLibraryConnectorConstructor.js +1 -0
  19. package/dist/{ai → generative-ai}/index.d.ts +6 -3
  20. package/dist/{ai → generative-ai}/index.js +6 -3
  21. package/dist/generative-ai/job/JobParametersGenerativeAI.d.ts +15 -0
  22. package/dist/generative-ai/job/JobParametersGenerativeAI.js +1 -0
  23. package/dist/generative-ai/job/JobResultGenerativeAI.d.ts +17 -0
  24. package/dist/generative-ai/job/JobResultGenerativeAI.js +1 -0
  25. package/dist/generative-ai/job/index.d.ts +2 -0
  26. package/dist/generative-ai/job/index.js +2 -0
  27. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentCreateJobParameters.d.ts +20 -0
  28. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentCreateJobParameters.js +1 -0
  29. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentJob.d.ts +25 -0
  30. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentJob.js +1 -0
  31. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentResult.d.ts +24 -0
  32. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentResult.js +1 -0
  33. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentWorkerParameters.d.ts +20 -0
  34. package/dist/generative-ai/jobs/download-document/GenerativeAIDownloadDocumentWorkerParameters.js +1 -0
  35. package/dist/generative-ai/jobs/download-document/index.d.ts +4 -0
  36. package/dist/generative-ai/jobs/download-document/index.js +4 -0
  37. package/dist/generative-ai/jobs/generic/GenerativeAICreateJobParameters.d.ts +11 -0
  38. package/dist/generative-ai/jobs/generic/GenerativeAICreateJobParameters.js +1 -0
  39. package/dist/generative-ai/jobs/generic/GenerativeAIJob.d.ts +10 -0
  40. package/dist/generative-ai/jobs/generic/GenerativeAIJob.js +1 -0
  41. package/dist/generative-ai/jobs/generic/GenerativeAIOptions.d.ts +7 -0
  42. package/dist/generative-ai/jobs/generic/GenerativeAIOptions.js +6 -0
  43. package/dist/generative-ai/jobs/generic/GenerativeAIWorkerConnectorParameters.d.ts +11 -0
  44. package/dist/generative-ai/jobs/generic/GenerativeAIWorkerConnectorParameters.js +1 -0
  45. package/dist/generative-ai/jobs/generic/GenerativeAIWorkerParameters.d.ts +12 -0
  46. package/dist/generative-ai/jobs/generic/GenerativeAIWorkerParameters.js +1 -0
  47. package/dist/generative-ai/jobs/generic/index.d.ts +5 -0
  48. package/dist/generative-ai/jobs/generic/index.js +5 -0
  49. package/dist/generative-ai/jobs/index.d.ts +4 -0
  50. package/dist/generative-ai/jobs/index.js +4 -0
  51. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptCreateJobParameters.d.ts +21 -0
  52. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptCreateJobParameters.js +1 -0
  53. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptJob.d.ts +26 -0
  54. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptJob.js +1 -0
  55. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptOptions.d.ts +33 -0
  56. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptOptions.js +1 -0
  57. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptResult.d.ts +31 -0
  58. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptResult.js +1 -0
  59. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptWorkerConnectorParameters.d.ts +17 -0
  60. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptWorkerConnectorParameters.js +1 -0
  61. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptWorkerParameters.d.ts +20 -0
  62. package/dist/generative-ai/jobs/prompt/GenerativeAIPromptWorkerParameters.js +1 -0
  63. package/dist/generative-ai/jobs/prompt/GenerativeAIWorkerConnectorPromptResult.d.ts +7 -0
  64. package/dist/generative-ai/jobs/prompt/GenerativeAIWorkerConnectorPromptResult.js +1 -0
  65. package/dist/generative-ai/jobs/prompt/index.d.ts +9 -0
  66. package/dist/generative-ai/jobs/prompt/index.js +9 -0
  67. package/dist/generative-ai/jobs/prompt/options/PromptFunction.d.ts +22 -0
  68. package/dist/generative-ai/jobs/prompt/options/PromptFunction.js +1 -0
  69. package/dist/generative-ai/jobs/prompt/options/PromptFunctionParams.d.ts +11 -0
  70. package/dist/generative-ai/jobs/prompt/options/PromptFunctionParams.js +1 -0
  71. package/dist/generative-ai/jobs/prompt/options/PromptFunctionParamsType.d.ts +17 -0
  72. package/dist/generative-ai/jobs/prompt/options/PromptFunctionParamsType.js +18 -0
  73. package/dist/generative-ai/jobs/prompt/options/PromptHistory.d.ts +16 -0
  74. package/dist/generative-ai/jobs/prompt/options/PromptHistory.js +2 -0
  75. package/dist/generative-ai/jobs/prompt/options/PromptSource.d.ts +14 -0
  76. package/dist/generative-ai/jobs/prompt/options/PromptSource.js +16 -0
  77. package/dist/generative-ai/jobs/prompt/options/index.d.ts +5 -0
  78. package/dist/generative-ai/jobs/prompt/options/index.js +5 -0
  79. package/dist/generative-ai/jobs/prompt/result/PromptTypeText.d.ts +4 -0
  80. package/dist/generative-ai/jobs/prompt/result/PromptTypeText.js +1 -0
  81. package/dist/generative-ai/jobs/prompt/result/PromptTypeVector.d.ts +4 -0
  82. package/dist/generative-ai/jobs/prompt/result/PromptTypeVector.js +1 -0
  83. package/dist/generative-ai/jobs/prompt/result/index.d.ts +2 -0
  84. package/dist/generative-ai/jobs/prompt/result/index.js +2 -0
  85. package/dist/generative-ai/jobs/rating/GenerativeAIRating.d.ts +8 -0
  86. package/dist/generative-ai/jobs/rating/GenerativeAIRating.js +9 -0
  87. package/dist/generative-ai/jobs/rating/GenerativeAIRatingCreateJobParameters.d.ts +26 -0
  88. package/dist/generative-ai/jobs/rating/GenerativeAIRatingCreateJobParameters.js +1 -0
  89. package/dist/generative-ai/jobs/rating/GenerativeAIRatingJob.d.ts +25 -0
  90. package/dist/generative-ai/jobs/rating/GenerativeAIRatingJob.js +1 -0
  91. package/dist/generative-ai/jobs/rating/GenerativeAIRatingOptions.d.ts +16 -0
  92. package/dist/generative-ai/jobs/rating/GenerativeAIRatingOptions.js +1 -0
  93. package/dist/generative-ai/jobs/rating/GenerativeAIRatingResult.d.ts +18 -0
  94. package/dist/generative-ai/jobs/rating/GenerativeAIRatingResult.js +1 -0
  95. package/dist/generative-ai/jobs/rating/GenerativeAIRatingStatus.d.ts +8 -0
  96. package/dist/generative-ai/jobs/rating/GenerativeAIRatingStatus.js +9 -0
  97. package/dist/generative-ai/jobs/rating/GenerativeAIRatingWorkerParameters.d.ts +29 -0
  98. package/dist/generative-ai/jobs/rating/GenerativeAIRatingWorkerParameters.js +1 -0
  99. package/dist/generative-ai/jobs/rating/index.d.ts +7 -0
  100. package/dist/generative-ai/jobs/rating/index.js +7 -0
  101. package/dist/generative-ai/search/SearchConnector.js +1 -0
  102. package/dist/generative-ai/search/SearchConnectorConstructor.js +1 -0
  103. package/dist/generative-ai/search/SearchResult.d.ts +19 -0
  104. package/dist/generative-ai/search/SearchResult.js +5 -0
  105. package/dist/generative-ai/search/index.d.ts +3 -0
  106. package/dist/generative-ai/search/index.js +3 -0
  107. package/dist/generative-ai/union-types/CreateAIJobParameters.d.ts +8 -0
  108. package/dist/generative-ai/union-types/CreateAIJobParameters.js +1 -0
  109. package/dist/generative-ai/union-types/GenerativeAIJob.d.ts +8 -0
  110. package/dist/generative-ai/union-types/GenerativeAIJob.js +1 -0
  111. package/dist/generative-ai/union-types/GenerativeAIJobOptions.d.ts +7 -0
  112. package/dist/generative-ai/union-types/GenerativeAIJobOptions.js +1 -0
  113. package/dist/generative-ai/union-types/GenerativeAIJobResult.d.ts +9 -0
  114. package/dist/generative-ai/union-types/GenerativeAIJobResult.js +1 -0
  115. package/dist/generative-ai/union-types/GenerativeAIWorkerConnectorParameters.d.ts +6 -0
  116. package/dist/generative-ai/union-types/GenerativeAIWorkerConnectorParameters.js +1 -0
  117. package/dist/generative-ai/union-types/GenerativeAIWorkerConnectorResult.d.ts +12 -0
  118. package/dist/generative-ai/union-types/GenerativeAIWorkerConnectorResult.js +1 -0
  119. package/dist/generative-ai/union-types/GenerativeAIWorkerParameters.d.ts +8 -0
  120. package/dist/generative-ai/union-types/GenerativeAIWorkerParameters.js +1 -0
  121. package/dist/generative-ai/union-types/index.d.ts +7 -0
  122. package/dist/generative-ai/union-types/index.js +7 -0
  123. package/dist/graph-database/GraphDatabase.d.ts +1 -1
  124. package/dist/graph-database/GraphDatabaseConnector.d.ts +1 -1
  125. package/dist/index.d.ts +2 -1
  126. package/dist/index.js +2 -1
  127. package/dist/object-storage/ObjectStoreBucket.d.ts +1 -1
  128. package/dist/vector-database/VectorDatabase.d.ts +1 -1
  129. package/dist/vector-database/VectorDatabaseConnector.d.ts +1 -1
  130. package/package.json +1 -1
  131. package/dist/ai/GenerativeAI.d.ts +0 -328
  132. package/dist/ai/GenerativeAI.js +0 -53
  133. package/dist/ai/GenerativeAIContext.d.ts +0 -132
  134. /package/dist/{ai/GenerativeAIContext.js → external-storage/ExternalStorageConnectionConnector.js} +0 -0
  135. /package/dist/{ai/GenerativeAIWorker.js → external-storage/ExternalStorageConnectionConnectorConstructor.js} +0 -0
  136. /package/dist/{ai/GenerativeAIWorkerConnectorConstructor.js → external-storage/ExternalStorageListOptions.js} +0 -0
  137. /package/dist/{ai/NLPLibraryConnector.js → generative-ai/GenerativeAIContext.js} +0 -0
  138. /package/dist/{ai/NLPLibraryConnectorConstructor.js → generative-ai/GenerativeAIJobType.js} +0 -0
  139. /package/dist/{ai → generative-ai}/GenerativeAIWorker.d.ts +0 -0
  140. /package/dist/{ai/SearchConnector.js → generative-ai/GenerativeAIWorker.js} +0 -0
  141. /package/dist/{ai → generative-ai}/GenerativeAIWorkerConnector.js +0 -0
  142. /package/dist/{ai → generative-ai}/GenerativeAIWorkerConnectorConstructor.d.ts +0 -0
  143. /package/dist/{ai/SearchConnectorConstructor.js → generative-ai/GenerativeAIWorkerConnectorConstructor.js} +0 -0
  144. /package/dist/{ai → generative-ai}/NLPLibraryConnector.d.ts +0 -0
  145. /package/dist/{ai → generative-ai}/NLPLibraryConnectorConstructor.d.ts +0 -0
  146. /package/dist/{ai → generative-ai/search}/SearchConnector.d.ts +0 -0
  147. /package/dist/{ai → generative-ai/search}/SearchConnectorConstructor.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import { IGraphDatabase } from '../../graph-database';
2
2
  import { IClusterEventEmitter } from '.';
3
- import { IGenerativeAIContext, IGenerativeAIWorker } from '../../ai';
3
+ import { IGenerativeAIContext, IGenerativeAIWorker } from '../../generative-ai';
4
4
  import { IKeyValueDatabase, IDatabaseLayout, ILayoutBuilder } from '../../key-value-database';
5
5
  import { ILocalMediaStream, ILocalDynamicMediaStream, IRemoteMediaStream, MediaStreamSource } from '../../media-stream';
6
6
  import { IObjectStoreBucket, IObjectStoreBucketOptions } from '../../object-storage';
@@ -8,6 +8,7 @@ import { IPubSubTopic } from '../../pubsub';
8
8
  import { IVectorDatabase } from '../../vector-database';
9
9
  import { LocalNode, Node } from '../node';
10
10
  import { ISDKCloseOptions } from '../sdk';
11
+ import { ExternalStorageType, IExternalStorageConnection } from '../../external-storage';
11
12
  /**
12
13
  * The cluster interface.
13
14
  * @category Core
@@ -35,6 +36,15 @@ export interface ICluster extends IClusterEventEmitter {
35
36
  * @returns A promise that resolves with the data stream.
36
37
  */
37
38
  openObjectStoreBucket(name: string, options?: IObjectStoreBucketOptions): Promise<IObjectStoreBucket>;
39
+ /**
40
+ * Open an external storage connection.
41
+ * @param name The name of the external storage connection.
42
+ * @param type The type of the external storage connection.
43
+ * @throws {@link SDKClientErrorCodes.ExternalStorageConnectionAlreadyExists} if the external storage connection is already open.
44
+ * @throws {@link SDKClientErrorCodes.ExternalStorageConnectionNameNotString} if the name is not a string.
45
+ * @returns The external storage connection.
46
+ */
47
+ openExternalStorageConnection(name: string, type: ExternalStorageType): Promise<IExternalStorageConnection>;
38
48
  /**
39
49
  * Open a key-value database.
40
50
  * @param name The name of the key-value database.
@@ -91,6 +101,11 @@ export interface ICluster extends IClusterEventEmitter {
91
101
  * @param strategy The strategy to use to filter the data streams.
92
102
  */
93
103
  getObjectStoreBuckets(strategy?: (item: IObjectStoreBucket) => boolean): IObjectStoreBucket[];
104
+ /**
105
+ * Get an array of opened external storage connections.
106
+ * @param strategy The strategy to use to filter the external storage connections.
107
+ */
108
+ getExternalStorageConnections(strategy?: (item: IExternalStorageConnection) => boolean): IExternalStorageConnection[];
94
109
  /**
95
110
  * Get an array of opened key-value databases.
96
111
  * @param strategy The strategy to use to filter the key-value databases.
@@ -2,9 +2,10 @@ import { KeyValueDatabaseConnectorConstructor } from '../../key-value-database';
2
2
  import { ILoggingConnector } from '.';
3
3
  import { DocumentParserConnectorConstructor, ObjectStoreConnectorConstructor } from '../../object-storage';
4
4
  import { PeerConnectionConnectorConstructor } from '../connection';
5
- import { GenerativeAIWorkerConnectorConstructor, NLPLibraryConnectorConstructor, SearchConnectorConstructor } from '../../ai';
5
+ import { GenerativeAIWorkerConnectorConstructor, NLPLibraryConnectorConstructor, SearchConnectorConstructor } from '../../generative-ai';
6
6
  import { VectorDatabaseConnectorConstructor } from '../../vector-database';
7
7
  import { GraphDatabaseConnectorConstructor } from '../../graph-database';
8
+ import { ExternalStorageConnectionConnectorConstructor, ExternalStorageType } from '../../external-storage';
8
9
  /**
9
10
  * Options to configure the SDK.
10
11
  * @category Core
@@ -27,6 +28,10 @@ export interface ISDKOptions {
27
28
  * If not provided, the default object store connector is OPFS.
28
29
  */
29
30
  objectStoreConnector?: ObjectStoreConnectorConstructor;
31
+ /**
32
+ * The custom external storage connectors.
33
+ */
34
+ externalStorageConnectors?: Map<ExternalStorageType, ExternalStorageConnectionConnectorConstructor>;
30
35
  /**
31
36
  * The custom key-value database connector to use for storing key-value pairs.
32
37
  * If not provided, the default key-value database connector is IndexedDB.
@@ -38,5 +38,9 @@ export declare enum ContentType {
38
38
  /**
39
39
  * @ignore
40
40
  */
41
- GraphDatabase = "graphdatabase"
41
+ GraphDatabase = "graphdatabase",
42
+ /**
43
+ * @ignore
44
+ */
45
+ ExternalStorage = "externalstorage"
42
46
  }
@@ -41,4 +41,8 @@ export var ContentType;
41
41
  * @ignore
42
42
  */
43
43
  ContentType["GraphDatabase"] = "graphdatabase";
44
+ /**
45
+ * @ignore
46
+ */
47
+ ContentType["ExternalStorage"] = "externalstorage";
44
48
  })(ContentType || (ContentType = {}));
@@ -0,0 +1,54 @@
1
+ import { IFile, ObjectDescriptor, StorageEvent } from '../object-storage';
2
+ import { IDataStream } from '../core';
3
+ import { IExternalStorageListOptions } from '.';
4
+ /**
5
+ * The type of external storage.
6
+ */
7
+ export declare enum ExternalStorageType {
8
+ /**
9
+ * SharePoint.
10
+ */
11
+ SharePoint = "sharepoint"
12
+ }
13
+ /**
14
+ * The interface for the external storage connection.
15
+ * @category External Storage
16
+ */
17
+ export interface IExternalStorageConnection extends IDataStream {
18
+ /**
19
+ * Get the name of the database.
20
+ */
21
+ getName(): string;
22
+ /**
23
+ * Get the owner ID of the database.
24
+ */
25
+ getOwnerId(): string;
26
+ /**
27
+ * Close the database.
28
+ */
29
+ close(): void;
30
+ /**
31
+ * Get an object from the bucket.
32
+ * @param path The path of the object.
33
+ * @returns The object.
34
+ */
35
+ get(path: string): Promise<IFile>;
36
+ /**
37
+ * List the objects and folders of the bucket.
38
+ * @param path The path of the folder.
39
+ * @param options The optional options for listing the objects and folders.
40
+ * @returns The list of objects and folders.
41
+ */
42
+ list(path: string, options?: IExternalStorageListOptions): Promise<ObjectDescriptor[]>;
43
+ /**
44
+ * Subscribe to the bucket events.
45
+ * @param label The label of the subscriber.
46
+ * @param callback The callback function.
47
+ */
48
+ subscribe(label: string, callback: (data: StorageEvent) => void): void;
49
+ /**
50
+ * Unsubscribe from the bucket.
51
+ * @param label The label of the subscriber.
52
+ */
53
+ unsubscribe(label: string): void;
54
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * The type of external storage.
3
+ */
4
+ export var ExternalStorageType;
5
+ (function (ExternalStorageType) {
6
+ /**
7
+ * SharePoint.
8
+ */
9
+ ExternalStorageType["SharePoint"] = "sharepoint";
10
+ })(ExternalStorageType || (ExternalStorageType = {}));
@@ -0,0 +1,25 @@
1
+ import { IFile, ObjectDescriptor, StorageEvent } from '../object-storage';
2
+ /**
3
+ * Interface for external storage connection connector.
4
+ * @category Connector
5
+ */
6
+ export interface IExternalStorageConnectionConnector {
7
+ /**
8
+ * Gets a file.
9
+ * @param path The path to the file.
10
+ * @returns A promise that resolves with the file.
11
+ */
12
+ get(path: string): Promise<IFile>;
13
+ /**
14
+ * Lists the objects in a folder.
15
+ * @param path The path to the folder.
16
+ * @param recursive Whether to list the objects recursively.
17
+ * @returns A promise that resolves with an array of object descriptors.
18
+ */
19
+ list(path: string, recursive: boolean): Promise<ObjectDescriptor[]>;
20
+ /**
21
+ * Lists the changes in the storage.
22
+ * @returns A promise that resolves with an array of storage events.
23
+ */
24
+ listChanges(): Promise<StorageEvent[]>;
25
+ }
@@ -0,0 +1,6 @@
1
+ import { IExternalStorageConnectionConnector } from '.';
2
+ /**
3
+ * The external storage connection connector constructor type.
4
+ * @category External Storage
5
+ */
6
+ export type ExternalStorageConnectionConnectorConstructor = new (siteId: string, driveId: string, accessToken: string, refreshToken: () => Promise<string>) => IExternalStorageConnectionConnector;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Options for the list function on an external storage.
3
+ * @category External Storage
4
+ */
5
+ export interface IExternalStorageListOptions {
6
+ /**
7
+ * List folders recursively.
8
+ */
9
+ recursive?: boolean;
10
+ }
@@ -0,0 +1,4 @@
1
+ export * from './ExternalStorageConnection';
2
+ export * from './ExternalStorageConnectionConnector';
3
+ export * from './ExternalStorageConnectionConnectorConstructor';
4
+ export * from './ExternalStorageListOptions';
@@ -0,0 +1,4 @@
1
+ export * from './ExternalStorageConnection';
2
+ export * from './ExternalStorageConnectionConnector';
3
+ export * from './ExternalStorageConnectionConnectorConstructor';
4
+ export * from './ExternalStorageListOptions';
@@ -0,0 +1,42 @@
1
+ import { IGenerativeAIRatingResult, IGenerativeAIDownloadDocumentResult } from '.';
2
+ import { IGenerativeAIDownloadDocumentCreateJobParameters } from './jobs/download-document/GenerativeAIDownloadDocumentCreateJobParameters';
3
+ import { IGenerativeAIDownloadDocumentJob } from './jobs/download-document/GenerativeAIDownloadDocumentJob';
4
+ import { IGenerativeAIPromptCreateJobParameters } from './jobs/prompt/GenerativeAIPromptCreateJobParameters';
5
+ import { IGenerativeAIPromptJob } from './jobs/prompt/GenerativeAIPromptJob';
6
+ import { IGenerativeAIRatingCreateJobParameters } from './jobs/rating/GenerativeAIRatingCreateJobParameters';
7
+ import { IGenerativeAIRatingJob } from './jobs/rating/GenerativeAIRatingJob';
8
+ /**
9
+ * Represents a context for a Generative AI service.
10
+ * @category AI
11
+ */
12
+ export interface IGenerativeAIContext {
13
+ /**
14
+ * Create an AI job. The job is bounded to the context.
15
+ * @param parameters The parameters of the AI job.
16
+ * @returns The job ready to be run or streamed.
17
+ */
18
+ createAIJob(parameters: IGenerativeAIPromptCreateJobParameters): IGenerativeAIPromptJob;
19
+ createAIJob(parameters: IGenerativeAIRatingCreateJobParameters): IGenerativeAIRatingJob;
20
+ createAIJob(parameters: IGenerativeAIDownloadDocumentCreateJobParameters): IGenerativeAIDownloadDocumentJob;
21
+ /**
22
+ * Rate a prompt.
23
+ * @param parameters The parameters of the rating job.
24
+ * @returns A promise that resolves with the result.
25
+ */
26
+ ratePrompt(parameters: IGenerativeAIRatingCreateJobParameters): Promise<IGenerativeAIRatingResult>;
27
+ /**
28
+ * Download a document.
29
+ * @param parameters The parameters of the download document job.
30
+ * @returns A promise that resolves with the result containing the document as an ArrayBuffer.
31
+ */
32
+ downloadDocument(documentPath: string): Promise<IGenerativeAIDownloadDocumentResult>;
33
+ /**
34
+ * Get the data bucket IDs.
35
+ * @returns An array of data bucket IDs.
36
+ */
37
+ getDataBucketIds(): Promise<string[]>;
38
+ /**
39
+ * Close the Generative AI Context.
40
+ */
41
+ close(): void;
42
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * The AI job type Enum
3
+ * @category AI
4
+ */
5
+ export declare const enum GenerativeAIJobType {
6
+ /**
7
+ * The AI job generates a prompt.
8
+ */
9
+ Prompt = "prompt",
10
+ /**
11
+ * The AI job rates a prompt.
12
+ */
13
+ Rating = "rate",
14
+ /**
15
+ * The user requests to download a document related to the answer they got.
16
+ */
17
+ DownloadDocument = "downloadDocument"
18
+ }
@@ -1,5 +1,7 @@
1
1
  import { IJobWorkerConnector, IJobWorkerOptions } from '../job';
2
- import { GenerativeAIWorkerConnectorParameters, IGenerativeAIPromptWorkerConnectorParameters, IGenerativeAIWorkerConnectorPromptResult, GenerativeAIWorkerConnectorResult } from './GenerativeAI';
2
+ import { IGenerativeAIWorkerConnectorPromptResult } from './jobs/prompt/GenerativeAIWorkerConnectorPromptResult';
3
+ import { IGenerativeAIPromptWorkerConnectorParameters } from './jobs/prompt/GenerativeAIPromptWorkerConnectorParameters';
4
+ import { GenerativeAIWorkerConnectorParameters, GenerativeAIWorkerConnectorResult } from './union-types';
3
5
  /**
4
6
  * The generative AI model input types.
5
7
  * @category AI
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Represents a content index.
3
+ * @category AI
4
+ */
5
+ export interface IIndex {
6
+ /**
7
+ * The content of the index.
8
+ */
9
+ content: string;
10
+ /**
11
+ * The start index of the content.
12
+ */
13
+ start: number;
14
+ /**
15
+ * The length of the content.
16
+ */
17
+ length: number;
18
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -1,9 +1,12 @@
1
- export * from './GenerativeAI';
1
+ export * from './job';
2
+ export * from './jobs';
3
+ export * from './search';
4
+ export * from './union-types';
2
5
  export * from './GenerativeAIContext';
6
+ export * from './GenerativeAIJobType';
3
7
  export * from './GenerativeAIWorker';
4
8
  export * from './GenerativeAIWorkerConnector';
5
9
  export * from './GenerativeAIWorkerConnectorConstructor';
10
+ export * from './IIndex';
6
11
  export * from './NLPLibraryConnector';
7
12
  export * from './NLPLibraryConnectorConstructor';
8
- export * from './SearchConnector';
9
- export * from './SearchConnectorConstructor';
@@ -1,9 +1,12 @@
1
- export * from './GenerativeAI';
1
+ export * from './job';
2
+ export * from './jobs';
3
+ export * from './search';
4
+ export * from './union-types';
2
5
  export * from './GenerativeAIContext';
6
+ export * from './GenerativeAIJobType';
3
7
  export * from './GenerativeAIWorker';
4
8
  export * from './GenerativeAIWorkerConnector';
5
9
  export * from './GenerativeAIWorkerConnectorConstructor';
10
+ export * from './IIndex';
6
11
  export * from './NLPLibraryConnector';
7
12
  export * from './NLPLibraryConnectorConstructor';
8
- export * from './SearchConnector';
9
- export * from './SearchConnectorConstructor';
@@ -0,0 +1,15 @@
1
+ import { GenerativeAIJobType } from '../GenerativeAIJobType';
2
+ import { IJobParameters } from '../../job/Job';
3
+ import { IGenerativeAIPromptOptions } from '../jobs/prompt/GenerativeAIPromptOptions';
4
+ import { IGenerativeAIRatingOptions } from '../jobs/rating/GenerativeAIRatingOptions';
5
+ /**
6
+ * The AI job parameters Interface
7
+ * Parameters for AI job type.
8
+ * @category AI
9
+ */
10
+ export interface IJobParametersGenerativeAI extends IJobParameters, IGenerativeAIPromptOptions, IGenerativeAIRatingOptions {
11
+ /**
12
+ * The AI job type.
13
+ */
14
+ type: GenerativeAIJobType;
15
+ }
@@ -0,0 +1,17 @@
1
+ import { GenerativeAIJobType } from '../GenerativeAIJobType';
2
+ import { IJobResult } from '../../job/Job';
3
+ /**
4
+ * The AI job result Interface
5
+ * Represents the result of an AI job.
6
+ * @category AI
7
+ */
8
+ export interface IJobResultGenerativeAI extends IJobResult {
9
+ /**
10
+ * The AI job type.
11
+ */
12
+ type: GenerativeAIJobType;
13
+ /**
14
+ * The index of the output, in case of partial results.
15
+ */
16
+ index?: number;
17
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './JobResultGenerativeAI';
2
+ export * from './JobParametersGenerativeAI';
@@ -0,0 +1,2 @@
1
+ export * from './JobResultGenerativeAI';
2
+ export * from './JobParametersGenerativeAI';
@@ -0,0 +1,20 @@
1
+ import { GenerativeAIJobType } from '../../GenerativeAIJobType';
2
+ import { IGenerativeAICreateJobParameters } from '../generic';
3
+ /**
4
+ * Represents the parameters to create a download document job
5
+ * @category AI
6
+ */
7
+ export interface IGenerativeAIDownloadDocumentCreateJobParameters extends IGenerativeAICreateJobParameters {
8
+ /**
9
+ * The AI job type.
10
+ */
11
+ type: GenerativeAIJobType.DownloadDocument;
12
+ /**
13
+ * The object store id of the document to download.
14
+ */
15
+ objectStoreId: string;
16
+ /**
17
+ * The path of the document to download.
18
+ */
19
+ documentPath: string;
20
+ }
@@ -0,0 +1,25 @@
1
+ import { IGenerativeAIJob } from '../generic';
2
+ import { IGenerativeAIDownloadDocumentResult } from './GenerativeAIDownloadDocumentResult';
3
+ /**
4
+ * Represents bounded download document job ready to be executed.
5
+ * @category AI
6
+ */
7
+ export interface IGenerativeAIDownloadDocumentJob extends IGenerativeAIJob {
8
+ /**
9
+ * The job ID.
10
+ */
11
+ id: string;
12
+ /**
13
+ * The object store id of the document to download.
14
+ */
15
+ objectStoreId: string;
16
+ /**
17
+ * The path of the document to download.
18
+ */
19
+ documentPath: string;
20
+ /**
21
+ * Run the download document job.
22
+ * @returns A promise that resolves with the result.
23
+ */
24
+ download: () => Promise<IGenerativeAIDownloadDocumentResult>;
25
+ }
@@ -0,0 +1,24 @@
1
+ import { GenerativeAIJobType } from '../../GenerativeAIJobType';
2
+ import { IJobResultGenerativeAI } from '../../job/JobResultGenerativeAI';
3
+ /**
4
+ * The AI download document result Interface
5
+ * @category AI
6
+ */
7
+ export interface IGenerativeAIDownloadDocumentResult extends IJobResultGenerativeAI {
8
+ /**
9
+ * The download document AI job type.
10
+ */
11
+ type: GenerativeAIJobType.DownloadDocument;
12
+ /**
13
+ * The original file name.
14
+ */
15
+ fileName: string;
16
+ /**
17
+ * The MIME type of the document.
18
+ */
19
+ mimeType: string;
20
+ /**
21
+ * The status of the download.
22
+ */
23
+ document: ArrayBuffer;
24
+ }
@@ -0,0 +1,20 @@
1
+ import { GenerativeAIJobType } from '../../GenerativeAIJobType';
2
+ import { IGenerativeAIWorkerParameters } from '../generic/GenerativeAIWorkerParameters';
3
+ /**
4
+ * AI download document job parameters Interface
5
+ * @category AI
6
+ */
7
+ export interface IGenerativeAIDownloadDocumentWorkerParameters extends IGenerativeAIWorkerParameters {
8
+ /**
9
+ * The AI job type.
10
+ */
11
+ type: GenerativeAIJobType.DownloadDocument;
12
+ /**
13
+ * The object store id of the document to download.
14
+ */
15
+ objectStoreId: string;
16
+ /**
17
+ * The path of the document to download.
18
+ */
19
+ documentPath: string;
20
+ }
@@ -0,0 +1,4 @@
1
+ export * from './GenerativeAIDownloadDocumentCreateJobParameters';
2
+ export * from './GenerativeAIDownloadDocumentJob';
3
+ export * from './GenerativeAIDownloadDocumentWorkerParameters';
4
+ export * from './GenerativeAIDownloadDocumentResult';
@@ -0,0 +1,4 @@
1
+ export * from './GenerativeAIDownloadDocumentCreateJobParameters';
2
+ export * from './GenerativeAIDownloadDocumentJob';
3
+ export * from './GenerativeAIDownloadDocumentWorkerParameters';
4
+ export * from './GenerativeAIDownloadDocumentResult';
@@ -0,0 +1,11 @@
1
+ import { IGenerativeAIOptions } from './GenerativeAIOptions';
2
+ /**
3
+ * The parameters for creating a generative AI job.
4
+ * @category AI
5
+ */
6
+ export interface IGenerativeAICreateJobParameters {
7
+ /**
8
+ * The options for the job.
9
+ */
10
+ options?: IGenerativeAIOptions;
11
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Represents a generative AI job.
3
+ * @category AI
4
+ */
5
+ export interface IGenerativeAIJob {
6
+ /**
7
+ * The job ID.
8
+ */
9
+ id: string;
10
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ /**
2
+ * The AI options Interface
3
+ * Represents the options for an AI job.
4
+ * @category AI
5
+ */
6
+ export interface IGenerativeAIOptions {
7
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * The AI options Interface
3
+ * Represents the options for an AI job.
4
+ * @category AI
5
+ */
6
+ export {};
@@ -0,0 +1,11 @@
1
+ import { GenerativeAIJobType } from '../../GenerativeAIJobType';
2
+ /**
3
+ * AI worker connector parameters Interface
4
+ * @category AI
5
+ */
6
+ export interface IGenerativeAIWorkerConnectorParameters {
7
+ /**
8
+ * The AI job type.
9
+ */
10
+ type: GenerativeAIJobType;
11
+ }
@@ -0,0 +1,12 @@
1
+ import { GenerativeAIJobType } from '../../GenerativeAIJobType';
2
+ import { IJobParametersGenerativeAI } from '../../job/JobParametersGenerativeAI';
3
+ /**
4
+ * Base AI job parameters Interface
5
+ * @category AI
6
+ */
7
+ export interface IGenerativeAIWorkerParameters extends IJobParametersGenerativeAI {
8
+ /**
9
+ * The AI job type.
10
+ */
11
+ type: GenerativeAIJobType;
12
+ }
@@ -0,0 +1,5 @@
1
+ export * from './GenerativeAICreateJobParameters';
2
+ export * from './GenerativeAIJob';
3
+ export * from './GenerativeAIOptions';
4
+ export * from './GenerativeAIWorkerParameters';
5
+ export * from './GenerativeAIOptions';
@@ -0,0 +1,5 @@
1
+ export * from './GenerativeAICreateJobParameters';
2
+ export * from './GenerativeAIJob';
3
+ export * from './GenerativeAIOptions';
4
+ export * from './GenerativeAIWorkerParameters';
5
+ export * from './GenerativeAIOptions';
@@ -0,0 +1,4 @@
1
+ export * from './download-document';
2
+ export * from './generic';
3
+ export * from './prompt';
4
+ export * from './rating';
@@ -0,0 +1,4 @@
1
+ export * from './download-document';
2
+ export * from './generic';
3
+ export * from './prompt';
4
+ export * from './rating';