@isdk/ai-tool 0.3.0 → 0.5.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.
Files changed (296) hide show
  1. package/dist/chunk-VIG2GB47.mjs +39 -1
  2. package/dist/chunk-VJ45JQBR.mjs +7829 -0
  3. package/dist/funcs.d.mts +3 -2
  4. package/dist/funcs.d.ts +3 -2
  5. package/dist/funcs.js +5156 -1
  6. package/dist/funcs.mjs +29 -1
  7. package/dist/index-Br-4ZYgE.d.mts +892 -0
  8. package/dist/index-Br-4ZYgE.d.ts +892 -0
  9. package/dist/index.d.mts +206 -238
  10. package/dist/index.d.ts +206 -238
  11. package/dist/index.js +8132 -1
  12. package/dist/index.mjs +476 -1
  13. package/dist/test/util.js +101 -1
  14. package/dist/test/util.mjs +30 -1
  15. package/package.json +31 -31
  16. package/dist/chunk-JHHFTTVE.mjs +0 -1
  17. package/dist/index-BC3GQn6-.d.mts +0 -488
  18. package/dist/index-BC3GQn6-.d.ts +0 -488
  19. package/docs/README.md +0 -250
  20. package/docs/_media/CONTRIBUTING.md +0 -18
  21. package/docs/_media/LICENSE-MIT +0 -22
  22. package/docs/classes/AbortError.md +0 -368
  23. package/docs/classes/AlreadyExistsError.md +0 -348
  24. package/docs/classes/BaseError.md +0 -359
  25. package/docs/classes/CancelableAbility.md +0 -379
  26. package/docs/classes/ClientTools.md +0 -2691
  27. package/docs/classes/CommonError.md +0 -377
  28. package/docs/classes/ConfigFile.md +0 -333
  29. package/docs/classes/EventClient.md +0 -3119
  30. package/docs/classes/EventServer.md +0 -3149
  31. package/docs/classes/EventToolFunc.md +0 -2533
  32. package/docs/classes/FStringPromptTemplate.md +0 -1150
  33. package/docs/classes/FewShotPromptTemplate.md +0 -1186
  34. package/docs/classes/GolangPromptTemplate.md +0 -1150
  35. package/docs/classes/HFEnvironment.md +0 -186
  36. package/docs/classes/HFInterpreter.md +0 -75
  37. package/docs/classes/HFTemplate.md +0 -67
  38. package/docs/classes/HfPromptTemplate.md +0 -1150
  39. package/docs/classes/IntSet.md +0 -216
  40. package/docs/classes/NotFoundError.md +0 -348
  41. package/docs/classes/NotImplementationError.md +0 -348
  42. package/docs/classes/PromptExampleSelector.md +0 -195
  43. package/docs/classes/PromptTemplate.md +0 -1079
  44. package/docs/classes/ReadableStreamError.md +0 -368
  45. package/docs/classes/ResClientTools.md +0 -2399
  46. package/docs/classes/ResServerTools.md +0 -2385
  47. package/docs/classes/SSEChannel.md +0 -270
  48. package/docs/classes/Semaphore.md +0 -177
  49. package/docs/classes/ServerTools.md +0 -2609
  50. package/docs/classes/TaskAbortController.md +0 -137
  51. package/docs/classes/ToolFunc.md +0 -2147
  52. package/docs/classes/YamlTypeBaseObject.md +0 -29
  53. package/docs/enumerations/AsyncFeatureBits.md +0 -37
  54. package/docs/enumerations/AsyncFeatures.md +0 -37
  55. package/docs/enumerations/ErrorCode.md +0 -217
  56. package/docs/enumerations/HashAlgorithm.md +0 -117
  57. package/docs/functions/AIArgProcessor.md +0 -27
  58. package/docs/functions/AIStream.md +0 -50
  59. package/docs/functions/ChoiceArgProcessor.md +0 -27
  60. package/docs/functions/RateLimit.md +0 -33
  61. package/docs/functions/TemplateArgProcessor.md +0 -27
  62. package/docs/functions/backendEventable.md +0 -23
  63. package/docs/functions/canonicalize.md +0 -21
  64. package/docs/functions/completeSentences.md +0 -23
  65. package/docs/functions/concatText.md +0 -23
  66. package/docs/functions/countLLMTokens.md +0 -23
  67. package/docs/functions/countRegexMatches.md +0 -33
  68. package/docs/functions/createAbilityInjector.md +0 -87
  69. package/docs/functions/createCallbacksTransformer.md +0 -49
  70. package/docs/functions/createEmptyReadableStream.md +0 -23
  71. package/docs/functions/createEndWithRepetitionDetector.md +0 -29
  72. package/docs/functions/createError.md +0 -35
  73. package/docs/functions/createEventStreamTransformer.md +0 -33
  74. package/docs/functions/createHfValueFunc.md +0 -29
  75. package/docs/functions/createLRUCache.md +0 -23
  76. package/docs/functions/createYamlObjectTag.md +0 -23
  77. package/docs/functions/dateToText.md +0 -23
  78. package/docs/functions/decodeCharset.md +0 -23
  79. package/docs/functions/detectCharset.md +0 -23
  80. package/docs/functions/encodeLLMTokens.md +0 -23
  81. package/docs/functions/expandEnv.md +0 -40
  82. package/docs/functions/expandObjEnv.md +0 -54
  83. package/docs/functions/extNameLevel.md +0 -43
  84. package/docs/functions/fileIsExists.md +0 -34
  85. package/docs/functions/filenameReservedRegex.md +0 -22
  86. package/docs/functions/filterValidFnScope.md +0 -21
  87. package/docs/functions/findIndexNonEmptyFrom.md +0 -23
  88. package/docs/functions/findPort.md +0 -23
  89. package/docs/functions/formatISO.md +0 -71
  90. package/docs/functions/formatTextWithSpace.md +0 -59
  91. package/docs/functions/getAllEnumKeys.md +0 -31
  92. package/docs/functions/getConfigFileNames.md +0 -23
  93. package/docs/functions/getConfigs.md +0 -23
  94. package/docs/functions/getFileMetaInfo.md +0 -21
  95. package/docs/functions/getHashAlgoBySize.md +0 -21
  96. package/docs/functions/getKeysPath.md +0 -38
  97. package/docs/functions/getLLMTokenizer.md +0 -21
  98. package/docs/functions/getMultiLevelExtname.md +0 -31
  99. package/docs/functions/getPackageDir.md +0 -39
  100. package/docs/functions/getRealFilepath.md +0 -34
  101. package/docs/functions/getResponseErrorReadableStream.md +0 -21
  102. package/docs/functions/hasDirectoryIn.md +0 -38
  103. package/docs/functions/hashFile.md +0 -23
  104. package/docs/functions/hashStream.md +0 -23
  105. package/docs/functions/hfParse.md +0 -24
  106. package/docs/functions/hfTokenize.md +0 -25
  107. package/docs/functions/interpolateEnv.md +0 -25
  108. package/docs/functions/interpolateFString.md +0 -27
  109. package/docs/functions/interpolateGolangTemplate.md +0 -31
  110. package/docs/functions/isLangUsingSpaces.md +0 -21
  111. package/docs/functions/isListItemString.md +0 -21
  112. package/docs/functions/isModelNameMatched.md +0 -45
  113. package/docs/functions/isPunctuationChar.md +0 -36
  114. package/docs/functions/isRegExp.md +0 -21
  115. package/docs/functions/isSectionString.md +0 -23
  116. package/docs/functions/isSentenceEnding.md +0 -21
  117. package/docs/functions/isSepLineString.md +0 -21
  118. package/docs/functions/isSubdirectory.md +0 -39
  119. package/docs/functions/isTitleString.md +0 -23
  120. package/docs/functions/isValidFilename.md +0 -38
  121. package/docs/functions/isValidFilepath.md +0 -27
  122. package/docs/functions/isWebStream.md +0 -21
  123. package/docs/functions/jsonFilterToWhere.md +0 -45
  124. package/docs/functions/jsonToMarkdownStr.md +0 -31
  125. package/docs/functions/loadFileFromPaths.md +0 -54
  126. package/docs/functions/loadTextFromPaths.md +0 -29
  127. package/docs/functions/lrucache.md +0 -29
  128. package/docs/functions/makeToolFuncCancelable.md +0 -23
  129. package/docs/functions/matchUrlProtocol.md +0 -48
  130. package/docs/functions/memoize.md +0 -27
  131. package/docs/functions/messagesToText.md +0 -21
  132. package/docs/functions/paramsSizeToScaleStr.md +0 -32
  133. package/docs/functions/parseCommand.md +0 -33
  134. package/docs/functions/parseDateFormat.md +0 -360
  135. package/docs/functions/parseFString.md +0 -26
  136. package/docs/functions/parseISO.md +0 -72
  137. package/docs/functions/parseJsJson.md +0 -38
  138. package/docs/functions/parseJsJsonSimpleSync.md +0 -23
  139. package/docs/functions/parseObjectArgInfo.md +0 -27
  140. package/docs/functions/parseObjectArgumentInfos.md +0 -25
  141. package/docs/functions/parseObjectArguments.md +0 -68
  142. package/docs/functions/parseObjectArgumentsAsArgInfos.md +0 -42
  143. package/docs/functions/parseYaml.md +0 -21
  144. package/docs/functions/quoteStr.md +0 -21
  145. package/docs/functions/reControlCharsRegex.md +0 -21
  146. package/docs/functions/readFilenamesRecursiveSync.md +0 -47
  147. package/docs/functions/readTextFileChunks.md +0 -51
  148. package/docs/functions/readTextFileChunksEx.md +0 -23
  149. package/docs/functions/readableFromAsyncIterable.md +0 -28
  150. package/docs/functions/registerCoreTools.md +0 -17
  151. package/docs/functions/registerYamlTag.md +0 -21
  152. package/docs/functions/removeMarkdownBold.md +0 -23
  153. package/docs/functions/removeMarkdownBoldAndItalic.md +0 -23
  154. package/docs/functions/removeMarkdownItalic.md +0 -23
  155. package/docs/functions/replaceWithPlaceholder.md +0 -41
  156. package/docs/functions/restoreFromPlacehoders.md +0 -45
  157. package/docs/functions/sanitizeFilename.md +0 -37
  158. package/docs/functions/sanitizeFilepath.md +0 -31
  159. package/docs/functions/saveConfigFile.md +0 -25
  160. package/docs/functions/scaleStrToParamsSize.md +0 -27
  161. package/docs/functions/simplifyObjectArguments.md +0 -21
  162. package/docs/functions/sortedValues.md +0 -25
  163. package/docs/functions/splitChunks.md +0 -23
  164. package/docs/functions/splitParagraph.md +0 -32
  165. package/docs/functions/splitSentence.md +0 -37
  166. package/docs/functions/stringifyYaml.md +0 -21
  167. package/docs/functions/stripConsoleColor.md +0 -21
  168. package/docs/functions/textToDate.md +0 -23
  169. package/docs/functions/throwError.md +0 -37
  170. package/docs/functions/toDate.md +0 -76
  171. package/docs/functions/toDateTime.md +0 -21
  172. package/docs/functions/toRegExp.md +0 -34
  173. package/docs/functions/trimStartOfStreamHelper.md +0 -41
  174. package/docs/functions/truncTo.md +0 -47
  175. package/docs/functions/truncateByToken.md +0 -23
  176. package/docs/functions/truncateToTokenLimit.md +0 -44
  177. package/docs/functions/truncateToTokenLimitEx.md +0 -23
  178. package/docs/functions/uuid.md +0 -23
  179. package/docs/functions/uuidParse.md +0 -21
  180. package/docs/functions/uuidStringify.md +0 -23
  181. package/docs/functions/uuidValidate.md +0 -21
  182. package/docs/functions/uuidVersion.md +0 -21
  183. package/docs/functions/uuidv1.md +0 -47
  184. package/docs/functions/uuidv4.md +0 -47
  185. package/docs/functions/uuidv5.md +0 -51
  186. package/docs/functions/wait.md +0 -21
  187. package/docs/functions/xxhash.md +0 -25
  188. package/docs/functions/xxhash32.md +0 -23
  189. package/docs/functions/xxhash64.md +0 -23
  190. package/docs/functions/xxhashAsStr.md +0 -25
  191. package/docs/globals.md +0 -285
  192. package/docs/interfaces/AIChatAssistantMessageParam.md +0 -117
  193. package/docs/interfaces/AIChatContentPartImage.md +0 -31
  194. package/docs/interfaces/AIChatContentPartText.md +0 -27
  195. package/docs/interfaces/AIChatMessageParamBase.md +0 -58
  196. package/docs/interfaces/AIChatMessageToolCall.md +0 -45
  197. package/docs/interfaces/AIChatSystemMessageParam.md +0 -87
  198. package/docs/interfaces/AIChatToolMessageParam.md +0 -97
  199. package/docs/interfaces/AIChatUserMessageParam.md +0 -127
  200. package/docs/interfaces/AIChoiceConfig.md +0 -77
  201. package/docs/interfaces/AIResult.md +0 -73
  202. package/docs/interfaces/AIStreamParser.md +0 -39
  203. package/docs/interfaces/AIStreamParserOptions.md +0 -21
  204. package/docs/interfaces/BaseFunc.md +0 -155
  205. package/docs/interfaces/BaseFuncItem.md +0 -103
  206. package/docs/interfaces/CancelableAbilityOptions.md +0 -115
  207. package/docs/interfaces/ClientFuncItem.md +0 -179
  208. package/docs/interfaces/DotenvExpandOptions.md +0 -47
  209. package/docs/interfaces/DotenvExpandOutput.md +0 -27
  210. package/docs/interfaces/DotenvParseInput.md +0 -11
  211. package/docs/interfaces/DotenvParseOutput.md +0 -11
  212. package/docs/interfaces/DotenvPopulateInput.md +0 -11
  213. package/docs/interfaces/EventClientFuncParams.md +0 -55
  214. package/docs/interfaces/EventServerFuncParams.md +0 -71
  215. package/docs/interfaces/FewShotPromptTemplateOptions.md +0 -163
  216. package/docs/interfaces/FuncItem.md +0 -143
  217. package/docs/interfaces/FuncParam.md +0 -71
  218. package/docs/interfaces/FuncParams.md +0 -11
  219. package/docs/interfaces/Funcs.md +0 -11
  220. package/docs/interfaces/HashAlgoParams.md +0 -37
  221. package/docs/interfaces/IFileMetaInfo.md +0 -77
  222. package/docs/interfaces/IReadTextFileChunksOptions.md +0 -157
  223. package/docs/interfaces/ITruncateToTokenLimitOptions.md +0 -111
  224. package/docs/interfaces/JsonFilter.md +0 -11
  225. package/docs/interfaces/ParseObjectArgumentOptions.md +0 -97
  226. package/docs/interfaces/PromptExampleSelectorOptions.md +0 -36
  227. package/docs/interfaces/PromptTemplateOptions.md +0 -75
  228. package/docs/interfaces/RemoteFuncItem.md +0 -168
  229. package/docs/interfaces/ReplacePlacehoderOptions.md +0 -47
  230. package/docs/interfaces/ResClientFuncParams.md +0 -35
  231. package/docs/interfaces/ResServerFuncParams.md +0 -73
  232. package/docs/interfaces/SanitizeFilenameOptions.md +0 -27
  233. package/docs/interfaces/SectionStringOptions.md +0 -27
  234. package/docs/interfaces/ServerFuncItem.md +0 -189
  235. package/docs/interfaces/ServerFuncParams.md +0 -37
  236. package/docs/interfaces/SplitSentenceOptions.md +0 -47
  237. package/docs/interfaces/StreamCallbacksAndOptions.md +0 -95
  238. package/docs/interfaces/TaskAbortControllers.md +0 -11
  239. package/docs/interfaces/TaskPromise.md +0 -138
  240. package/docs/interfaces/ToolFuncPackage.md +0 -49
  241. package/docs/type-aliases/AIChatContentPart.md +0 -13
  242. package/docs/type-aliases/AIChatMessageParam.md +0 -13
  243. package/docs/type-aliases/AIChatRole.md +0 -13
  244. package/docs/type-aliases/AIMessageType.md +0 -13
  245. package/docs/type-aliases/AIModelNameRule.md +0 -13
  246. package/docs/type-aliases/AIModelNameRuleFn.md +0 -21
  247. package/docs/type-aliases/AIModelNameRules.md +0 -13
  248. package/docs/type-aliases/AITextGenerationFinishReason.md +0 -13
  249. package/docs/type-aliases/ActionName.md +0 -13
  250. package/docs/type-aliases/AsyncTaskId.md +0 -13
  251. package/docs/type-aliases/EventErrorListenerFn.md +0 -27
  252. package/docs/type-aliases/EventListenerFn.md +0 -25
  253. package/docs/type-aliases/FStringPromptTemplateNode.md +0 -16
  254. package/docs/type-aliases/FuncParamType.md +0 -13
  255. package/docs/type-aliases/PromptExamples.md +0 -17
  256. package/docs/type-aliases/PromptTemplateType.md +0 -13
  257. package/docs/type-aliases/PromptType.md +0 -13
  258. package/docs/type-aliases/TFunc.md +0 -23
  259. package/docs/variables/AIChatRoles.md +0 -13
  260. package/docs/variables/AIMessageTypes.md +0 -13
  261. package/docs/variables/AITextGenerationFinishReasons.md +0 -13
  262. package/docs/variables/AbortErrorCode.md +0 -13
  263. package/docs/variables/ActionNames.md +0 -13
  264. package/docs/variables/AlreadyExistsErrorCode.md +0 -13
  265. package/docs/variables/ClientToolFuncSchema.md +0 -87
  266. package/docs/variables/DefaultAsyncSemaphoreCapacity.md +0 -13
  267. package/docs/variables/EventBusName.md +0 -13
  268. package/docs/variables/EventName.md +0 -13
  269. package/docs/variables/FilenameReservedRegex.md +0 -16
  270. package/docs/variables/HFBuiltins.md +0 -92
  271. package/docs/variables/InternalErrorCode.md +0 -13
  272. package/docs/variables/LLM_TOKENIZER_NAMES.md +0 -83
  273. package/docs/variables/LLM_TOKENIZER_NAMES_MAP.md +0 -13
  274. package/docs/variables/NotFoundErrorCode.md +0 -13
  275. package/docs/variables/NotImplementedErrorCode.md +0 -13
  276. package/docs/variables/PASSING_SCORE.md +0 -13
  277. package/docs/variables/PromptTemplateTypes.md +0 -13
  278. package/docs/variables/PromptTypes.md +0 -16
  279. package/docs/variables/RStreamErrCode.md +0 -13
  280. package/docs/variables/RemoteToolFuncSchema.md +0 -87
  281. package/docs/variables/ResponseRStreamErrCode.md +0 -13
  282. package/docs/variables/SSEChannelAlreadyClosedErrCode.md +0 -13
  283. package/docs/variables/ServerToolFuncSchema.md +0 -87
  284. package/docs/variables/ToolAsyncCancelableBit.md +0 -13
  285. package/docs/variables/ToolAsyncMultiTaskBit.md +0 -13
  286. package/docs/variables/ToolAsyncPriorityBit.md +0 -13
  287. package/docs/variables/ToolFuncSchema.md +0 -125
  288. package/docs/variables/WindowsReservedNameRegex.md +0 -15
  289. package/docs/variables/base32768.md +0 -13
  290. package/docs/variables/defaultTemplateFormat.md +0 -13
  291. package/docs/variables/event.md +0 -13
  292. package/docs/variables/eventClient.md +0 -13
  293. package/docs/variables/eventServer.md +0 -13
  294. package/docs/variables/lrucache.md +0 -13
  295. package/docs/variables/mimeType.md +0 -13
  296. package/docs/variables/uuidNIL.md +0 -13
