@isdk/ai-tool 0.5.8 → 0.7.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 (497) hide show
  1. package/README.cn.md +103 -237
  2. package/README.md +101 -186
  3. package/dist/chunk-LNTIQQNN.mjs +1 -0
  4. package/dist/chunk-VIG2GB47.mjs +1 -1
  5. package/dist/funcs.d.mts +1 -1
  6. package/dist/funcs.d.ts +1 -1
  7. package/dist/funcs.js +1 -1
  8. package/dist/funcs.mjs +1 -1
  9. package/dist/index-BCco-g_I.d.mts +1781 -0
  10. package/dist/index-BCco-g_I.d.ts +1781 -0
  11. package/dist/index.d.mts +1083 -650
  12. package/dist/index.d.ts +1083 -650
  13. package/dist/index.js +1 -1
  14. package/dist/index.mjs +1 -1
  15. package/dist/test/util.js +1 -1
  16. package/docs/api/README.md +165 -0
  17. package/docs/{_media → api/_media}/CONTRIBUTING.md +3 -3
  18. package/docs/api/_media/pubsub.md +326 -0
  19. package/docs/api/_media/server_client_tools.md +88 -0
  20. package/docs/api/_media/toolFunc.md +183 -0
  21. package/docs/api/_media/transport.md +137 -0
  22. package/docs/{classes → api/classes}/AbortError.md +139 -54
  23. package/docs/api/classes/AlreadyExistsError.md +431 -0
  24. package/docs/api/classes/BaseError.md +440 -0
  25. package/docs/{classes → api/classes}/BinarySemaphore.md +25 -25
  26. package/docs/{classes → api/classes}/CancelableAbility.md +25 -25
  27. package/docs/api/classes/ClientToolTransport.md +310 -0
  28. package/docs/{classes → api/classes}/ClientTools.md +642 -180
  29. package/docs/{classes → api/classes}/CommonError.md +139 -54
  30. package/docs/api/classes/ConfigFile.md +218 -0
  31. package/docs/{classes → api/classes}/EnvPromptTemplate.md +308 -65
  32. package/docs/{classes → api/classes}/EventClient.md +725 -232
  33. package/docs/{classes → api/classes}/EventEmitter.md +12 -12
  34. package/docs/{classes → api/classes}/EventServer.md +658 -205
  35. package/docs/{classes → api/classes}/EventToolFunc.md +561 -109
  36. package/docs/{classes → api/classes}/FStringPromptTemplate.md +309 -66
  37. package/docs/{classes → api/classes}/FewShotPromptTemplate.md +290 -63
  38. package/docs/{classes → api/classes}/GolangPromptTemplate.md +308 -65
  39. package/docs/api/classes/HttpClientToolTransport.md +324 -0
  40. package/docs/api/classes/HttpServerToolTransport.md +324 -0
  41. package/docs/{classes → api/classes}/IntSet.md +12 -12
  42. package/docs/{classes → api/classes}/LRUCache.md +26 -26
  43. package/docs/api/classes/NotFoundError.md +431 -0
  44. package/docs/api/classes/NotImplementationError.md +431 -0
  45. package/docs/{classes → api/classes}/PromptExampleSelector.md +9 -9
  46. package/docs/{classes → api/classes}/PromptTemplate.md +303 -63
  47. package/docs/api/classes/ReadableStreamError.md +451 -0
  48. package/docs/api/classes/ResClientTools.md +2878 -0
  49. package/docs/api/classes/ResServerTools.md +2856 -0
  50. package/docs/api/classes/SSEChannel.md +272 -0
  51. package/docs/{classes → api/classes}/Semaphore.md +26 -26
  52. package/docs/api/classes/ServerToolTransport.md +323 -0
  53. package/docs/{classes → api/classes}/ServerTools.md +579 -120
  54. package/docs/{classes → api/classes}/SignalGate.md +9 -9
  55. package/docs/api/classes/SseClientPubSubTransport.md +92 -0
  56. package/docs/api/classes/SseServerPubSubTransport.md +234 -0
  57. package/docs/{classes → api/classes}/TaskAbortController.md +9 -9
  58. package/docs/api/classes/ToolFunc.md +2665 -0
  59. package/docs/api/classes/ToolTransport.md +143 -0
  60. package/docs/api/classes/YamlTypeBaseObject.md +31 -0
  61. package/docs/api/enumerations/AsyncFeatureBits.md +33 -0
  62. package/docs/api/enumerations/AsyncFeatures.md +33 -0
  63. package/docs/api/enumerations/ErrorCode.md +177 -0
  64. package/docs/api/enumerations/HashAlgorithm.md +97 -0
  65. package/docs/{functions → api/functions}/AIArgProcessor.md +1 -1
  66. package/docs/{functions → api/functions}/AIStream.md +1 -1
  67. package/docs/{functions → api/functions}/ChoiceArgProcessor.md +1 -1
  68. package/docs/api/functions/DefaultDateFormat.md +21 -0
  69. package/docs/{functions → api/functions}/ObjectArgsToArgsInfo.md +1 -1
  70. package/docs/{functions → api/functions}/RateLimit.md +1 -1
  71. package/docs/{functions → api/functions}/TemplateArgProcessor.md +1 -1
  72. package/docs/api/functions/addDate.md +71 -0
  73. package/docs/{functions → api/functions}/assignDirs.md +1 -1
  74. package/docs/{functions → api/functions}/backendEventable.md +1 -1
  75. package/docs/{functions → api/functions}/beforeShutdown.md +1 -1
  76. package/docs/api/functions/calcPerplexity.md +60 -0
  77. package/docs/api/functions/calcPerplexitySimple.md +42 -0
  78. package/docs/api/functions/canonicalize.md +33 -0
  79. package/docs/{functions → api/functions}/completeSentences.md +1 -1
  80. package/docs/{functions → api/functions}/concatText.md +1 -1
  81. package/docs/{functions → api/functions}/countLLMTokens.md +1 -1
  82. package/docs/{functions → api/functions}/countRegexMatches.md +1 -1
  83. package/docs/{functions → api/functions}/createAbilityInjector.md +4 -4
  84. package/docs/{functions → api/functions}/createCallbacksTransformer.md +1 -1
  85. package/docs/{functions → api/functions}/createEmptyReadableStream.md +1 -1
  86. package/docs/{functions → api/functions}/createEndWithRepetitionDetector.md +1 -1
  87. package/docs/{functions → api/functions}/createError.md +1 -1
  88. package/docs/{functions → api/functions}/createEventStreamTransformer.md +1 -1
  89. package/docs/{functions → api/functions}/createHfValueFunc.md +1 -1
  90. package/docs/{functions → api/functions}/createLRUCache.md +1 -1
  91. package/docs/{functions → api/functions}/createYamlObjectTag.md +1 -1
  92. package/docs/{functions → api/functions}/dateToText.md +1 -1
  93. package/docs/{functions → api/functions}/decodeCharset.md +1 -1
  94. package/docs/api/functions/defaultsWithConcat.md +74 -0
  95. package/docs/{functions → api/functions}/detectCharset.md +1 -1
  96. package/docs/{functions → api/functions}/encodeLLMTokens.md +1 -1
  97. package/docs/{functions → api/functions}/ensureQuoted.md +1 -1
  98. package/docs/{functions → api/functions}/eventable.md +1 -1
  99. package/docs/api/functions/expandConfig.md +25 -0
  100. package/docs/{functions → api/functions}/expandEnv.md +4 -4
  101. package/docs/{functions → api/functions}/expandObjEnv.md +4 -4
  102. package/docs/{functions → api/functions}/expandPath.md +1 -1
  103. package/docs/api/functions/expandPathInObject.md +29 -0
  104. package/docs/api/functions/expandPaths.md +25 -0
  105. package/docs/{functions → api/functions}/extNameLevel.md +1 -1
  106. package/docs/{functions → api/functions}/fileIsExists.md +1 -1
  107. package/docs/{functions → api/functions}/filterValidFnScope.md +1 -1
  108. package/docs/{functions → api/functions}/findIndexNonEmptyFrom.md +1 -1
  109. package/docs/{functions → api/functions}/findPort.md +1 -1
  110. package/docs/{functions → api/functions}/formatISO.md +1 -1
  111. package/docs/{functions → api/functions}/formatTextWithSpace.md +1 -1
  112. package/docs/api/functions/funcGetMeta.md +27 -0
  113. package/docs/api/functions/funcWithMeta.md +41 -0
  114. package/docs/api/functions/genUrlParamsStr.md +27 -0
  115. package/docs/{functions → api/functions}/getAllEnumKeys.md +1 -1
  116. package/docs/{functions → api/functions}/getConfigFileNames.md +1 -1
  117. package/docs/{functions → api/functions}/getConfigs.md +1 -1
  118. package/docs/{functions → api/functions}/getEnvVairables.md +1 -1
  119. package/docs/{functions → api/functions}/getFileMetaInfo.md +1 -1
  120. package/docs/{functions → api/functions}/getHashAlgoBySize.md +1 -1
  121. package/docs/{functions → api/functions}/getKeysPath.md +1 -1
  122. package/docs/{functions → api/functions}/getLLMTokenizer.md +1 -1
  123. package/docs/{functions → api/functions}/getMultiLevelExtname.md +4 -4
  124. package/docs/{functions → api/functions}/getPackageDir.md +1 -1
  125. package/docs/{functions → api/functions}/getRealFilepath.md +1 -1
  126. package/docs/{functions → api/functions}/getResponseErrorReadableStream.md +1 -1
  127. package/docs/{functions → api/functions}/getXDGConfigs.md +1 -1
  128. package/docs/{functions → api/functions}/hasDirectoryIn.md +1 -1
  129. package/docs/{functions → api/functions}/hash.md +1 -1
  130. package/docs/{functions → api/functions}/hashFile.md +1 -1
  131. package/docs/api/functions/hashObject.md +25 -0
  132. package/docs/{functions → api/functions}/hashStream.md +1 -1
  133. package/docs/api/functions/initShutdown.md +15 -0
  134. package/docs/{functions → api/functions}/isLangUsingSpaces.md +1 -1
  135. package/docs/{functions → api/functions}/isListItemString.md +1 -1
  136. package/docs/{functions → api/functions}/isModelNameMatched.md +1 -1
  137. package/docs/{functions → api/functions}/isPunctuationChar.md +1 -1
  138. package/docs/{functions → api/functions}/isQuoted.md +1 -1
  139. package/docs/{functions → api/functions}/isRegExp.md +1 -1
  140. package/docs/{functions → api/functions}/isSameString.md +1 -1
  141. package/docs/{functions → api/functions}/isSectionString.md +1 -1
  142. package/docs/{functions → api/functions}/isSentenceEnding.md +1 -1
  143. package/docs/{functions → api/functions}/isSepLineString.md +1 -1
  144. package/docs/{functions → api/functions}/isStrWrapped.md +1 -1
  145. package/docs/{functions → api/functions}/isSubdirectory.md +2 -2
  146. package/docs/{functions → api/functions}/isTitleString.md +1 -1
  147. package/docs/{functions → api/functions}/isValidFilename.md +1 -1
  148. package/docs/{functions → api/functions}/isValidFilepath.md +1 -1
  149. package/docs/{functions → api/functions}/isWebStream.md +1 -1
  150. package/docs/api/functions/joinSplitWords.md +46 -0
  151. package/docs/{functions → api/functions}/jsonFilterToWhere.md +1 -1
  152. package/docs/{functions → api/functions}/jsonToMarkdownStr.md +9 -1
  153. package/docs/{functions → api/functions}/loadAIConfig.md +1 -1
  154. package/docs/{functions → api/functions}/loadConfig.md +1 -1
  155. package/docs/{functions → api/functions}/loadConfigFile.md +1 -1
  156. package/docs/{functions → api/functions}/loadFileFromPaths.md +1 -1
  157. package/docs/{functions → api/functions}/loadTextFromPaths.md +1 -1
  158. package/docs/{functions → api/functions}/lrucache.md +1 -1
  159. package/docs/{functions → api/functions}/makeToolFuncCancelable.md +1 -1
  160. package/docs/{functions → api/functions}/matchUrlProtocol.md +1 -1
  161. package/docs/{functions → api/functions}/memoize.md +1 -1
  162. package/docs/api/functions/mergeArray.md +57 -0
  163. package/docs/{functions → api/functions}/messagesToText.md +1 -1
  164. package/docs/api/functions/normalizePath.md +21 -0
  165. package/docs/{functions → api/functions}/paramsSizeToScaleStr.md +1 -1
  166. package/docs/{functions → api/functions}/parseCommand.md +1 -1
  167. package/docs/{functions → api/functions}/parseDateFormat.md +1 -1
  168. package/docs/{functions → api/functions}/parseISO.md +1 -1
  169. package/docs/{functions → api/functions}/parseJsJson.md +1 -1
  170. package/docs/{functions → api/functions}/parseJsJsonSimpleSync.md +1 -1
  171. package/docs/{functions → api/functions}/parseObjectArgInfo.md +1 -1
  172. package/docs/{functions → api/functions}/parseObjectArgumentInfos.md +1 -1
  173. package/docs/{functions → api/functions}/parseObjectArguments.md +1 -1
  174. package/docs/{functions → api/functions}/parseObjectArgumentsAsArgInfos.md +1 -1
  175. package/docs/api/functions/parseYaml.md +45 -0
  176. package/docs/api/functions/pruneSubdirectories.md +35 -0
  177. package/docs/api/functions/pruneSubdirectoriesInPlace.md +38 -0
  178. package/docs/{functions → api/functions}/quoteStr.md +1 -1
  179. package/docs/{functions → api/functions}/readFilenamesRecursiveSync.md +7 -1
  180. package/docs/{functions → api/functions}/readTextFileChunks.md +1 -1
  181. package/docs/{functions → api/functions}/readTextFileChunksEx.md +1 -1
  182. package/docs/{functions → api/functions}/readableFromAsyncIterable.md +1 -1
  183. package/docs/{functions → api/functions}/registerCoreTools.md +1 -1
  184. package/docs/api/functions/registerYamlTag.md +37 -0
  185. package/docs/{functions → api/functions}/removeMarkdownBold.md +1 -1
  186. package/docs/{functions → api/functions}/removeMarkdownBoldAndItalic.md +1 -1
  187. package/docs/{functions → api/functions}/removeMarkdownItalic.md +1 -1
  188. package/docs/{functions → api/functions}/replaceWithPlaceholder.md +1 -1
  189. package/docs/{functions → api/functions}/restoreFromPlacehoders.md +1 -1
  190. package/docs/{functions → api/functions}/sanitizeFilename.md +4 -4
  191. package/docs/{functions → api/functions}/sanitizeFilepath.md +4 -4
  192. package/docs/{functions → api/functions}/saveConfigFile.md +1 -1
  193. package/docs/{functions → api/functions}/scaleStrToParamsSize.md +1 -1
  194. package/docs/{functions → api/functions}/shutdown.md +1 -1
  195. package/docs/{functions → api/functions}/simplifyObjectArguments.md +1 -1
  196. package/docs/api/functions/sleep.md +36 -0
  197. package/docs/{functions → api/functions}/sortedValues.md +1 -1
  198. package/docs/{functions → api/functions}/splitChunks.md +1 -1
  199. package/docs/{functions → api/functions}/splitParagraph.md +1 -1
  200. package/docs/{functions → api/functions}/splitSentence.md +1 -1
  201. package/docs/api/functions/splitWords.md +42 -0
  202. package/docs/api/functions/stringifyYaml.md +45 -0
  203. package/docs/{functions → api/functions}/stripConsoleColor.md +1 -1
  204. package/docs/{functions → api/functions}/textToDate.md +1 -1
  205. package/docs/{functions → api/functions}/throwError.md +3 -3
  206. package/docs/{functions → api/functions}/toDate.md +1 -1
  207. package/docs/{functions → api/functions}/toDateTime.md +1 -1
  208. package/docs/{functions → api/functions}/toRegExp.md +1 -1
  209. package/docs/{functions → api/functions}/trimStartOfStreamHelper.md +1 -1
  210. package/docs/{functions → api/functions}/truncTo.md +1 -1
  211. package/docs/{functions → api/functions}/truncateByToken.md +1 -1
  212. package/docs/{functions → api/functions}/truncateToTokenLimit.md +1 -1
  213. package/docs/{functions → api/functions}/truncateToTokenLimitEx.md +1 -1
  214. package/docs/{functions → api/functions}/uuid.md +1 -1
  215. package/docs/{functions → api/functions}/uuidParse.md +1 -1
  216. package/docs/{functions → api/functions}/uuidStringify.md +1 -1
  217. package/docs/{functions → api/functions}/uuidValidate.md +1 -1
  218. package/docs/{functions → api/functions}/uuidVersion.md +1 -1
  219. package/docs/{functions → api/functions}/uuidv1.md +9 -5
  220. package/docs/{functions → api/functions}/uuidv4.md +9 -5
  221. package/docs/{functions → api/functions}/uuidv5.md +9 -5
  222. package/docs/api/functions/wait.md +45 -0
  223. package/docs/{functions → api/functions}/wrapEventEmitter.md +1 -1
  224. package/docs/{functions → api/functions}/xxhash.md +1 -1
  225. package/docs/{functions → api/functions}/xxhash32.md +1 -1
  226. package/docs/{functions → api/functions}/xxhash64.md +1 -1
  227. package/docs/{functions → api/functions}/xxhashAsStr.md +1 -1
  228. package/docs/api/functions/yieldExec.md +27 -0
  229. package/docs/{globals.md → api/globals.md} +44 -24
  230. package/docs/api/interfaces/AIChatAssistantMessageParam.md +129 -0
  231. package/docs/api/interfaces/AIChatContentPartImage.md +29 -0
  232. package/docs/api/interfaces/AIChatContentPartText.md +25 -0
  233. package/docs/api/interfaces/AIChatMessageParamBase.md +68 -0
  234. package/docs/api/interfaces/AIChatMessageToolCall.md +41 -0
  235. package/docs/{interfaces → api/interfaces}/AIChatSystemMessageParam.md +9 -9
  236. package/docs/api/interfaces/AIChatToolChoiceFuncObject.md +37 -0
  237. package/docs/api/interfaces/AIChatToolChoiceObject.md +25 -0
  238. package/docs/api/interfaces/AIChatToolFunc.md +41 -0
  239. package/docs/api/interfaces/AIChatToolFuncParam.md +37 -0
  240. package/docs/api/interfaces/AIChatToolMessageParam.md +113 -0
  241. package/docs/api/interfaces/AIChatToolParam.md +25 -0
  242. package/docs/api/interfaces/AIChatToolTypeObject.md +17 -0
  243. package/docs/api/interfaces/AIChatUserMessageParam.md +137 -0
  244. package/docs/api/interfaces/AIChoiceConfig.md +65 -0
  245. package/docs/api/interfaces/AIResult.md +65 -0
  246. package/docs/{interfaces → api/interfaces}/AIStreamParser.md +2 -2
  247. package/docs/api/interfaces/AIStreamParserOptions.md +21 -0
  248. package/docs/api/interfaces/BaseFunc.md +299 -0
  249. package/docs/api/interfaces/BaseFuncItem.md +221 -0
  250. package/docs/api/interfaces/BinarySemaphoreAcquireOptions.md +25 -0
  251. package/docs/api/interfaces/BinarySemaphoreOptions.md +57 -0
  252. package/docs/api/interfaces/BinarySemaphoreReleaseOptions.md +25 -0
  253. package/docs/api/interfaces/BinarySemaphoreReleaserFunc.md +37 -0
  254. package/docs/api/interfaces/CancelableAbilityOptions.md +113 -0
  255. package/docs/api/interfaces/ClientFuncItem.md +326 -0
  256. package/docs/api/interfaces/EventClientFuncParams.md +51 -0
  257. package/docs/api/interfaces/EventServerFuncParams.md +73 -0
  258. package/docs/api/interfaces/FewShotPromptTemplateOptions.md +159 -0
  259. package/docs/api/interfaces/FuncItem.md +281 -0
  260. package/docs/api/interfaces/FuncParam.md +51 -0
  261. package/docs/api/interfaces/FuncParams.md +28 -0
  262. package/docs/api/interfaces/Funcs.md +15 -0
  263. package/docs/api/interfaces/HashAlgoParams.md +33 -0
  264. package/docs/api/interfaces/IClientToolTransport.md +155 -0
  265. package/docs/api/interfaces/IFileMetaInfo.md +65 -0
  266. package/docs/api/interfaces/IPubSubClientTransport.md +70 -0
  267. package/docs/api/interfaces/IPubSubServerTransport.md +241 -0
  268. package/docs/{interfaces → api/interfaces}/IReadTextFileChunksOptions.md +12 -12
  269. package/docs/api/interfaces/IServerToolTransport.md +159 -0
  270. package/docs/api/interfaces/IToolTransport.md +73 -0
  271. package/docs/api/interfaces/ITruncateToTokenLimitOptions.md +99 -0
  272. package/docs/api/interfaces/JsonFilter.md +13 -0
  273. package/docs/api/interfaces/ParseObjectArgumentOptions.md +89 -0
  274. package/docs/api/interfaces/ProbabilityItem.md +41 -0
  275. package/docs/api/interfaces/PromptExampleSelectorOptions.md +34 -0
  276. package/docs/api/interfaces/PromptTemplateOptions.md +73 -0
  277. package/docs/api/interfaces/PubSubClient.md +27 -0
  278. package/docs/api/interfaces/PubSubClientStream.md +196 -0
  279. package/docs/api/interfaces/PubSubServerSession.md +103 -0
  280. package/docs/api/interfaces/RemoteFuncItem.md +316 -0
  281. package/docs/api/interfaces/ReplacePlacehoderOptions.md +41 -0
  282. package/docs/api/interfaces/ResClientFuncParams.md +37 -0
  283. package/docs/api/interfaces/ResServerFuncParams.md +73 -0
  284. package/docs/api/interfaces/SanitizeFilenameOptions.md +25 -0
  285. package/docs/api/interfaces/SectionStringOptions.md +25 -0
  286. package/docs/api/interfaces/SemaphoreOptions.md +89 -0
  287. package/docs/api/interfaces/SemaphoreTaskItem.md +73 -0
  288. package/docs/api/interfaces/ServerFuncItem.md +339 -0
  289. package/docs/api/interfaces/ServerFuncParams.md +41 -0
  290. package/docs/api/interfaces/SplitSentenceOptions.md +41 -0
  291. package/docs/{interfaces → api/interfaces}/StreamCallbacksAndOptions.md +5 -5
  292. package/docs/{interfaces → api/interfaces}/TaskAbortControllers.md +1 -1
  293. package/docs/{interfaces → api/interfaces}/TaskPromise.md +6 -6
  294. package/docs/api/interfaces/ToolFuncPackage.md +57 -0
  295. package/docs/{namespaces → api/namespaces}/EventStates/variables/ABORT.md +1 -1
  296. package/docs/{namespaces → api/namespaces}/EventStates/variables/CONTINUE.md +1 -1
  297. package/docs/{namespaces → api/namespaces}/EventStates/variables/DONE.md +1 -1
  298. package/docs/{namespaces → api/namespaces}/EventStates/variables/STOPPED.md +1 -1
  299. package/docs/{namespaces → api/namespaces}/uuidv5/variables/DNS.md +1 -1
  300. package/docs/{namespaces → api/namespaces}/uuidv5/variables/URL.md +1 -1
  301. package/docs/{type-aliases → api/type-aliases}/AIChatContentPart.md +1 -1
  302. package/docs/{type-aliases → api/type-aliases}/AIChatMessageParam.md +1 -1
  303. package/docs/{type-aliases → api/type-aliases}/AIChatRole.md +1 -1
  304. package/docs/{type-aliases → api/type-aliases}/AIChatToolChoiceParam.md +1 -1
  305. package/docs/{type-aliases → api/type-aliases}/AIMessageType.md +1 -1
  306. package/docs/api/type-aliases/AIModelNameRule.md +14 -0
  307. package/docs/api/type-aliases/AIModelNameRuleFn.md +28 -0
  308. package/docs/api/type-aliases/AIModelNameRules.md +13 -0
  309. package/docs/{type-aliases → api/type-aliases}/AITextGenerationFinishReason.md +1 -1
  310. package/docs/api/type-aliases/ActionName.md +13 -0
  311. package/docs/api/type-aliases/ArrayMergeWay.md +11 -0
  312. package/docs/api/type-aliases/AsyncTaskId.md +11 -0
  313. package/docs/{type-aliases → api/type-aliases}/BeforeShutdownListener.md +1 -1
  314. package/docs/{type-aliases → api/type-aliases}/EventErrorListenerFn.md +1 -1
  315. package/docs/{type-aliases → api/type-aliases}/EventListenerFn.md +1 -1
  316. package/docs/api/type-aliases/FuncParamType.md +13 -0
  317. package/docs/{type-aliases → api/type-aliases}/PromptExamples.md +1 -1
  318. package/docs/api/type-aliases/PubSubClientId.md +14 -0
  319. package/docs/api/type-aliases/PubSubCtx.md +37 -0
  320. package/docs/api/type-aliases/RpcMethodHandler.md +34 -0
  321. package/docs/{type-aliases → api/type-aliases}/SemaphoreIsReadyFuncType.md +1 -1
  322. package/docs/api/type-aliases/TFunc.md +33 -0
  323. package/docs/{variables → api/variables}/AIChatRoles.md +1 -1
  324. package/docs/{variables → api/variables}/AIMessageTypes.md +1 -1
  325. package/docs/{variables → api/variables}/AITextGenerationFinishReasons.md +1 -1
  326. package/docs/{variables → api/variables}/AbortErrorCode.md +1 -1
  327. package/docs/api/variables/ActionNames.md +13 -0
  328. package/docs/{variables → api/variables}/AlreadyExistsErrorCode.md +1 -1
  329. package/docs/api/variables/ArrayMergeWay.md +25 -0
  330. package/docs/api/variables/ArrayMergeWaySymbol.md +11 -0
  331. package/docs/api/variables/ClientToolFuncSchema.md +83 -0
  332. package/docs/{variables → api/variables}/DEFAULT_CONFIG_NAME.md +1 -1
  333. package/docs/{variables → api/variables}/DefaultAsyncSemaphoreCapacity.md +1 -1
  334. package/docs/api/variables/EventBusName.md +11 -0
  335. package/docs/api/variables/EventName.md +11 -0
  336. package/docs/{variables → api/variables}/FilenameReservedRegex.md +1 -1
  337. package/docs/api/variables/FuncMetaSymbol.md +15 -0
  338. package/docs/{variables → api/variables}/InternalErrorCode.md +1 -1
  339. package/docs/{variables → api/variables}/LLM_TOKENIZER_NAMES.md +1 -1
  340. package/docs/{variables → api/variables}/LLM_TOKENIZER_NAMES_MAP.md +1 -1
  341. package/docs/{variables → api/variables}/NotFoundErrorCode.md +1 -1
  342. package/docs/{variables → api/variables}/NotImplementedErrorCode.md +1 -1
  343. package/docs/api/variables/PASSING_SCORE.md +13 -0
  344. package/docs/api/variables/RStreamErrCode.md +11 -0
  345. package/docs/api/variables/RemoteToolFuncSchema.md +84 -0
  346. package/docs/api/variables/ResponseRStreamErrCode.md +11 -0
  347. package/docs/{variables → api/variables}/SHUTDOWN_SIGNALS.md +1 -1
  348. package/docs/{variables → api/variables}/SSEChannelAlreadyClosedErrCode.md +1 -1
  349. package/docs/api/variables/SecondaryCache.md +11 -0
  350. package/docs/api/variables/ServerToolFuncSchema.md +83 -0
  351. package/docs/api/variables/StrangeHumanName.md +11 -0
  352. package/docs/api/variables/ToolAsyncCancelableBit.md +11 -0
  353. package/docs/api/variables/ToolAsyncMultiTaskBit.md +11 -0
  354. package/docs/api/variables/ToolAsyncPriorityBit.md +11 -0
  355. package/docs/{variables → api/variables}/ToolFuncSchema.md +14 -1
  356. package/docs/{variables → api/variables}/WindowsReservedNameRegex.md +1 -1
  357. package/docs/api/variables/base32768.md +11 -0
  358. package/docs/api/variables/defaultTemplateFormat.md +11 -0
  359. package/docs/api/variables/event.md +11 -0
  360. package/docs/api/variables/eventClient.md +11 -0
  361. package/docs/api/variables/eventServer.md +11 -0
  362. package/docs/api/variables/lrucache.md +11 -0
  363. package/docs/{variables → api/variables}/mimeType.md +1 -1
  364. package/docs/{variables → api/variables}/uuidNIL.md +1 -1
  365. package/docs/pubsub.md +326 -0
  366. package/docs/server_client_tools.md +88 -0
  367. package/docs/toolFunc.md +183 -0
  368. package/docs/transport.md +137 -0
  369. package/package.json +38 -38
  370. package/dist/chunk-YVFGQB4L.mjs +0 -1
  371. package/dist/index-BkwhCK1q.d.mts +0 -899
  372. package/dist/index-BkwhCK1q.d.ts +0 -899
  373. package/docs/README.md +0 -250
  374. package/docs/classes/AlreadyExistsError.md +0 -346
  375. package/docs/classes/BaseError.md +0 -359
  376. package/docs/classes/ConfigFile.md +0 -353
  377. package/docs/classes/HFEnvironment.md +0 -184
  378. package/docs/classes/HFInterpreter.md +0 -77
  379. package/docs/classes/HFTemplate.md +0 -67
  380. package/docs/classes/HfPromptTemplate.md +0 -1158
  381. package/docs/classes/NotFoundError.md +0 -346
  382. package/docs/classes/NotImplementationError.md +0 -346
  383. package/docs/classes/ReadableStreamError.md +0 -366
  384. package/docs/classes/ResClientTools.md +0 -2451
  385. package/docs/classes/ResServerTools.md +0 -2427
  386. package/docs/classes/SSEChannel.md +0 -270
  387. package/docs/classes/ToolFunc.md +0 -2201
  388. package/docs/classes/YamlTypeBaseObject.md +0 -31
  389. package/docs/enumerations/AsyncFeatureBits.md +0 -33
  390. package/docs/enumerations/AsyncFeatures.md +0 -33
  391. package/docs/enumerations/ErrorCode.md +0 -177
  392. package/docs/enumerations/HashAlgorithm.md +0 -97
  393. package/docs/functions/canonicalize.md +0 -21
  394. package/docs/functions/expandConfig.md +0 -25
  395. package/docs/functions/filenameReservedRegex.md +0 -20
  396. package/docs/functions/hfParse.md +0 -24
  397. package/docs/functions/hfTokenize.md +0 -27
  398. package/docs/functions/initShutdown.md +0 -15
  399. package/docs/functions/interpolateEnv.md +0 -29
  400. package/docs/functions/interpolateFString.md +0 -29
  401. package/docs/functions/interpolateGolangTemplate.md +0 -35
  402. package/docs/functions/parseFString.md +0 -26
  403. package/docs/functions/parseYaml.md +0 -25
  404. package/docs/functions/reControlCharsRegex.md +0 -19
  405. package/docs/functions/registerYamlTag.md +0 -21
  406. package/docs/functions/stringifyYaml.md +0 -25
  407. package/docs/functions/wait.md +0 -21
  408. package/docs/interfaces/AIChatAssistantMessageParam.md +0 -129
  409. package/docs/interfaces/AIChatContentPartImage.md +0 -29
  410. package/docs/interfaces/AIChatContentPartText.md +0 -25
  411. package/docs/interfaces/AIChatMessageParamBase.md +0 -68
  412. package/docs/interfaces/AIChatMessageToolCall.md +0 -41
  413. package/docs/interfaces/AIChatToolChoiceFuncObject.md +0 -37
  414. package/docs/interfaces/AIChatToolChoiceObject.md +0 -25
  415. package/docs/interfaces/AIChatToolFunc.md +0 -41
  416. package/docs/interfaces/AIChatToolFuncParam.md +0 -37
  417. package/docs/interfaces/AIChatToolMessageParam.md +0 -113
  418. package/docs/interfaces/AIChatToolParam.md +0 -25
  419. package/docs/interfaces/AIChatToolTypeObject.md +0 -17
  420. package/docs/interfaces/AIChatUserMessageParam.md +0 -137
  421. package/docs/interfaces/AIChoiceConfig.md +0 -65
  422. package/docs/interfaces/AIResult.md +0 -65
  423. package/docs/interfaces/AIStreamParserOptions.md +0 -21
  424. package/docs/interfaces/BaseFunc.md +0 -157
  425. package/docs/interfaces/BaseFuncItem.md +0 -101
  426. package/docs/interfaces/BinarySemaphoreAcquireOptions.md +0 -25
  427. package/docs/interfaces/BinarySemaphoreOptions.md +0 -57
  428. package/docs/interfaces/BinarySemaphoreReleaseOptions.md +0 -25
  429. package/docs/interfaces/BinarySemaphoreReleaserFunc.md +0 -37
  430. package/docs/interfaces/CancelableAbilityOptions.md +0 -113
  431. package/docs/interfaces/ClientFuncItem.md +0 -175
  432. package/docs/interfaces/DotenvExpandOptions.md +0 -43
  433. package/docs/interfaces/DotenvExpandOutput.md +0 -25
  434. package/docs/interfaces/DotenvParseInput.md +0 -13
  435. package/docs/interfaces/DotenvParseOutput.md +0 -13
  436. package/docs/interfaces/DotenvPopulateInput.md +0 -13
  437. package/docs/interfaces/EventClientFuncParams.md +0 -51
  438. package/docs/interfaces/EventServerFuncParams.md +0 -67
  439. package/docs/interfaces/FewShotPromptTemplateOptions.md +0 -147
  440. package/docs/interfaces/FuncItem.md +0 -143
  441. package/docs/interfaces/FuncParam.md +0 -61
  442. package/docs/interfaces/FuncParams.md +0 -13
  443. package/docs/interfaces/Funcs.md +0 -13
  444. package/docs/interfaces/HashAlgoParams.md +0 -33
  445. package/docs/interfaces/IFileMetaInfo.md +0 -65
  446. package/docs/interfaces/ITruncateToTokenLimitOptions.md +0 -99
  447. package/docs/interfaces/JsonFilter.md +0 -13
  448. package/docs/interfaces/ParseObjectArgumentOptions.md +0 -89
  449. package/docs/interfaces/PromptExampleSelectorOptions.md +0 -34
  450. package/docs/interfaces/PromptTemplateOptions.md +0 -65
  451. package/docs/interfaces/RemoteFuncItem.md +0 -164
  452. package/docs/interfaces/ReplacePlacehoderOptions.md +0 -41
  453. package/docs/interfaces/ResClientFuncParams.md +0 -37
  454. package/docs/interfaces/ResServerFuncParams.md +0 -69
  455. package/docs/interfaces/SanitizeFilenameOptions.md +0 -25
  456. package/docs/interfaces/SectionStringOptions.md +0 -25
  457. package/docs/interfaces/SemaphoreOptions.md +0 -89
  458. package/docs/interfaces/SemaphoreTaskItem.md +0 -73
  459. package/docs/interfaces/ServerFuncItem.md +0 -183
  460. package/docs/interfaces/ServerFuncParams.md +0 -35
  461. package/docs/interfaces/SplitSentenceOptions.md +0 -41
  462. package/docs/interfaces/ToolFuncPackage.md +0 -47
  463. package/docs/type-aliases/AIModelNameRule.md +0 -11
  464. package/docs/type-aliases/AIModelNameRuleFn.md +0 -21
  465. package/docs/type-aliases/AIModelNameRules.md +0 -11
  466. package/docs/type-aliases/ActionName.md +0 -11
  467. package/docs/type-aliases/AsyncTaskId.md +0 -11
  468. package/docs/type-aliases/FStringPromptTemplateNode.md +0 -14
  469. package/docs/type-aliases/FuncParamType.md +0 -11
  470. package/docs/type-aliases/PromptTemplateType.md +0 -11
  471. package/docs/type-aliases/PromptType.md +0 -11
  472. package/docs/type-aliases/TFunc.md +0 -25
  473. package/docs/variables/ActionNames.md +0 -11
  474. package/docs/variables/ClientToolFuncSchema.md +0 -101
  475. package/docs/variables/EventBusName.md +0 -11
  476. package/docs/variables/EventName.md +0 -11
  477. package/docs/variables/HFBuiltins.md +0 -122
  478. package/docs/variables/PASSING_SCORE.md +0 -11
  479. package/docs/variables/PromptTemplateTypes.md +0 -11
  480. package/docs/variables/PromptTypes.md +0 -14
  481. package/docs/variables/RStreamErrCode.md +0 -11
  482. package/docs/variables/RemoteToolFuncSchema.md +0 -101
  483. package/docs/variables/ResponseRStreamErrCode.md +0 -11
  484. package/docs/variables/SecondaryCache.md +0 -11
  485. package/docs/variables/ServerToolFuncSchema.md +0 -101
  486. package/docs/variables/ToolAsyncCancelableBit.md +0 -11
  487. package/docs/variables/ToolAsyncMultiTaskBit.md +0 -11
  488. package/docs/variables/ToolAsyncPriorityBit.md +0 -11
  489. package/docs/variables/base32768.md +0 -11
  490. package/docs/variables/defaultTemplateFormat.md +0 -11
  491. package/docs/variables/event.md +0 -11
  492. package/docs/variables/eventClient.md +0 -11
  493. package/docs/variables/eventServer.md +0 -11
  494. package/docs/variables/lrucache.md +0 -11
  495. /package/docs/{_media → api/_media}/LICENSE-MIT +0 -0
  496. /package/docs/{namespaces → api/namespaces}/EventStates/README.md +0 -0
  497. /package/docs/{namespaces → api/namespaces}/uuidv5/README.md +0 -0
@@ -6,7 +6,34 @@
6
6
 
7
7
  # Class: PromptTemplate
8
8
 
9
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:20](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L20)
9
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:50
10
+
11
+ The `StringTemplate` class is a versatile template engine that supports dynamic template creation,
12
+ formatting, and partial data processing. It extends the `BaseFactory` class and provides methods
13
+ for handling template strings, validating input variables, and managing template configurations.
14
+
15
+ ## Example
16
+
17
+ ```typescript
18
+ import { StringTemplate } from './template';
19
+
20
+ // Register a custom template class
21
+ class CustomTemplate extends StringTemplate {
22
+ _initialize(options?: StringTemplateOptions): void {}
23
+ _format(data: Record<string, any>): string {
24
+ return `Formatted: ${data.text}`;
25
+ }
26
+ }
27
+ StringTemplate.register(CustomTemplate);
28
+
29
+ // Create a new instance with a custom template format
30
+ const template = new StringTemplate("{{text}}", { templateFormat: "Custom" });
31
+ console.log(template instanceof CustomTemplate); // Output: true
32
+
33
+ // Format the template with data
34
+ const result = await template.format({ text: "Hello World" });
35
+ console.log(result); // Output: "Formatted: Hello World"
36
+ ```
10
37
 
11
38
  ## Extends