@@ -1,488 +0,0 @@
1
- import { EventEmitter, Event } from 'events-ex';
2
- import { AdvancePropertyManager } from 'property-manager';
3
- import { ICacheOptions, Cache } from 'secondary-cache';
4
- import * as _isdk_common_error from '@isdk/common-error';
5
- import { IncomingMessage, ServerResponse } from 'http';
6
-
7
- declare const ToolAsyncMultiTaskBit = 0;
8
- declare const ToolAsyncCancelableBit = 1;
9
- declare const ToolAsyncPriorityBit = 2;
10
- declare enum AsyncFeatureBits {
11
- MultiTask = 0,
12
- Cancelable = 1,
13
- Priority = 2
14
- }
15
- declare enum AsyncFeatures {
16
- MultiTask = 1,// B0001
17
- Cancelable = 2,// B010
18
- Priority = 4
19
- }
20
- type FuncParamType = string;
21
- interface FuncParam {
22
- name?: string;
23
- type?: FuncParamType;
24
- required?: boolean;
25
- description?: string;
26
- asyncFeatures?: number;
27
- depends?: {
28
- [name: string]: ToolFunc;
29
- };
30
- }
31
- interface FuncParams {
32
- [name: string]: FuncParam | FuncParamType;
33
- }
34
- type TFunc = (this: ToolFunc, ...params: any[]) => any;
35
- interface BaseFuncItem {
36
- name?: string;
37
- params?: FuncParams | FuncParam[];
38
- result?: string;
39
- scope?: any;
40
- tags?: string | string[];
41
- setup?: (this: ToolFunc, options?: FuncItem) => void;
42
- isApi?: boolean;
43
- stream?: boolean;
44
- }
45
- interface FuncItem extends BaseFuncItem {
46
- func?: TFunc;
47
- }
48
- interface BaseFunc extends BaseFuncItem {
49
- func(...params: any): any;
50
- }
51
- interface Funcs {
52
- [name: string]: ToolFunc;
53
- }
54
- interface ToolFuncPackage {
55
- name: string;
56
- register: (data?: any) => void;
57
- unregister?: () => void;
58
- }
59
- declare interface ToolFunc extends BaseFunc {
60
- [name: string]: any;
61
- }
62
- declare class ToolFunc extends AdvancePropertyManager {
63
- static items: Funcs;
64
- static dataPath: string;
65
- static get(name: string): ToolFunc;
66
- static list(): Funcs;
67
- static getByTag(tagName: string): ToolFunc | undefined;
68
- static getAllByTag(tagName: string): ToolFunc[];
69
- static hasAsyncFeature(feature: AsyncFeatureBits): boolean;
70
- static run(name: string, params?: any): Promise<any>;
71
- static runSync(name: string, params?: any): any;
72
- static getFunc(name: string): any;
73
- static runWithPos(name: string, ...params: any[]): Promise<any>;
74
- static runWithPosSync(name: string, ...params: any[]): any;
75
- static getFuncWithPos(name: string): any;
76
- static register(name: string, options: FuncItem): boolean | ToolFunc;
77
- static register(func: Function, options: FuncItem): boolean | ToolFunc;
78
- static register(name: string | ToolFunc | Function | FuncItem, options?: FuncItem): boolean | ToolFunc;
79
- static unregister(name: string): ToolFunc | undefined;
80
- constructor(name: string | Function | FuncItem, options?: FuncItem | any);
81
- register(): boolean | ToolFunc;
82
- unregister(): any;
83
- arr2ObjParams(params: any[]): any[];
84
- obj2ArrParams(params?: any): any[];
85
- runSync(params?: any): any;
86
- run(params?: any): Promise<any>;
87
- runAs(name: string, params?: any): Promise<any>;
88
- runAsSync(name: string, params?: any): any;
89
- getFunc(name?: string): any;
90
- runWithPosSync(...params: any[]): any;
91
- runWithPosAsSync(name: string, ...params: any[]): any;
92
- runWithPos(...params: any[]): Promise<any>;
93
- runWithPosAs(name: string, ...params: any[]): Promise<any>;
94
- getFuncWithPos(name?: string): any;
95
- hasAsyncFeature(feature: AsyncFeatureBits): boolean;
96
- isStream(params: any): boolean | undefined;
97
- }
98
- declare const ToolFuncSchema: {
99
- name: {
100
- type: string;
101
- };
102
- description: {
103
- type: string;
104
- };
105
- func: {
106
- type: string;
107
- assign(value: Function | string, dest: ToolFunc, src?: ToolFunc, name?: string, options?: any): string | Function;
108
- };
109
- params: {
110
- type: string;
111
- };
112
- result: {
113
- type: string;
114
- };
115
- setup: {
116
- type: string;
117
- };
118
- depends: {
119
- type: string;
120
- exported: boolean;
121
- };
122
- tags: {
123
- type: string[];
124
- };
125
- isApi: {
126
- type: string;
127
- };
128
- stream: {
129
- type: string;
130
- };
131
- asyncFeatures: {
132
- type: string;
133
- };
134
- };
135
-
136
- declare const PASSING_SCORE = 0.618;
137
- declare const ActionNames: readonly ["get", "post", "put", "delete", "patch", "list", "res"];
138
- type ActionName = typeof ActionNames[number];
139
- type AIModelNameRuleFn = (name: string) => string | RegExpExecArray | undefined;
140
- type AIModelNameRule = string | RegExp | AIModelNameRuleFn;
141
- type AIModelNameRules = AIModelNameRule | AIModelNameRule[];
142
- declare const RemoteToolFuncSchema: {
143
- apiRoot: {
144
- type: string;
145
- get(this: any): any;
146
- set(this: any, value: string): void;
147
- };
148
- action: {
149
- type: string;
150
- assign(value: ActionName, dest: any, src?: any, name?: string, options?: any): "get" | "post" | "put" | "delete" | "patch" | "list" | "res";
151
- };
152
- fetchOptions: {
153
- type: string;
154
- };
155
- allowExportFunc: {
156
- type: string;
157
- };
158
- };
159
- interface RemoteFuncItem extends BaseFuncItem {
160
- apiRoot?: string;
161
- action?: ActionName;
162
- fetchOptions?: any;
163
- }
164
-
165
- type Events = (string | RegExp)[];
166
- type Client = {
167
- req: IncomingMessage;
168
- res: ServerResponse;
169
- events?: Events;
170
- };
171
- declare const SSEChannelAlreadyClosedErrCode = 498;
172
- /**
173
- * A class for creating Server-Sent Events (SSE) channels.
174
- * @example
175
- * const sseChannel = new SSEChannel({ pingInterval: 5000 })
176
- * sseChannel.publish('Hello, world!', 'greeting')
177
- */
178
- declare class SSEChannel {
179
- _active: boolean;
180
- clients: Set<Client>;
181
- messages: Record<string, any>[];
182
- nextID: number;
183
- options: Record<string, any>;
184
- pingTimer?: NodeJS.Timeout;
185
- get active(): boolean;
186
- set active(v: boolean);
187
- /**
188
- * Creates a new SSE channel.
189
- * @param options - The options for the SSE channel.
190
- */
191
- constructor(options?: Record<string, any>);
192
- /**
193
- * Publishes a message to the SSE channel.
194
- * @param {string | Record<string, any>} data - The data to send. It can be a string or an object.
195
- * @param {string} eventName - The name of the event.
196
- * @returns {number | undefined} - Returns the ID of the message.
197
- * @throws Will throw an error if the channel is closed.
198
- */
199
- publish(data?: string | Record<string, any>, eventName?: string): number | undefined;
200
- /**
201
- * Subscribes a client to the SSE channel.
202
- * @param {IncomingMessage} req - The request object.
203
- * @param {ServerResponse} res - The response object.
204
- * @param {Events} events - The events to subscribe to.
205
- * @returns {Client} - Returns the client object.
206
- * @throws Will throw an error if the channel is closed.
207
- */
208
- subscribe(req: IncomingMessage, res: ServerResponse, events?: Events): {
209
- req: IncomingMessage;
210
- res: ServerResponse<IncomingMessage>;
211
- events: Events | undefined;
212
- };
213
- /**
214
- * Unsubscribes a client from the SSE channel.
215
- * @param {Client} c - The client to unsubscribe.
216
- */
217
- unsubscribe(c: Client): void;
218
- clearClients(): void;
219
- /**
220
- * Lists the clients connected to the SSE channel grouped by IP address.
221
- * @returns - Returns an object where the keys are the IP addresses and the values are the number of clients connected from each IP.
222
- */
223
- listClients(): Record<string, number>;
224
- /**
225
- * Gets the number of clients subscribed to the SSE channel.
226
- * @returns - Returns the number of clients.
227
- */
228
- getSubscriberCount(): number;
229
- }
230
-
231
- declare global {
232
- // eslint-disable-next-line @typescript-eslint/consistent-type-definitions -- It has to be an `interface` so that it can be merged.
233
- interface SymbolConstructor {
234
- readonly observable: symbol;
235
- }
236
- }
237
-
238
- interface ClientFuncItem extends RemoteFuncItem {
239
- }
240
- declare interface ClientTools extends ClientFuncItem {
241
- [name: string]: any;
242
- }
243
- declare class ClientTools extends ToolFunc {
244
- apiRoot: string | undefined;
245
- private static _apiRoot?;
246
- static get apiRoot(): string | undefined;
247
- static setApiRoot(v: string): void;
248
- static loadFrom(): Promise<void>;
249
- static loadFromSync(items: Funcs): void;
250
- static fetch(name: string, objParam?: any): Promise<any>;
251
- getUrlParams(objParam: any): string;
252
- fetch(objParam?: any, act?: ActionName, subName?: any): Promise<Response>;
253
- errorFrom(res: Response): Promise<_isdk_common_error.CommonError>;
254
- func(objParam: any): Promise<any>;
255
- }
256
- declare const ClientToolFuncSchema: {
257
- apiRoot: {
258
- type: string;
259
- get(this: any): any;
260
- set(this: any, value: string): void;
261
- };
262
- action: {
263
- type: string;
264
- assign(value: ActionName, dest: any, src?: any, name?: string, options?: any): "get" | "post" | "put" | "delete" | "patch" | "list" | "res";
265
- };
266
- fetchOptions: {
267
- type: string;
268
- };
269
- allowExportFunc: {
270
- type: string;
271
- };
272
- };
273
-
274
- /**
275
- * Convention: Always pass _req, _res
276
- */
277
- interface ServerFuncParams {
278
- _req?: IncomingMessage;
279
- _res?: ServerResponse;
280
- [name: string]: any;
281
- }
282
- interface ServerFuncItem extends RemoteFuncItem {
283
- allowExportFunc?: boolean;
284
- }
285
- declare interface ServerTools extends ServerFuncItem {
286
- [name: string]: any;
287
- }
288
- declare class ServerTools extends ToolFunc {
289
- private static _apiRoot?;
290
- static get apiRoot(): string | undefined;
291
- static setApiRoot(v: string): void;
292
- static toJSON(): {
293
- [name: string]: ServerTools;
294
- };
295
- func({}: {}): Promise<any> | any;
296
- }
297
- declare const ServerToolFuncSchema: {
298
- apiRoot: {
299
- type: string;
300
- get(this: any): any;
301
- set(this: any, value: string): void;
302
- };
303
- action: {
304
- type: string;
305
- assign(value: ActionName, dest: any, src?: any, name?: string, options?: any): "get" | "post" | "put" | "delete" | "patch" | "list" | "res";
306
- };
307
- fetchOptions: {
308
- type: string;
309
- };
310
- allowExportFunc: {
311
- type: string;
312
- };
313
- };
314
-
315
- declare class EventToolFunc extends ToolFunc {
316
- _emitter: EventEmitter;
317
- description: string;
318
- result: string;
319
- get emitter(): EventEmitter;
320
- func(): EventEmitter;
321
- }
322
- declare const event: EventToolFunc;
323
-
324
- declare function _lrucache(this: ToolFunc, { key, value, options }?: {
325
- key?: string;
326
- value?: any;
327
- options?: ICacheOptions | number;
328
- }): Cache;
329
- declare function createLRUCache(name: string, options?: ICacheOptions | number): ToolFunc;
330
- declare const lrucache: ToolFunc;
331
-
332
- interface RpcMethodsClientFuncParams {
333
- act?: string;
334
- [name: string]: any;
335
- }
336
- declare class RpcMethodsClientTool extends ClientTools {
337
- _func(action: ActionName, options: RpcMethodsClientFuncParams): Promise<any>;
338
- func(options: RpcMethodsClientFuncParams): Promise<any>;
339
- assignMethods(methods: string[]): void;
340
- }
341
-
342
- interface ResClientFuncParams extends RpcMethodsClientFuncParams {
343
- id?: string | number;
344
- }
345
- interface ResClientTools {
346
- get?({ id }: ResClientFuncParams): any;
347
- post?(options: ResClientFuncParams): any;
348
- put?({ id }: ResClientFuncParams): any;
349
- delete?({ id }: ResClientFuncParams): any;
350
- list?(options: ResClientFuncParams): any;
351
- }
352
- declare class ResClientTools extends RpcMethodsClientTool {
353
- fetch(options: ResClientFuncParams, action: ActionName): Promise<Response>;
354
- }
355
-
356
- interface EventClientFuncParams {
357
- event?: string | string[];
358
- data?: any;
359
- act?: 'sub' | 'pub' | 'unsub' | 'init';
360
- listener?: (...args: any[]) => void;
361
- }
362
- declare class EventClient extends ResClientTools {
363
- _es: EventSource | undefined;
364
- _esEvents: string[] | undefined;
365
- _sseEvents: Record<string, (e: MessageEvent) => void>;
366
- _forwardEvents: Set<string>;
367
- get evtSource(): EventSource;
368
- get active(): boolean;
369
- set active(v: boolean);
370
- name: string;
371
- description: string;
372
- initEventSource(events?: string | string[]): EventSource;
373
- esListener(event: MessageEvent): void;
374
- ebListener: (this: Event, ...data: any[]) => Promise<void>;
375
- /**
376
- * subscribe server sent event(SSE)
377
- * @param events
378
- */
379
- subscribe(events: string | string[]): Promise<any>;
380
- /**
381
- * unsubscribe server sent event(SSE)
382
- * @param events
383
- */
384
- unsubscribe(events: string | string[]): Promise<any>;
385
- /**
386
- * forward local event(s) to server
387
- *
388
- * subscribe these local events to forward/publish to server
389
- *
390
- * Note: pls backendEventable(ClientTools or EventClient) first
391
- * @param events
392
- */
393
- forwardEvent(events: string | string[]): void;
394
- /**
395
- * unforward local event(s) to server
396
- *
397
- * unsubscribe these local events not to forward/publish to server
398
- *
399
- * Note: pls backendEventable(ClientTools or EventClient) first
400
- * @param events
401
- */
402
- unforwardEvent(events: string | string[]): void;
403
- init(events: string | string[]): Promise<any>;
404
- }
405
- declare const eventClient: EventClient;
406
-
407
- interface RpcMethodsServerFuncParams extends ServerFuncParams {
408
- act?: string;
409
- }
410
- interface RpcMethodsServerTool {
411
- methods: string[];
412
- }
413
- declare class RpcMethodsServerTool extends ServerTools {
414
- static SpecialRpcMethodNames?: string[];
415
- params: FuncParams;
416
- get SpecialRpcMethodNames(): any;
417
- initRpcMethods(methods?: string[]): void;
418
- constructor(name: string | Function | FuncItem, options?: FuncItem | any);
419
- cast(key: string, value: any): any;
420
- getMethodFromParams(params: RpcMethodsServerFuncParams): string | undefined;
421
- castParams(params: RpcMethodsServerFuncParams): RpcMethodsServerFuncParams;
422
- func(params: RpcMethodsServerFuncParams): any;
423
- }
424
-
425
- interface ResServerFuncParams extends RpcMethodsServerFuncParams {
426
- id?: string | number;
427
- val?: any;
428
- }
429
- interface ResServerTools {
430
- get?({ id }: ResServerFuncParams): any;
431
- post?(options: ResServerFuncParams): any;
432
- put?({ id }: ResServerFuncParams): any;
433
- delete?({ id }: ResServerFuncParams): any;
434
- list?(options?: ResServerFuncParams): any;
435
- }
436
- declare class ResServerTools extends RpcMethodsServerTool {
437
- static SpecialRpcMethodNames: any;
438
- action: ActionName;
439
- params: FuncParams;
440
- constructor(name: string | Function | FuncItem, options?: FuncItem | any);
441
- getMethodFromParams(params: ResServerFuncParams): string | undefined;
442
- castParams(params: RpcMethodsServerFuncParams): RpcMethodsServerFuncParams;
443
- }
444
-
445
- interface EventServerFuncParams extends ServerFuncParams {
446
- event?: string | string[];
447
- data?: any;
448
- act?: 'sub' | 'pub' | 'unsub';
449
- }
450
- declare class EventServer extends ResServerTools {
451
- static _sse: SSEChannel | undefined;
452
- static get sse(): SSEChannel;
453
- name: string;
454
- description: string;
455
- result: string;
456
- depends: {
457
- "event-bus": EventToolFunc;
458
- };
459
- get sse(): any;
460
- static publish(data: any, event: string): number | undefined;
461
- static ebListener: (this: Event, ...data: any[]) => void;
462
- static subscribe(req: IncomingMessage, res: ServerResponse, events?: string[]): {
463
- req: IncomingMessage;
464
- res: ServerResponse<IncomingMessage>;
465
- events: (string | RegExp)[] | undefined;
466
- };
467
- static alreadyForward(event: string): true | undefined;
468
- publishSSE(data: any, event: string): any;
469
- subscribeSSE(req: IncomingMessage, res: ServerResponse, events?: string | string[]): any;
470
- forward(events: string | string[]): void;
471
- unforward(events: string | string[]): void;
472
- list({ _req, _res, event }: EventServerFuncParams): void;
473
- $sub({ event }: EventServerFuncParams): {
474
- event: string | string[];
475
- } | undefined;
476
- $unsub({ event }: EventServerFuncParams): {
477
- event: string | string[];
478
- } | undefined;
479
- $publish({ event: events, data }: EventServerFuncParams): {
480
- event: string[];
481
- } | undefined;
482
- isStream(params: ServerFuncParams): boolean;
483
- }
484
- declare const eventServer: EventServer;
485
-
486
- declare function registerCoreTools(): void;
487
-
488
- export { AsyncFeatures as A, type BaseFuncItem as B, type ClientFuncItem as C, event as D, EventToolFunc as E, type FuncParamType as F, createLRUCache as G, lrucache as H, type EventClientFuncParams as I, EventClient as J, eventClient as K, type EventServerFuncParams as L, EventServer as M, eventServer as N, type ResClientFuncParams as O, PASSING_SCORE as P, ResClientTools as Q, RemoteToolFuncSchema as R, SSEChannelAlreadyClosedErrCode as S, ToolFunc as T, type ResServerFuncParams as U, ResServerTools as V, _lrucache as _, type AIModelNameRules as a, ActionNames as b, type ActionName as c, type AIModelNameRuleFn as d, type AIModelNameRule as e, type RemoteFuncItem as f, SSEChannel as g, ToolAsyncMultiTaskBit as h, ToolAsyncCancelableBit as i, ToolAsyncPriorityBit as j, AsyncFeatureBits as k, type FuncParam as l, type FuncParams as m, type TFunc as n, type FuncItem as o, type BaseFunc as p, type Funcs as q, type ToolFuncPackage as r, ToolFuncSchema as s, ClientTools as t, ClientToolFuncSchema as u, type ServerFuncParams as v, type ServerFuncItem as w, ServerTools as x, ServerToolFuncSchema as y, registerCoreTools as z };