12
39
 
@@ -14,10 +41,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:20](https://gi
14
41
 
15
42
  ## Extended by
16
43
 
17
- - [`HfPromptTemplate`](HfPromptTemplate.md)
44
+ - [`EnvPromptTemplate`](EnvPromptTemplate.md)
18
45
  - [`FStringPromptTemplate`](FStringPromptTemplate.md)
19
46
  - [`GolangPromptTemplate`](GolangPromptTemplate.md)
20
- - [`EnvPromptTemplate`](EnvPromptTemplate.md)
21
47
  - [`FewShotPromptTemplate`](FewShotPromptTemplate.md)
22
48
 
23
49
  ## Constructors
@@ -26,22 +52,38 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:20](https://gi
26
52
 
27
53
  > **new PromptTemplate**(`template`?, `options`?): [`PromptTemplate`](PromptTemplate.md)
28
54
 
29
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:69](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L69)
55
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:187
56
+
57
+ Initializes a new instance of the `StringTemplate` class.
30
58
 
31
59
  #### Parameters
32
60
 
33
61
  ##### template?
34
62
 
63
+ Either a template string or an options object.
64
+
35
65
  `string` | [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
36
66
 
37
67
  ##### options?
38
68
 
39
69
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
40
70
 
71
+ Additional configuration options for the template.
72
+
41
73
  #### Returns
42
74
 
43
75
  [`PromptTemplate`](PromptTemplate.md)
44
76
 
77
+ #### Example
78
+
79
+ ```typescript
80
+ const template = new StringTemplate("{{text}}", {
81
+ templateFormat: "Test",
82
+ inputVariables: ['text']
83
+ });
84
+ console.log(template instanceof TestStringTemplate); // Output: true
85
+ ```
86
+
45
87
  #### Overrides
46
88
 
47
89
  `BaseFactory.constructor`
@@ -52,7 +94,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:69](https://gi
52
94
 
53
95
  > **compiledTemplate**: `any`
54
96
 
55
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:21](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L21)
97
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:54
98
+
99
+ Declares the compiled template instance.
56
100
 
57
101
  ***
58
102
 
@@ -60,7 +104,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:21](https://gi
60
104
 
61
105
  > **data**: `undefined` \| `Record`\<`string`, `any`\>
62
106
 
63
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:24](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L24)
107
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:66
108
+
109
+ Declares the data object used for template interpolation.
64
110
 
65
111
  ***
66
112
 
@@ -68,7 +114,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:24](https://gi
68
114
 
69
115
  > **inputVariables**: `undefined` \| `string`[]
70
116
 
71
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:25](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L25)
117
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:70
118
+
119
+ Declares the list of input variables expected by the template.
72
120
 
73
121
  ***
74
122
 
@@ -76,7 +124,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:25](https://gi
76
124
 
77
125
  > **template**: `string`
78
126
 
79
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:22](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L22)
127
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:58
128
+
129
+ Declares the raw template string.
80
130
 
81
131
  ***
82
132
 
@@ -84,7 +134,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:22](https://gi
84
134
 
85
135
  > **templateFormat**: `undefined` \| `string`
86
136
 
87
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:23](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L23)
137
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:62
138
+
139
+ Declares the format of the template (e.g., 'default').
88
140
 
89
141
  ***
90
142
 
@@ -92,7 +144,7 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:23](https://gi
92
144
 
93
145
  > `abstract` `static` **\_aliases**: \[`string`\]
94
146
 
95
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:59
147
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:59
96
148
 
97
149
  **`Internal`**
98
150
 
@@ -109,7 +161,7 @@ the key is alias name, the value is the registered name
109
161
 
110
162
  > `static` **\_baseNameOnly**: `number`
111
163
 
112
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:82
164
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:82
113
165
 
114
166
  **`Internal`**
115
167
 
@@ -150,7 +202,7 @@ _baseNameOnly
150
202
 
151
203
  > `abstract` `static` **\_children**: `object`
152
204
 
153
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:49
205
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:49
154
206
 
155
207
  **`Internal`**
156
208
 
@@ -174,7 +226,7 @@ _children
174
226
 
175
227
  > `abstract` `static` **\_Factory**: *typeof* `BaseFactory`
176
228
 
177
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:41
229
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:41
178
230
 
179
231
  **`Internal`**
180
232
 
@@ -196,7 +248,7 @@ _Factory
196
248
 
197
249
  > **get** `static` **aliases**(): `string`[]
198
250
 
199
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:200
251
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:200
200
252
 
201
253
  the aliases of itself
202
254
 
@@ -208,7 +260,7 @@ the aliases of itself
208
260
 
209
261
  > **set** `static` **aliases**(`value`): `void`
210
262
 
211
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:196
263
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:196
212
264
 
213
265
  ##### Parameters
214
266
 
@@ -232,7 +284,7 @@ Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factor
232
284
 
233
285
  > **get** `static` **Factory**(): *typeof* `BaseFactory`
234
286
 
235
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:63
287
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:63
236
288
 
237
289
  The Root Factory class
238
290
 
@@ -250,7 +302,9 @@ The Root Factory class
250
302
 
251
303
  > **\_format**(`data`): `string` \| `Promise`\<`string`\>
252
304
 
253
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:105](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L105)
305
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:203
306
+
307
+ Placeholder method for formatting the template. Must be implemented by subclasses.
254
308
 
255
309
  #### Parameters
256
310
 
@@ -258,17 +312,23 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:105](https://g
258
312
 
259
313
  `Record`\<`string`, `any`\>
260
314
 
315
+ The data object used for interpolation.
316
+
261
317
  #### Returns
262
318
 
263
319
  `string` \| `Promise`\<`string`\>
264
320
 
321
+ A formatted string or a promise resolving to the formatted string.
322
+
265
323
  ***
266
324
 
267
325
  ### \_initialize()
268
326
 
269
327
  > **\_initialize**(`options`?): `void`
270
328
 
271
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:92](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L92)
329
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:192
330
+
331
+ Placeholder method for initializing the template. Must be implemented by subclasses.
272
332
 
273
333
  #### Parameters
274
334
 
@@ -276,6 +336,8 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:92](https://gi
276
336
 
277
337
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
278
338
 
339
+ Configuration options for initialization.
340
+
279
341
  #### Returns
280
342
 
281
343
  `void`
@@ -286,9 +348,9 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:92](https://gi
286
348
 
287
349
  > **filterData**(`data`): `Record`\<`string`, `any`\>
288
350
 
289
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:62](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L62)
351
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:172
290
352
 
291
- Validate/filter the data in inputVariables
353
+ Filters the input data to include only the specified input variables.
292
354
 
293
355
  #### Parameters
294
356
 
@@ -296,17 +358,33 @@ Validate/filter the data in inputVariables
296
358
 
297
359
  `Record`\<`string`, `any`\>
298
360
 
361
+ The data object to validate and filter.
362
+
299
363
  #### Returns
300
364
 
301
365
  `Record`\<`string`, `any`\>
302
366
 
367
+ The filtered data object containing only the allowed keys.
368
+
369
+ #### Example
370
+
371
+ ```typescript
372
+ const template = new StringTemplate({
373
+ inputVariables: ['name']
374
+ });
375
+ const filteredData = template.filterData({ name: "Alice", age: 30 });
376
+ console.log(filteredData); // Output: { name: "Alice" }
377
+ ```
378
+
303
379
  ***
304
380
 
305
381
  ### format()
306
382
 
307
383
  > **format**(`data`?): `Promise`\<`string`\>
308
384
 
309
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:109](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L109)
385
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:219
386
+
387
+ Formats the template using the provided data, supporting asynchronous processing.
310
388
 
311
389
  #### Parameters
312
390
 
@@ -314,21 +392,34 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:109](https://g
314
392
 
315
393
  `Record`\<`string`, `any`\>
316
394
 
395
+ The data object used for interpolation.
396
+
317
397
  #### Returns
318
398
 
319
399
  `Promise`\<`string`\>
320
400
 
401
+ A promise that resolves to the formatted template string.
402
+
403
+ #### Example
404
+
405
+ ```typescript
406
+ const template = new StringTemplate("{{text}}", {
407
+ templateFormat: "Test",
408
+ inputVariables: ['text']
409
+ });
410
+ const result = await template.format({ text: "Hello" });
411
+ console.log(result); // Output: "Hello"
412
+ ```
413
+
321
414
  ***
322
415
 
323
416
  ### initialize()
324
417
 
325
- > `abstract` **initialize**(`options`?): `void`
326
-
327
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:96](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L96)
418
+ > **initialize**(`options`?): `void`
328
419
 
329
- **`Internal`**
420
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:197
330
421
 
331
- initialize instance method
422
+ Initializes the template instance with the provided options.
332
423
 
333
424
  #### Parameters
334
425
 
@@ -336,6 +427,8 @@ initialize instance method
336
427
 
337
428
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
338
429
 
430
+ Configuration options for initialization.
431
+
339
432
  #### Returns
340
433
 
341
434
  `void`
@@ -350,9 +443,10 @@ initialize instance method
350
443
 
351
444
  > **partial**(`data`): [`PromptTemplate`](PromptTemplate.md)
352
445
 
353
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:139](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L139)
446
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:247
354
447
 
355
- it can make sense to "partial" a prompt template - eg pass in a subset of the required values, as to create a new prompt template which expects only the remaining subset of values.
448
+ Creates a new `StringTemplate` instance with partially filled data.
449
+ This is useful for pre-filling some variables while leaving others to be filled later.
356
450
 
357
451
  #### Parameters
358
452
 
@@ -360,39 +454,79 @@ it can make sense to "partial" a prompt template - eg pass in a subset of the re
360
454
 
361
455
  `Record`\<`string`, `any`\>
362
456
 
363
- the partial data
457
+ The partial data to pre-fill in the new template.
364
458
 
365
459
  #### Returns
366
460
 
367
461
  [`PromptTemplate`](PromptTemplate.md)
368
462
 
369
- the new partial PromptTemplate instance
463
+ A new `StringTemplate` instance with the partial data applied.
464
+
465
+ #### Example
466
+
467
+ ```typescript
468
+ const template = new StringTemplate("{{role}}:{{text}}", {
469
+ templateFormat: "Test",
470
+ inputVariables: ['role', 'text']
471
+ });
472
+ const partialTemplate = template.partial({ role: "user" });
473
+ console.log(partialTemplate.data); // Output: { role: "user" }
474
+ const result = await partialTemplate.format({ text: "Hello" });
475
+ console.log(result); // Output: { role: "user", text: "Hello" }
476
+
477
+ // Example with a function
478
+ function getDate() {
479
+ return new Date();
480
+ }
481
+ const dateTemplate = template.partial({ date: getDate });
482
+ console.log(dateTemplate.data); // Output: { date: getDate }
483
+ const dateResult = await dateTemplate.format({ role: "user" });
484
+ console.log(dateResult.date instanceof Date); // Output: true
485
+ ```
370
486
 
371
487
  ***
372
488
 
373
489
  ### toJSON()
374
490
 
375
- > **toJSON**(`options`): [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
491
+ > **toJSON**(`options`?): [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
492
+
493
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:264
376
494
 
377
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:147](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L147)
495
+ Serializes the `StringTemplate` instance into a JSON-compatible object.
378
496
 
379
497
  #### Parameters
380
498
 
381
- ##### options
499
+ ##### options?
500
+
501
+ [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
382
502
 
383
- [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md) = `...`
503
+ Optional configuration for serialization.
384
504
 
385
505
  #### Returns
386
506
 
387
507
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
388
508
 
509
+ A JSON-compatible object representing the template's state.
510
+
511
+ #### Example
512
+
513
+ ```typescript
514
+ const template = new StringTemplate("{{text}}", {
515
+ templateFormat: "Test",
516
+ inputVariables: ['text']
517
+ });
518
+ const serialized = template.toJSON();
519
+ console.log(serialized);
520
+ // Output: { template: "{{text}}", templateFormat: "Test", inputVariables: ['text'] }
521
+ ```
522
+
389
523
  ***
390
524
 
391
525
  ### \_findRootFactory()
392
526
 
393
527
  > `static` **\_findRootFactory**(`aClass`): `undefined` \| *typeof* `BaseFactory`
394
528
 
395
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:99
529
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:99
396
530
 
397
531
  **`Internal`**
398
532
 
@@ -420,7 +554,7 @@ the abstract root factory class
420
554
 
421
555
  > `static` **\_get**(`name`): `any`
422
556
 
423
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:234
557
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:234
424
558
 
425
559
  #### Parameters
426
560
 
@@ -442,7 +576,7 @@ Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factor
442
576
 
443
577
  > `static` **\_register**(`aClass`, `aOptions`?): `boolean`
444
578
 
445
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:145
579
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:145
446
580
 
447
581
  **`Internal`**
448
582
 
@@ -478,7 +612,7 @@ return true if successful.
478
612
 
479
613
  > `static` **cleanAliases**(`aName`): `void`
480
614
 
481
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:162
615
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:162
482
616
 
483
617
  remove all aliases of the registered item or itself
484
618
 
@@ -504,7 +638,7 @@ the registered item or name
504
638
 
505
639
  > `static` **createObject**(`aName`, `aOptions`): `undefined` \| `BaseFactory`
506
640
 
507
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:241
641
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:241
508
642
 
509
643
  Create a new object instance of Factory
510
644
 
@@ -532,7 +666,7 @@ Create a new object instance of Factory
532
666
 
533
667
  > `abstract` `static` **findRootFactory**(): `undefined` \| *typeof* `BaseFactory`
534
668
 
535
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:92
669
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:92
536
670
 
537
671
  **`Internal`**
538
672
 
@@ -557,7 +691,7 @@ the root factory class
557
691
 
558
692
  > `static` **forEach**(`cb`): `any`
559
693
 
560
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:227
694
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:227
561
695
 
562
696
  executes a provided callback function once for each registered element.
563
697
 
@@ -583,7 +717,9 @@ the forEach callback function
583
717
 
584
718
  > `static` **format**(`options`): `Promise`\<`string`\>
585
719
 
586
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:31](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L31)
720
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:102
721
+
722
+ Formats a template using the provided options.
587
723
 
588
724
  #### Parameters
589
725
 
@@ -591,19 +727,34 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:31](https://gi
591
727
 
592
728
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
593
729
 
730
+ Configuration options for the template.
731
+
594
732
  #### Returns
595
733
 
596
734
  `Promise`\<`string`\>
597
735
 
736
+ A promise that resolves to the formatted template string.
737
+
738
+ #### Example
739
+
740
+ ```typescript
741
+ const result = await StringTemplate.format({
742
+ template: "{{text}}",
743
+ data: { text: "Hello" },
744
+ templateFormat: "Test"
745
+ });
746
+ console.log(result); // Output: "Hello"
747
+ ```
748
+
598
749
  ***
599
750
 
600
751
  ### formatIf()
601
752
 
602
753
  > `static` **formatIf**(`options`): `Promise`\<`undefined` \| `string`\>
603
754
 
604
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:41](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L41)
755
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:118
605
756
 
606
- If the given options.template is the template, perform formatting using that template.
757
+ Formats a template if the provided options represent a valid template.
607
758
 
608
759
  #### Parameters
609
760
 
@@ -611,13 +762,24 @@ If the given options.template is the template, perform formatting using that tem
611
762
 
612
763
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
613
764
 
614
- The options object to check for being a template and to format.
765
+ Configuration options to check and format.
615
766
 
616
767
  #### Returns
617
768
 
618
769
  `Promise`\<`undefined` \| `string`\>
619
770
 
620
- A Promise that resolves to the formatted result if options is a template; otherwise, no value is returned.
771
+ A promise that resolves to the formatted template string if valid; otherwise, undefined.
772
+
773
+ #### Example
774
+
775
+ ```typescript
776
+ const result = await StringTemplate.formatIf({
777
+ template: "{{text}}",
778
+ data: { text: "Valid Template" },
779
+ templateFormat: "Test"
780
+ });
781
+ console.log(result); // Output: "Valid Template"
782
+ ```
621
783
 
622
784
  ***
623
785
 
@@ -625,7 +787,7 @@ A Promise that resolves to the formatted result if options is a template; otherw
625
787
 
626
788
  > `abstract` `static` **formatName**(`aName`): `string`
627
789
 
628
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:116
790
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:116
629
791
 
630
792
  **`Internal`**
631
793
 
@@ -653,7 +815,7 @@ defaults to returning the name unchanged. By overloading this method, case-insen
653
815
 
654
816
  > `static` **formatNameFromClass**(`aClass`, `aBaseNameOnly`?): `string`
655
817
 
656
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:130
818
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:130
657
819
 
658
820
  **`Internal`**
659
821
 
@@ -685,29 +847,47 @@ the name to register
685
847
 
686
848
  > `static` **from**(`template`?, `options`?): [`PromptTemplate`](PromptTemplate.md)
687
849
 
688
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:27](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L27)
850
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:86
851
+
852
+ Creates a new instance of the `StringTemplate` class.
689
853
 
690
854
  #### Parameters
691
855
 
692
856
  ##### template?
693
857
 
858
+ Either a template string or an options object.
859
+
694
860
  `string` | [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
695
861
 
696
862
  ##### options?
697
863
 
698
864
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
699
865
 
866
+ Additional configuration options for the template.
867
+
700
868
  #### Returns
701
869
 
702
870
  [`PromptTemplate`](PromptTemplate.md)
703
871
 
872
+ A new `StringTemplate` instance.
873
+
874
+ #### Example
875
+
876
+ ```typescript
877
+ const template = StringTemplate.from("{{text}}", {
878
+ templateFormat: "Test",
879
+ inputVariables: ['text']
880
+ });
881
+ console.log(template instanceof TestStringTemplate); // Output: true
882
+ ```
883
+
704
884
  ***
705
885
 
706
886
  ### get()
707
887
 
708
888
  > `static` **get**(`name`): `undefined` \| *typeof* `BaseFactory`
709
889
 
710
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:233
890
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:233
711
891
 
712
892
  Get the registered class via name
713
893
 
@@ -733,7 +913,7 @@ return the registered class if found the name
733
913
 
734
914
  > `static` **getAliases**(`aClass`): `string`[]
735
915
 
736
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:195
916
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:195
737
917
 
738
918
  get the aliases of the aClass
739
919
 
@@ -761,7 +941,7 @@ aliases
761
941
 
762
942
  > `static` **getDisplayName**(`aClass`): `undefined` \| `string`
763
943
 
764
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:206
944
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:206
765
945
 
766
946
  Get the display name from aClass
767
947
 
@@ -787,7 +967,7 @@ the class, name or itself, means itself if no aClass
787
967
 
788
968
  > `static` **getNameFrom**(`aClass`): `string`
789
969
 
790
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:122
970
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:122
791
971
 
792
972
  Get the unique(registered) name in the factory
793
973
 
@@ -813,7 +993,7 @@ the unique name in the factory
813
993
 
814
994
  > `static` **getRealName**(`name`): `any`
815
995
 
816
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:100
996
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:100
817
997
 
818
998
  #### Parameters
819
999
 
@@ -835,7 +1015,7 @@ Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factor
835
1015
 
836
1016
  > `static` **getRealNameFromAlias**(`alias`): `undefined` \| `string`
837
1017
 
838
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:106
1018
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:106
839
1019
 
840
1020
  get the unique name in the factory from an alias name
841
1021
 
@@ -863,7 +1043,9 @@ the unique name in the factory
863
1043
 
864
1044
  > `static` **isTemplate**(`templateOpt`): `any`
865
1045
 
866
- Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:48](https://github.com/isdk/ai-tool.js/blob/c084189f913fb955b91b492de68bd07ce78f8c82/src/utils/prompt/prompt-template.ts#L48)
1046
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:133
1047
+
1048
+ Determines whether the given options represent a valid template.
867
1049
 
868
1050
  #### Parameters
869
1051
 
@@ -871,17 +1053,75 @@ Defined in: [packages/ai-tool/src/utils/prompt/prompt-template.ts:48](https://gi
871
1053
 
872
1054
  [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
873
1055
 
1056
+ The options object to evaluate.
1057
+
874
1058
  #### Returns
875
1059
 
876
1060
  `any`
877
1061
 
1062
+ A boolean indicating whether the options represent a valid template.
1063
+
1064
+ #### Example
1065
+
1066
+ ```typescript
1067
+ const isValid = StringTemplate.isTemplate({
1068
+ template: "{{text}}",
1069
+ templateFormat: "Test"
1070
+ });
1071
+ console.log(isValid); // Output: true
1072
+ ```
1073
+
1074
+ ***
1075
+
1076
+ ### matchTemplateSegment()
1077
+
1078
+ > `static` **matchTemplateSegment**(`templateOpt`, `index`?): `undefined` \| `RegExpExecArray`
1079
+
1080
+ Defined in: @isdk/ai-tools/packages/template-engines/dist/index.d.ts:157
1081
+
1082
+ Matches and extracts a single template segment from the provided template options.
1083
+ This method is designed to identify individual segments of a template string.
1084
+
1085
+ #### Parameters
1086
+
1087
+ ##### templateOpt
1088
+
1089
+ [`PromptTemplateOptions`](../interfaces/PromptTemplateOptions.md)
1090
+
1091
+ The template options containing the template string and related configurations.
1092
+
1093
+ ##### index?
1094
+
1095
+ `number`
1096
+
1097
+ The default starting position in the template string to begin matching (default: 0).
1098
+ This value is used only if `templateOpt.index` is not provided or invalid.
1099
+
1100
+ #### Returns
1101
+
1102
+ `undefined` \| `RegExpExecArray`
1103
+
1104
+ A `RegExpExecArray` representing the matched template segment, or `undefined` if no match is found.
1105
+ The `index` property of the result can be used to calculate the next position for iteration.
1106
+
1107
+ #### Example
1108
+
1109
+ ```typescript
1110
+ const template = "{{name}} is {{age}} years old";
1111
+ let match = StringTemplate.matchTemplateSegment({ template });
1112
+ while (match) {
1113
+ console.log(match[0]); // Output: "{{name}}"
1114
+ match = StringTemplate.matchTemplateSegment({ template }, match.index + match[0].length);
1115
+ }
1116
+ ```
1117
+
878
1118
  ***
879
1119
 
880
1120
  ### register()
881
1121
 
882
1122
  > `static` **register**(...`args`): `boolean`
883
1123
 
884
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:137
1124
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:137
885
1125
 
886
1126
  register the aClass to the factory
887
1127
 
@@ -907,7 +1147,7 @@ return true if successful.
907
1147
 
908
1148
  > `static` **registeredClass**(`aName`): `false` \| *typeof* `BaseFactory`
909
1149
 
910
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:151
1150
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:151
911
1151
 
912
1152
  Check the name, alias or itself whether registered.
913
1153
 
@@ -935,7 +1175,7 @@ the registered class if registered, otherwise returns false
935
1175
 
936
1176
  > `static` **removeAlias**(...`aliases`): `void`
937
1177
 
938
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:167
1178
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:167
939
1179
 
940
1180
  remove specified aliases
941
1181
 
@@ -961,7 +1201,7 @@ the aliases to remove
961
1201
 
962
1202
  > `static` **setAlias**(`aClass`, `alias`): `void`
963
1203
 
964
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:189
1204
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:189
965
1205
 
966
1206
  set alias to a class
967
1207
 
@@ -991,7 +1231,7 @@ the class to set alias
991
1231
 
992
1232
  > `static` **setAliases**(`aClass`, ...`aAliases`): `void`
993
1233
 
994
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:183
1234
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:183
995
1235
 
996
1236
  set aliases to a class
997
1237
 
@@ -1033,7 +1273,7 @@ import { BaseFactory } from 'custom-factory'
1033
1273
 
1034
1274
  > `static` **setDisplayName**(`aClass`, `aDisplayName`): `void`
1035
1275
 
1036
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:212
1276
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:212
1037
1277
 
1038
1278
  Set the display name to the aClass
1039
1279
 
@@ -1065,7 +1305,7 @@ the display name to set
1065
1305
 
1066
1306
  > `static` **unregister**(`aName`): `boolean`
1067
1307
 
1068
- Defined in: node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:157
1308
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/custom-factory@2.3.0/node\_modules/custom-factory/lib/base-factory.d.ts:157
1069
1309
 
1070
1310
  unregister this class in the factory
1071
1311