@promptbook/cli 0.41.109

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 (363) hide show
  1. package/README.md +5 -0
  2. package/bin/promptbook-cli.js +11 -0
  3. package/esm/index.es.js +1356 -0
  4. package/esm/index.es.js.map +1 -0
  5. package/esm/typings/_packages/cli.index.d.ts +8 -0
  6. package/esm/typings/_packages/core.index.d.ts +20 -0
  7. package/esm/typings/_packages/execute-javascript.index.d.ts +3 -0
  8. package/esm/typings/_packages/openai.index.d.ts +3 -0
  9. package/esm/typings/_packages/remote-client.index.d.ts +4 -0
  10. package/esm/typings/_packages/remote-server.index.d.ts +3 -0
  11. package/esm/typings/_packages/types.index.d.ts +27 -0
  12. package/esm/typings/_packages/utils.index.d.ts +31 -0
  13. package/esm/typings/_packages/wizzard.index.d.ts +5 -0
  14. package/esm/typings/config.d.ts +4 -0
  15. package/esm/typings/conversion/prettify/PrettifyOptions.d.ts +7 -0
  16. package/esm/typings/conversion/prettify/prettifyPromptbookString.d.ts +10 -0
  17. package/esm/typings/conversion/prettify/prettifyPromptbookStringCli.d.ts +9 -0
  18. package/esm/typings/conversion/promptbookStringToJson.d.ts +13 -0
  19. package/esm/typings/conversion/utils/extractVariables.d.ts +10 -0
  20. package/esm/typings/conversion/utils/extractVariables.test.d.ts +1 -0
  21. package/esm/typings/conversion/utils/parseCommand.d.ts +8 -0
  22. package/esm/typings/conversion/utils/parseCommand.test.d.ts +4 -0
  23. package/esm/typings/conversion/utils/parseNumber.d.ts +12 -0
  24. package/esm/typings/conversion/utils/parseNumber.test.d.ts +1 -0
  25. package/esm/typings/conversion/validation/_importPromptbook.d.ts +12 -0
  26. package/esm/typings/conversion/validation/promptbookStringToJson-syntaxErrors.test.d.ts +1 -0
  27. package/esm/typings/conversion/validation/promptbookStringToJson.test.d.ts +1 -0
  28. package/esm/typings/conversion/validation/validatePromptbookJson-logicErrors.test.d.ts +1 -0
  29. package/esm/typings/conversion/validation/validatePromptbookJson.d.ts +26 -0
  30. package/esm/typings/conversion/validation/validatePromptbookJson.test.d.ts +1 -0
  31. package/esm/typings/errors/ExpectError.d.ts +9 -0
  32. package/esm/typings/errors/NotFoundError.d.ts +7 -0
  33. package/esm/typings/errors/PromptbookExecutionError.d.ts +7 -0
  34. package/esm/typings/errors/PromptbookLogicError.d.ts +7 -0
  35. package/esm/typings/errors/PromptbookReferenceError.d.ts +7 -0
  36. package/esm/typings/errors/PromptbookSyntaxError.d.ts +7 -0
  37. package/esm/typings/errors/UnexpectedError.d.ts +7 -0
  38. package/esm/typings/execution/CommonExecutionToolsOptions.d.ts +9 -0
  39. package/esm/typings/execution/ExecutionTools.d.ts +25 -0
  40. package/esm/typings/execution/NaturalExecutionTools.d.ts +23 -0
  41. package/esm/typings/execution/PromptResult.d.ts +74 -0
  42. package/esm/typings/execution/PromptbookExecutor.d.ts +39 -0
  43. package/esm/typings/execution/ScriptExecutionTools.d.ts +37 -0
  44. package/esm/typings/execution/UserInterfaceTools.d.ts +45 -0
  45. package/esm/typings/execution/assertsExecutionSuccessful.d.ts +11 -0
  46. package/esm/typings/execution/createPromptbookExecutor.d.ts +41 -0
  47. package/esm/typings/execution/plugins/natural-execution-tools/mocked/MockedEchoNaturalExecutionTools.d.ts +22 -0
  48. package/esm/typings/execution/plugins/natural-execution-tools/mocked/joker.test.d.ts +4 -0
  49. package/esm/typings/execution/plugins/natural-execution-tools/mocked/mocked-chat.test.d.ts +4 -0
  50. package/esm/typings/execution/plugins/natural-execution-tools/mocked/mocked-completion.test.d.ts +4 -0
  51. package/esm/typings/execution/plugins/natural-execution-tools/openai/OpenAiExecutionTools.d.ts +28 -0
  52. package/esm/typings/execution/plugins/natural-execution-tools/openai/OpenAiExecutionToolsOptions.d.ts +16 -0
  53. package/esm/typings/execution/plugins/natural-execution-tools/openai/computeOpenaiUsage.d.ts +3 -0
  54. package/esm/typings/execution/plugins/natural-execution-tools/remote/RemoteNaturalExecutionTools.d.ts +35 -0
  55. package/esm/typings/execution/plugins/natural-execution-tools/remote/RemoteNaturalExecutionToolsOptions.d.ts +23 -0
  56. package/esm/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Error.d.ts +11 -0
  57. package/esm/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Progress.d.ts +12 -0
  58. package/esm/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Request.d.ts +17 -0
  59. package/esm/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Response.d.ts +12 -0
  60. package/esm/typings/execution/plugins/natural-execution-tools/remote/interfaces/RemoteServerOptions.d.ts +27 -0
  61. package/esm/typings/execution/plugins/natural-execution-tools/remote/startRemoteServer.d.ts +17 -0
  62. package/esm/typings/execution/plugins/script-execution-tools/custom-function-async.test.ts.test.d.ts +1 -0
  63. package/esm/typings/execution/plugins/script-execution-tools/custom-function-missing.test.d.ts +1 -0
  64. package/esm/typings/execution/plugins/script-execution-tools/custom-function-with-dependencies.test.d.ts +1 -0
  65. package/esm/typings/execution/plugins/script-execution-tools/custom-function.test.d.ts +1 -0
  66. package/esm/typings/execution/plugins/script-execution-tools/javascript/JavascriptEvalExecutionTools.d.ts +20 -0
  67. package/esm/typings/execution/plugins/script-execution-tools/javascript/JavascriptEvalExecutionTools.test.d.ts +4 -0
  68. package/esm/typings/execution/plugins/script-execution-tools/javascript/JavascriptExecutionTools.d.ts +20 -0
  69. package/esm/typings/execution/plugins/script-execution-tools/javascript/JavascriptExecutionToolsOptions.d.ts +22 -0
  70. package/esm/typings/execution/plugins/script-execution-tools/javascript/utils/preserve.d.ts +11 -0
  71. package/esm/typings/execution/plugins/script-execution-tools/postprocessing.test.d.ts +1 -0
  72. package/esm/typings/execution/plugins/script-execution-tools/python/PythonExecutionTools.d.ts +15 -0
  73. package/esm/typings/execution/plugins/script-execution-tools/script-execution-errors.test.d.ts +1 -0
  74. package/esm/typings/execution/plugins/script-execution-tools/script-execution-tools.test.d.ts +1 -0
  75. package/esm/typings/execution/plugins/script-execution-tools/typescript/TypescriptExecutionTools.d.ts +15 -0
  76. package/esm/typings/execution/plugins/user-interface-execution-tools/callback/CallbackInterfaceTools.d.ts +14 -0
  77. package/esm/typings/execution/plugins/user-interface-execution-tools/callback/CallbackInterfaceToolsOptions.d.ts +12 -0
  78. package/esm/typings/execution/plugins/user-interface-execution-tools/simple-prompt/SimplePromptInterfaceTools.d.ts +16 -0
  79. package/esm/typings/execution/plugins/user-interface-execution-tools/user-interface-execution-tools.test.d.ts +1 -0
  80. package/esm/typings/execution/translation/automatic-translate/automatic-translators/AutomaticTranslator.d.ts +4 -0
  81. package/esm/typings/execution/translation/automatic-translate/automatic-translators/DebugAutomaticTranslator.d.ts +9 -0
  82. package/esm/typings/execution/translation/automatic-translate/automatic-translators/FakeAutomaticTranslator.d.ts +5 -0
  83. package/esm/typings/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +11 -0
  84. package/esm/typings/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +4 -0
  85. package/esm/typings/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -0
  86. package/esm/typings/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.test.d.ts +1 -0
  87. package/esm/typings/execution/translation/automatic-translate/translateMessages.d.ts +5 -0
  88. package/esm/typings/execution/utils/replaceParameters.d.ts +12 -0
  89. package/esm/typings/execution/utils/replaceParameters.test.d.ts +1 -0
  90. package/esm/typings/library/PromptbookLibrary.d.ts +25 -0
  91. package/esm/typings/library/SimplePromptbookLibrary.d.ts +35 -0
  92. package/esm/typings/library/constructors/createPromptbookLibraryFromDirectory.d.ts +5 -0
  93. package/esm/typings/library/constructors/createPromptbookLibraryFromList.d.ts +5 -0
  94. package/esm/typings/library/constructors/createPromptbookLibraryFromPromise.d.ts +7 -0
  95. package/esm/typings/library/constructors/createPromptbookLibraryFromSources.d.ts +16 -0
  96. package/esm/typings/library/constructors/createPromptbookSublibrary.d.ts +6 -0
  97. package/esm/typings/types/Command.d.ts +98 -0
  98. package/esm/typings/types/ExecutionTypes.d.ts +13 -0
  99. package/esm/typings/types/ModelRequirements.d.ts +41 -0
  100. package/esm/typings/types/Parameters.d.ts +14 -0
  101. package/esm/typings/types/Prompt.d.ts +41 -0
  102. package/esm/typings/types/PromptbookJson/PromptTemplateJson.d.ts +126 -0
  103. package/esm/typings/types/PromptbookJson/PromptTemplateParameterJson.d.ts +25 -0
  104. package/esm/typings/types/PromptbookJson/PromptbookJson.d.ts +51 -0
  105. package/esm/typings/types/PromptbookString.d.ts +12 -0
  106. package/esm/typings/types/ScriptLanguage.d.ts +9 -0
  107. package/esm/typings/types/TaskProgress.d.ts +42 -0
  108. package/esm/typings/types/execution-report/ExecutionReportJson.d.ts +56 -0
  109. package/esm/typings/types/execution-report/ExecutionReportString.d.ts +16 -0
  110. package/esm/typings/types/execution-report/ExecutionReportStringOptions.d.ts +21 -0
  111. package/esm/typings/types/execution-report/config.d.ts +8 -0
  112. package/esm/typings/types/execution-report/countWorkingDuration.d.ts +7 -0
  113. package/esm/typings/types/execution-report/countWorkingDuration.test.d.ts +1 -0
  114. package/esm/typings/types/execution-report/executionReportJsonToString.d.ts +11 -0
  115. package/esm/typings/types/execution-report/executionReportJsonToString.test.d.ts +1 -0
  116. package/esm/typings/types/typeAliasEmoji.d.ts +9 -0
  117. package/esm/typings/types/typeAliases.d.ts +432 -0
  118. package/esm/typings/utils/FromtoItems.d.ts +19 -0
  119. package/esm/typings/utils/emojis.d.ts +22 -0
  120. package/esm/typings/utils/expectation-counters/countCharacters.d.ts +5 -0
  121. package/esm/typings/utils/expectation-counters/countCharacters.test.d.ts +1 -0
  122. package/esm/typings/utils/expectation-counters/countLines.d.ts +5 -0
  123. package/esm/typings/utils/expectation-counters/countLines.test.d.ts +1 -0
  124. package/esm/typings/utils/expectation-counters/countPages.d.ts +5 -0
  125. package/esm/typings/utils/expectation-counters/countPages.test.d.ts +1 -0
  126. package/esm/typings/utils/expectation-counters/countParagraphs.d.ts +5 -0
  127. package/esm/typings/utils/expectation-counters/countParagraphs.test.d.ts +1 -0
  128. package/esm/typings/utils/expectation-counters/countSentences.d.ts +5 -0
  129. package/esm/typings/utils/expectation-counters/countSentences.test.d.ts +1 -0
  130. package/esm/typings/utils/expectation-counters/countWords.d.ts +5 -0
  131. package/esm/typings/utils/expectation-counters/countWords.test.d.ts +1 -0
  132. package/esm/typings/utils/expectation-counters/index.d.ts +5 -0
  133. package/esm/typings/utils/extractParameters.d.ts +10 -0
  134. package/esm/typings/utils/extractParameters.test.d.ts +1 -0
  135. package/esm/typings/utils/formatNumber.d.ts +6 -0
  136. package/esm/typings/utils/formatNumber.test.d.ts +1 -0
  137. package/esm/typings/utils/getCurrentIsoDate.d.ts +7 -0
  138. package/esm/typings/utils/isRunningInWhatever.d.ts +12 -0
  139. package/esm/typings/utils/isValidJsonString.d.ts +4 -0
  140. package/esm/typings/utils/isValidJsonString.test.d.ts +1 -0
  141. package/esm/typings/utils/just.d.ts +10 -0
  142. package/esm/typings/utils/markdown/addAutoGeneratedSection.d.ts +10 -0
  143. package/esm/typings/utils/markdown/addAutoGeneratedSection.test.d.ts +1 -0
  144. package/esm/typings/utils/markdown/createMarkdownChart.d.ts +41 -0
  145. package/esm/typings/utils/markdown/createMarkdownChart.test.d.ts +1 -0
  146. package/esm/typings/utils/markdown/createMarkdownTable.d.ts +7 -0
  147. package/esm/typings/utils/markdown/createMarkdownTable.test.d.ts +1 -0
  148. package/esm/typings/utils/markdown/escapeMarkdownBlock.d.ts +6 -0
  149. package/esm/typings/utils/markdown/escapeMarkdownBlock.test.d.ts +1 -0
  150. package/esm/typings/utils/markdown/extractAllBlocksFromMarkdown.d.ts +27 -0
  151. package/esm/typings/utils/markdown/extractAllBlocksFromMarkdown.test.d.ts +1 -0
  152. package/esm/typings/utils/markdown/extractAllListItemsFromMarkdown.d.ts +13 -0
  153. package/esm/typings/utils/markdown/extractAllListItemsFromMarkdown.test.d.ts +1 -0
  154. package/esm/typings/utils/markdown/extractOneBlockFromMarkdown.d.ts +19 -0
  155. package/esm/typings/utils/markdown/extractOneBlockFromMarkdown.test.d.ts +1 -0
  156. package/esm/typings/utils/markdown/prettifyMarkdown.d.ts +8 -0
  157. package/esm/typings/utils/markdown/prettifyMarkdown.test.d.ts +1 -0
  158. package/esm/typings/utils/markdown/removeContentComments.d.ts +8 -0
  159. package/esm/typings/utils/markdown/removeContentComments.test.d.ts +1 -0
  160. package/esm/typings/utils/markdown/removeMarkdownFormatting.d.ts +8 -0
  161. package/esm/typings/utils/markdown/removeMarkdownFormatting.test.d.ts +1 -0
  162. package/esm/typings/utils/markdown-json/MarkdownStructure.d.ts +25 -0
  163. package/esm/typings/utils/markdown-json/countMarkdownStructureDeepness.d.ts +7 -0
  164. package/esm/typings/utils/markdown-json/countMarkdownStructureDeepness.test.d.ts +1 -0
  165. package/esm/typings/utils/markdown-json/markdownToMarkdownStructure.d.ts +13 -0
  166. package/esm/typings/utils/markdown-json/markdownToMarkdownStructure.test.d.ts +1 -0
  167. package/esm/typings/utils/postprocessing/extractBlock.d.ts +12 -0
  168. package/esm/typings/utils/removeEmojis.d.ts +7 -0
  169. package/esm/typings/utils/removeEmojis.test.d.ts +1 -0
  170. package/esm/typings/utils/removeQuotes.d.ts +13 -0
  171. package/esm/typings/utils/removeQuotes.test.d.ts +1 -0
  172. package/esm/typings/utils/trimCodeBlock.d.ts +8 -0
  173. package/esm/typings/utils/trimCodeBlock.test.d.ts +1 -0
  174. package/esm/typings/utils/trimEndOfCodeBlock.d.ts +7 -0
  175. package/esm/typings/utils/trimEndOfCodeBlock.test.d.ts +1 -0
  176. package/esm/typings/utils/unwrapResult.d.ts +36 -0
  177. package/esm/typings/utils/unwrapResult.test.d.ts +1 -0
  178. package/esm/typings/utils/validators/url/isValidUrl.d.ts +7 -0
  179. package/esm/typings/utils/validators/url/isValidUrl.test.d.ts +1 -0
  180. package/esm/typings/version.d.ts +5 -0
  181. package/esm/typings/wizzard/Wizzard.d.ts +4 -0
  182. package/esm/typings/wizzard/sample.d.ts +6 -0
  183. package/package.json +54 -0
  184. package/umd/index.umd.js +1364 -0
  185. package/umd/index.umd.js.map +1 -0
  186. package/umd/typings/_packages/cli.index.d.ts +8 -0
  187. package/umd/typings/_packages/core.index.d.ts +20 -0
  188. package/umd/typings/_packages/execute-javascript.index.d.ts +3 -0
  189. package/umd/typings/_packages/openai.index.d.ts +3 -0
  190. package/umd/typings/_packages/remote-client.index.d.ts +4 -0
  191. package/umd/typings/_packages/remote-server.index.d.ts +3 -0
  192. package/umd/typings/_packages/types.index.d.ts +27 -0
  193. package/umd/typings/_packages/utils.index.d.ts +31 -0
  194. package/umd/typings/_packages/wizzard.index.d.ts +5 -0
  195. package/umd/typings/config.d.ts +4 -0
  196. package/umd/typings/conversion/prettify/PrettifyOptions.d.ts +7 -0
  197. package/umd/typings/conversion/prettify/prettifyPromptbookString.d.ts +10 -0
  198. package/umd/typings/conversion/prettify/prettifyPromptbookStringCli.d.ts +9 -0
  199. package/umd/typings/conversion/promptbookStringToJson.d.ts +13 -0
  200. package/umd/typings/conversion/utils/extractVariables.d.ts +10 -0
  201. package/umd/typings/conversion/utils/extractVariables.test.d.ts +1 -0
  202. package/umd/typings/conversion/utils/parseCommand.d.ts +8 -0
  203. package/umd/typings/conversion/utils/parseCommand.test.d.ts +4 -0
  204. package/umd/typings/conversion/utils/parseNumber.d.ts +12 -0
  205. package/umd/typings/conversion/utils/parseNumber.test.d.ts +1 -0
  206. package/umd/typings/conversion/validation/_importPromptbook.d.ts +12 -0
  207. package/umd/typings/conversion/validation/promptbookStringToJson-syntaxErrors.test.d.ts +1 -0
  208. package/umd/typings/conversion/validation/promptbookStringToJson.test.d.ts +1 -0
  209. package/umd/typings/conversion/validation/validatePromptbookJson-logicErrors.test.d.ts +1 -0
  210. package/umd/typings/conversion/validation/validatePromptbookJson.d.ts +26 -0
  211. package/umd/typings/conversion/validation/validatePromptbookJson.test.d.ts +1 -0
  212. package/umd/typings/errors/ExpectError.d.ts +9 -0
  213. package/umd/typings/errors/NotFoundError.d.ts +7 -0
  214. package/umd/typings/errors/PromptbookExecutionError.d.ts +7 -0
  215. package/umd/typings/errors/PromptbookLogicError.d.ts +7 -0
  216. package/umd/typings/errors/PromptbookReferenceError.d.ts +7 -0
  217. package/umd/typings/errors/PromptbookSyntaxError.d.ts +7 -0
  218. package/umd/typings/errors/UnexpectedError.d.ts +7 -0
  219. package/umd/typings/execution/CommonExecutionToolsOptions.d.ts +9 -0
  220. package/umd/typings/execution/ExecutionTools.d.ts +25 -0
  221. package/umd/typings/execution/NaturalExecutionTools.d.ts +23 -0
  222. package/umd/typings/execution/PromptResult.d.ts +74 -0
  223. package/umd/typings/execution/PromptbookExecutor.d.ts +39 -0
  224. package/umd/typings/execution/ScriptExecutionTools.d.ts +37 -0
  225. package/umd/typings/execution/UserInterfaceTools.d.ts +45 -0
  226. package/umd/typings/execution/assertsExecutionSuccessful.d.ts +11 -0
  227. package/umd/typings/execution/createPromptbookExecutor.d.ts +41 -0
  228. package/umd/typings/execution/plugins/natural-execution-tools/mocked/MockedEchoNaturalExecutionTools.d.ts +22 -0
  229. package/umd/typings/execution/plugins/natural-execution-tools/mocked/joker.test.d.ts +4 -0
  230. package/umd/typings/execution/plugins/natural-execution-tools/mocked/mocked-chat.test.d.ts +4 -0
  231. package/umd/typings/execution/plugins/natural-execution-tools/mocked/mocked-completion.test.d.ts +4 -0
  232. package/umd/typings/execution/plugins/natural-execution-tools/openai/OpenAiExecutionTools.d.ts +28 -0
  233. package/umd/typings/execution/plugins/natural-execution-tools/openai/OpenAiExecutionToolsOptions.d.ts +16 -0
  234. package/umd/typings/execution/plugins/natural-execution-tools/openai/computeOpenaiUsage.d.ts +3 -0
  235. package/umd/typings/execution/plugins/natural-execution-tools/remote/RemoteNaturalExecutionTools.d.ts +35 -0
  236. package/umd/typings/execution/plugins/natural-execution-tools/remote/RemoteNaturalExecutionToolsOptions.d.ts +23 -0
  237. package/umd/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Error.d.ts +11 -0
  238. package/umd/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Progress.d.ts +12 -0
  239. package/umd/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Request.d.ts +17 -0
  240. package/umd/typings/execution/plugins/natural-execution-tools/remote/interfaces/Promptbook_Server_Response.d.ts +12 -0
  241. package/umd/typings/execution/plugins/natural-execution-tools/remote/interfaces/RemoteServerOptions.d.ts +27 -0
  242. package/umd/typings/execution/plugins/natural-execution-tools/remote/startRemoteServer.d.ts +17 -0
  243. package/umd/typings/execution/plugins/script-execution-tools/custom-function-async.test.ts.test.d.ts +1 -0
  244. package/umd/typings/execution/plugins/script-execution-tools/custom-function-missing.test.d.ts +1 -0
  245. package/umd/typings/execution/plugins/script-execution-tools/custom-function-with-dependencies.test.d.ts +1 -0
  246. package/umd/typings/execution/plugins/script-execution-tools/custom-function.test.d.ts +1 -0
  247. package/umd/typings/execution/plugins/script-execution-tools/javascript/JavascriptEvalExecutionTools.d.ts +20 -0
  248. package/umd/typings/execution/plugins/script-execution-tools/javascript/JavascriptEvalExecutionTools.test.d.ts +4 -0
  249. package/umd/typings/execution/plugins/script-execution-tools/javascript/JavascriptExecutionTools.d.ts +20 -0
  250. package/umd/typings/execution/plugins/script-execution-tools/javascript/JavascriptExecutionToolsOptions.d.ts +22 -0
  251. package/umd/typings/execution/plugins/script-execution-tools/javascript/utils/preserve.d.ts +11 -0
  252. package/umd/typings/execution/plugins/script-execution-tools/postprocessing.test.d.ts +1 -0
  253. package/umd/typings/execution/plugins/script-execution-tools/python/PythonExecutionTools.d.ts +15 -0
  254. package/umd/typings/execution/plugins/script-execution-tools/script-execution-errors.test.d.ts +1 -0
  255. package/umd/typings/execution/plugins/script-execution-tools/script-execution-tools.test.d.ts +1 -0
  256. package/umd/typings/execution/plugins/script-execution-tools/typescript/TypescriptExecutionTools.d.ts +15 -0
  257. package/umd/typings/execution/plugins/user-interface-execution-tools/callback/CallbackInterfaceTools.d.ts +14 -0
  258. package/umd/typings/execution/plugins/user-interface-execution-tools/callback/CallbackInterfaceToolsOptions.d.ts +12 -0
  259. package/umd/typings/execution/plugins/user-interface-execution-tools/simple-prompt/SimplePromptInterfaceTools.d.ts +16 -0
  260. package/umd/typings/execution/plugins/user-interface-execution-tools/user-interface-execution-tools.test.d.ts +1 -0
  261. package/umd/typings/execution/translation/automatic-translate/automatic-translators/AutomaticTranslator.d.ts +4 -0
  262. package/umd/typings/execution/translation/automatic-translate/automatic-translators/DebugAutomaticTranslator.d.ts +9 -0
  263. package/umd/typings/execution/translation/automatic-translate/automatic-translators/FakeAutomaticTranslator.d.ts +5 -0
  264. package/umd/typings/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +11 -0
  265. package/umd/typings/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +4 -0
  266. package/umd/typings/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -0
  267. package/umd/typings/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.test.d.ts +1 -0
  268. package/umd/typings/execution/translation/automatic-translate/translateMessages.d.ts +5 -0
  269. package/umd/typings/execution/utils/replaceParameters.d.ts +12 -0
  270. package/umd/typings/execution/utils/replaceParameters.test.d.ts +1 -0
  271. package/umd/typings/library/PromptbookLibrary.d.ts +25 -0
  272. package/umd/typings/library/SimplePromptbookLibrary.d.ts +35 -0
  273. package/umd/typings/library/constructors/createPromptbookLibraryFromDirectory.d.ts +5 -0
  274. package/umd/typings/library/constructors/createPromptbookLibraryFromList.d.ts +5 -0
  275. package/umd/typings/library/constructors/createPromptbookLibraryFromPromise.d.ts +7 -0
  276. package/umd/typings/library/constructors/createPromptbookLibraryFromSources.d.ts +16 -0
  277. package/umd/typings/library/constructors/createPromptbookSublibrary.d.ts +6 -0
  278. package/umd/typings/types/Command.d.ts +98 -0
  279. package/umd/typings/types/ExecutionTypes.d.ts +13 -0
  280. package/umd/typings/types/ModelRequirements.d.ts +41 -0
  281. package/umd/typings/types/Parameters.d.ts +14 -0
  282. package/umd/typings/types/Prompt.d.ts +41 -0
  283. package/umd/typings/types/PromptbookJson/PromptTemplateJson.d.ts +126 -0
  284. package/umd/typings/types/PromptbookJson/PromptTemplateParameterJson.d.ts +25 -0
  285. package/umd/typings/types/PromptbookJson/PromptbookJson.d.ts +51 -0
  286. package/umd/typings/types/PromptbookString.d.ts +12 -0
  287. package/umd/typings/types/ScriptLanguage.d.ts +9 -0
  288. package/umd/typings/types/TaskProgress.d.ts +42 -0
  289. package/umd/typings/types/execution-report/ExecutionReportJson.d.ts +56 -0
  290. package/umd/typings/types/execution-report/ExecutionReportString.d.ts +16 -0
  291. package/umd/typings/types/execution-report/ExecutionReportStringOptions.d.ts +21 -0
  292. package/umd/typings/types/execution-report/config.d.ts +8 -0
  293. package/umd/typings/types/execution-report/countWorkingDuration.d.ts +7 -0
  294. package/umd/typings/types/execution-report/countWorkingDuration.test.d.ts +1 -0
  295. package/umd/typings/types/execution-report/executionReportJsonToString.d.ts +11 -0
  296. package/umd/typings/types/execution-report/executionReportJsonToString.test.d.ts +1 -0
  297. package/umd/typings/types/typeAliasEmoji.d.ts +9 -0
  298. package/umd/typings/types/typeAliases.d.ts +432 -0
  299. package/umd/typings/utils/FromtoItems.d.ts +19 -0
  300. package/umd/typings/utils/emojis.d.ts +22 -0
  301. package/umd/typings/utils/expectation-counters/countCharacters.d.ts +5 -0
  302. package/umd/typings/utils/expectation-counters/countCharacters.test.d.ts +1 -0
  303. package/umd/typings/utils/expectation-counters/countLines.d.ts +5 -0
  304. package/umd/typings/utils/expectation-counters/countLines.test.d.ts +1 -0
  305. package/umd/typings/utils/expectation-counters/countPages.d.ts +5 -0
  306. package/umd/typings/utils/expectation-counters/countPages.test.d.ts +1 -0
  307. package/umd/typings/utils/expectation-counters/countParagraphs.d.ts +5 -0
  308. package/umd/typings/utils/expectation-counters/countParagraphs.test.d.ts +1 -0
  309. package/umd/typings/utils/expectation-counters/countSentences.d.ts +5 -0
  310. package/umd/typings/utils/expectation-counters/countSentences.test.d.ts +1 -0
  311. package/umd/typings/utils/expectation-counters/countWords.d.ts +5 -0
  312. package/umd/typings/utils/expectation-counters/countWords.test.d.ts +1 -0
  313. package/umd/typings/utils/expectation-counters/index.d.ts +5 -0
  314. package/umd/typings/utils/extractParameters.d.ts +10 -0
  315. package/umd/typings/utils/extractParameters.test.d.ts +1 -0
  316. package/umd/typings/utils/formatNumber.d.ts +6 -0
  317. package/umd/typings/utils/formatNumber.test.d.ts +1 -0
  318. package/umd/typings/utils/getCurrentIsoDate.d.ts +7 -0
  319. package/umd/typings/utils/isRunningInWhatever.d.ts +12 -0
  320. package/umd/typings/utils/isValidJsonString.d.ts +4 -0
  321. package/umd/typings/utils/isValidJsonString.test.d.ts +1 -0
  322. package/umd/typings/utils/just.d.ts +10 -0
  323. package/umd/typings/utils/markdown/addAutoGeneratedSection.d.ts +10 -0
  324. package/umd/typings/utils/markdown/addAutoGeneratedSection.test.d.ts +1 -0
  325. package/umd/typings/utils/markdown/createMarkdownChart.d.ts +41 -0
  326. package/umd/typings/utils/markdown/createMarkdownChart.test.d.ts +1 -0
  327. package/umd/typings/utils/markdown/createMarkdownTable.d.ts +7 -0
  328. package/umd/typings/utils/markdown/createMarkdownTable.test.d.ts +1 -0
  329. package/umd/typings/utils/markdown/escapeMarkdownBlock.d.ts +6 -0
  330. package/umd/typings/utils/markdown/escapeMarkdownBlock.test.d.ts +1 -0
  331. package/umd/typings/utils/markdown/extractAllBlocksFromMarkdown.d.ts +27 -0
  332. package/umd/typings/utils/markdown/extractAllBlocksFromMarkdown.test.d.ts +1 -0
  333. package/umd/typings/utils/markdown/extractAllListItemsFromMarkdown.d.ts +13 -0
  334. package/umd/typings/utils/markdown/extractAllListItemsFromMarkdown.test.d.ts +1 -0
  335. package/umd/typings/utils/markdown/extractOneBlockFromMarkdown.d.ts +19 -0
  336. package/umd/typings/utils/markdown/extractOneBlockFromMarkdown.test.d.ts +1 -0
  337. package/umd/typings/utils/markdown/prettifyMarkdown.d.ts +8 -0
  338. package/umd/typings/utils/markdown/prettifyMarkdown.test.d.ts +1 -0
  339. package/umd/typings/utils/markdown/removeContentComments.d.ts +8 -0
  340. package/umd/typings/utils/markdown/removeContentComments.test.d.ts +1 -0
  341. package/umd/typings/utils/markdown/removeMarkdownFormatting.d.ts +8 -0
  342. package/umd/typings/utils/markdown/removeMarkdownFormatting.test.d.ts +1 -0
  343. package/umd/typings/utils/markdown-json/MarkdownStructure.d.ts +25 -0
  344. package/umd/typings/utils/markdown-json/countMarkdownStructureDeepness.d.ts +7 -0
  345. package/umd/typings/utils/markdown-json/countMarkdownStructureDeepness.test.d.ts +1 -0
  346. package/umd/typings/utils/markdown-json/markdownToMarkdownStructure.d.ts +13 -0
  347. package/umd/typings/utils/markdown-json/markdownToMarkdownStructure.test.d.ts +1 -0
  348. package/umd/typings/utils/postprocessing/extractBlock.d.ts +12 -0
  349. package/umd/typings/utils/removeEmojis.d.ts +7 -0
  350. package/umd/typings/utils/removeEmojis.test.d.ts +1 -0
  351. package/umd/typings/utils/removeQuotes.d.ts +13 -0
  352. package/umd/typings/utils/removeQuotes.test.d.ts +1 -0
  353. package/umd/typings/utils/trimCodeBlock.d.ts +8 -0
  354. package/umd/typings/utils/trimCodeBlock.test.d.ts +1 -0
  355. package/umd/typings/utils/trimEndOfCodeBlock.d.ts +7 -0
  356. package/umd/typings/utils/trimEndOfCodeBlock.test.d.ts +1 -0
  357. package/umd/typings/utils/unwrapResult.d.ts +36 -0
  358. package/umd/typings/utils/unwrapResult.test.d.ts +1 -0
  359. package/umd/typings/utils/validators/url/isValidUrl.d.ts +7 -0
  360. package/umd/typings/utils/validators/url/isValidUrl.test.d.ts +1 -0
  361. package/umd/typings/version.d.ts +5 -0
  362. package/umd/typings/wizzard/Wizzard.d.ts +4 -0
  363. package/umd/typings/wizzard/sample.d.ts +6 -0
@@ -0,0 +1,39 @@
1
+ import type { Promisable } from 'type-fest';
2
+ import type { TaskProgress } from '../types/TaskProgress';
3
+ import type { ExecutionReportJson } from '../types/execution-report/ExecutionReportJson';
4
+ import type { string_name } from '../types/typeAliases';
5
+ /**
6
+ * Executor is a simple async function that takes INPUT PARAMETERs and returns result parameters _(along with all intermediate parameters and INPUT PARAMETERs = it extends input object)_.
7
+ * Executor is made by combining execution tools and promptbook library.
8
+ *
9
+ * It can be done in two ways:
10
+ * - From `PromptbookLibrary.getExecutor` method
11
+ * - `createPromptbookExecutor` utility function
12
+ *
13
+ * @see https://github.com/webgptorg/promptbook#executor
14
+ */
15
+ export type PromptbookExecutor = {
16
+ (inputParameters: Record<string_name, string>, onProgress: (taskProgress: TaskProgress) => Promisable<void>): Promise<{
17
+ /**
18
+ * Whether the execution was successful
19
+ */
20
+ isSuccessful: boolean;
21
+ /**
22
+ * Errors that occured during the execution
23
+ */
24
+ errors: Array<Error>;
25
+ /**
26
+ * The report of the execution
27
+ */
28
+ executionReport: ExecutionReportJson;
29
+ /**
30
+ * Result parameters of the execution
31
+ *
32
+ * Note: If the execution was not successful, there are only some of the result parameters
33
+ */
34
+ outputParameters: Record<string_name, string>;
35
+ }>;
36
+ };
37
+ /**
38
+ * TODO: [🧠] Should this file be in /execution or /types folder?
39
+ */
@@ -0,0 +1,37 @@
1
+ import { string_name, string_script } from '.././types/typeAliases';
2
+ import { ScriptLanguage } from '../types/ScriptLanguage';
3
+ /**
4
+ * Represents all the tools needed to EXECUTE SCRIPTs
5
+ *
6
+ * @see https://github.com/webgptorg/promptbook#script-execution-tools
7
+ */
8
+ export type ScriptExecutionTools = {
9
+ execute(options: ScriptExecutionToolsExecuteOptions): Promise<string>;
10
+ };
11
+ /**
12
+ * Input for the script execution
13
+ */
14
+ export type ScriptExecutionToolsExecuteOptions = {
15
+ /**
16
+ * Language of the script
17
+ */
18
+ scriptLanguage: ScriptLanguage;
19
+ /**
20
+ * Parameters for the script
21
+ * Theese parameters are passed to the script as variables
22
+ * For example: { "name": "John" } => const name = "John";
23
+ */
24
+ parameters: Record<string_name, string>;
25
+ /**
26
+ * The content of the script to execute
27
+ * - It can be a single statement
28
+ * - It can be multiple statements separated by semicolon and return
29
+ * - It can be a function (but you need to call it)
30
+ * - It can be IIFE (immediately invoked function expression)
31
+ * - It can use the parameters as variables and functions from global scope
32
+ */
33
+ script: string_script;
34
+ };
35
+ /**
36
+ * TODO: [🧠][💙] Distinct between options passed into ExecutionTools and to ExecutionTools.execute
37
+ */
@@ -0,0 +1,45 @@
1
+ import { number_integer, number_positive } from '../types/typeAliases';
2
+ /**
3
+ * Represents all the tools needed to interact with the user.
4
+ *
5
+ * @see https://github.com/webgptorg/promptbook#user-interface-tools
6
+ */
7
+ export type UserInterfaceTools = {
8
+ /**
9
+ * Asks the user to answer a free-text (multi-line) question
10
+ *
11
+ * @param options the question to ask
12
+ * @returns the answer from the user
13
+ */
14
+ promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
15
+ };
16
+ export type UserInterfaceToolsPromptDialogOptions = {
17
+ /**
18
+ * Prompt title
19
+ *
20
+ * Note: This is not a prompt to language model but a prompt to the user
21
+ * @example "Your name"
22
+ */
23
+ promptTitle: string;
24
+ /**
25
+ * Prompt message
26
+ *
27
+ * Note: This is not a prompt to language model but a prompt to the user
28
+ * @example "Please enter your name, including your last name, title, etc."
29
+ */
30
+ promptMessage: string;
31
+ /**
32
+ * Default value for the input/textarea
33
+ */
34
+ defaultValue: string | null;
35
+ /**
36
+ * Placeholder for the input/textarea
37
+ */
38
+ placeholder?: string;
39
+ /**
40
+ * Priority of the prompt
41
+ *
42
+ * Note: This would be reflected for example into the UI z-index of the prompt modal
43
+ */
44
+ priority: number_integer & number_positive;
45
+ };
@@ -0,0 +1,11 @@
1
+ import type { PromptbookExecutor } from './PromptbookExecutor';
2
+ /**
3
+ * Asserts that the execution of a promptnook is successful
4
+ *
5
+ * @param executionResult - The partial result of the promptnook execution
6
+ * @throws Error - If the execution is not successful or if multiple errors occurred
7
+ */
8
+ export declare function assertsExecutionSuccessful(executionResult: Pick<Awaited<ReturnType<PromptbookExecutor>>, 'isSuccessful' | 'errors'>): void;
9
+ /**
10
+ * TODO: [🧠] Can this return type be better typed than void
11
+ */
@@ -0,0 +1,41 @@
1
+ import { PromptbookJson } from '../_packages/types.index';
2
+ import { ExecutionTools } from './ExecutionTools';
3
+ import { PromptbookExecutor } from './PromptbookExecutor';
4
+ type CreatePromptbookExecutorSettings = {
5
+ /**
6
+ * When executor does not satisfy expectations it will be retried this amount of times
7
+ *
8
+ * @default 3
9
+ */
10
+ readonly maxExecutionAttempts: number;
11
+ };
12
+ /**
13
+ * Options for creating a promptbook executor
14
+ */
15
+ interface CreatePromptbookExecutorOptions {
16
+ /**
17
+ * The promptbook to be executed
18
+ */
19
+ readonly promptbook: PromptbookJson;
20
+ /**
21
+ * The execution tools to be used during the execution of the PROMPTBOOK
22
+ */
23
+ readonly tools: ExecutionTools;
24
+ /**
25
+ * Optional settings for the PROMPTBOOK executor
26
+ */
27
+ readonly settings?: Partial<CreatePromptbookExecutorSettings>;
28
+ }
29
+ /**
30
+ * Creates executor function from promptbook and execution tools.
31
+ *
32
+ * Note: Consider using getExecutor method of the library instead of using this function
33
+ */
34
+ export declare function createPromptbookExecutor(options: CreatePromptbookExecutorOptions): PromptbookExecutor;
35
+ export {};
36
+ /**
37
+ * TODO: [🧠] When not meet expectations in PROMPT_DIALOG, make some way to tell the user
38
+ * TODO: [👧] Strongly type the executors to avoid need of remove nullables whtn noUncheckedIndexedAccess in tsconfig.json
39
+ * Note: CreatePromptbookExecutorOptions are just connected to PromptbookExecutor so do not extract to types folder
40
+ * TODO: [🧠][3] transparent = (report intermediate parameters) / opaque execution = (report only output parameters) progress reporting mode
41
+ */
@@ -0,0 +1,22 @@
1
+ import { Prompt } from '../../../../types/Prompt';
2
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
3
+ import { NaturalExecutionTools } from '../../../NaturalExecutionTools';
4
+ import { PromptChatResult, PromptCompletionResult } from '../../../PromptResult';
5
+ /**
6
+ * Mocked execution Tools for just echoing the requests for testing purposes.
7
+ */
8
+ export declare class MockedEchoNaturalExecutionTools implements NaturalExecutionTools {
9
+ private readonly options;
10
+ constructor(options: CommonExecutionToolsOptions);
11
+ /**
12
+ * Mocks chat model
13
+ */
14
+ gptChat(prompt: Prompt): Promise<PromptChatResult>;
15
+ /**
16
+ * Mocks completion model
17
+ */
18
+ gptComplete(prompt: Prompt): Promise<PromptCompletionResult>;
19
+ }
20
+ /**
21
+ * TODO: Allow in spaceTrim: nesting with > ${block(prompt.request)}
22
+ */
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * TODO: [🧠] What should be name of this test "MockedEchoExecutionTools.test.ts" or "createPromptbookExecutor.test.ts"
4
+ */
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * TODO: [🧠] What should be name of this test "MockedEchoExecutionTools.test.ts" or "createPromptbookExecutor.test.ts"
4
+ */
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * TODO: [🧠] What should be name of this test "MockedEchoExecutionTools.test.ts" or "createPromptbookExecutor.test.ts"
4
+ */
@@ -0,0 +1,28 @@
1
+ import type { Prompt } from '../../../../types/Prompt';
2
+ import type { NaturalExecutionTools } from '../../../NaturalExecutionTools';
3
+ import type { PromptChatResult, PromptCompletionResult } from '../../../PromptResult';
4
+ import type { OpenAiExecutionToolsOptions } from './OpenAiExecutionToolsOptions';
5
+ /**
6
+ * Execution Tools for calling OpenAI API.
7
+ */
8
+ export declare class OpenAiExecutionTools implements NaturalExecutionTools {
9
+ private readonly options;
10
+ /**
11
+ * OpenAI API client.
12
+ */
13
+ private readonly openai;
14
+ constructor(options: OpenAiExecutionToolsOptions);
15
+ /**
16
+ * Calls OpenAI API to use a chat model.
17
+ */
18
+ gptChat(prompt: Prompt): Promise<PromptChatResult>;
19
+ /**
20
+ * Calls OpenAI API to use a complete model.
21
+ */
22
+ gptComplete(prompt: Prompt): Promise<PromptCompletionResult>;
23
+ }
24
+ /**
25
+
26
+ * TODO: Maybe Create some common util for gptChat and gptComplete
27
+ * TODO: Maybe make custom OpenaiError
28
+ */
@@ -0,0 +1,16 @@
1
+ import { string_token } from '../../../.././types/typeAliases';
2
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
3
+ /**
4
+ * Options for OpenAiExecutionTools
5
+ */
6
+ export type OpenAiExecutionToolsOptions = CommonExecutionToolsOptions & {
7
+ /**
8
+ * OpenAI API key
9
+ */
10
+ openAiApiKey: string_token;
11
+ /**
12
+ * A unique identifier representing your end-user, which can help OpenAI to monitor
13
+ * and detect abuse. [Learn more](/docs/guides/safety-best-practices/end-user-ids).
14
+ */
15
+ user?: string_token;
16
+ };
@@ -0,0 +1,3 @@
1
+ import type OpenAI from 'openai';
2
+ import type { PromptResult } from '../../../PromptResult';
3
+ export declare function computeOpenaiUsage(rawResponse: Pick<OpenAI.Chat.Completions.ChatCompletion | OpenAI.Completions.Completion, 'model' | 'usage'>): PromptResult['usage'];
@@ -0,0 +1,35 @@
1
+ import { Prompt } from '../../../../types/Prompt';
2
+ import { NaturalExecutionTools } from '../../../NaturalExecutionTools';
3
+ import { PromptChatResult, PromptCompletionResult } from '../../../PromptResult';
4
+ import { RemoteNaturalExecutionToolsOptions } from './RemoteNaturalExecutionToolsOptions';
5
+ /**
6
+ * Remote server is a proxy server that uses its execution tools internally and exposes the executor interface externally.
7
+ *
8
+ * You can simply use `RemoteExecutionTools` on client-side javascript and connect to your remote server.
9
+ * This is useful to make all logic on browser side but not expose your API keys or no need to use customer's GPU.
10
+ *
11
+ * @see https://github.com/webgptorg/promptbook#remote-server
12
+ */
13
+ export declare class RemoteNaturalExecutionTools implements NaturalExecutionTools {
14
+ private readonly options;
15
+ constructor(options: RemoteNaturalExecutionToolsOptions);
16
+ /**
17
+ * Creates a connection to the remote proxy server.
18
+ */
19
+ private makeConnection;
20
+ /**
21
+ * Calls remote proxy server to use a chat model.
22
+ */
23
+ gptChat(prompt: Prompt): Promise<PromptChatResult>;
24
+ /**
25
+ * Calls remote proxy server to use a completion model.
26
+ */
27
+ gptComplete(prompt: Prompt): Promise<PromptCompletionResult>;
28
+ /**
29
+ * Calls remote proxy server to use both completion or chat model.
30
+ */
31
+ private gptCommon;
32
+ }
33
+ /**
34
+ * TODO: [🤹‍♂️] RemoteNaturalExecutionTools should extend Destroyable and implement IDestroyable
35
+ */
@@ -0,0 +1,23 @@
1
+ import type { client_id, string_uri } from '../../../.././types/typeAliases';
2
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
3
+ /**
4
+ * Options for RemoteNaturalExecutionTools
5
+ */
6
+ export type RemoteNaturalExecutionToolsOptions = CommonExecutionToolsOptions & {
7
+ /**
8
+ * URL of the remote PROMPTBOOK server
9
+ * On this server will be connected to the socket.io server
10
+ */
11
+ readonly remoteUrl: URL;
12
+ /**
13
+ * Path for the Socket.io server to listen
14
+ *
15
+ * @default '/socket.io'
16
+ * @example '/promptbook/socket.io'
17
+ */
18
+ readonly path: string_uri;
19
+ /**
20
+ * Your client ID
21
+ */
22
+ readonly clientId: client_id;
23
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Socket.io error for remote text generation
3
+ *
4
+ * This is sent from server to client when error occurs and stops the process
5
+ */
6
+ export interface Promptbook_Server_Error {
7
+ /**
8
+ * The error message which caused the error
9
+ */
10
+ readonly errorMessage: string;
11
+ }
@@ -0,0 +1,12 @@
1
+ import { TaskProgress } from '../../../../../types/TaskProgress';
2
+ /**
3
+ * Socket.io progress for remote text generation
4
+ *
5
+ * This is sent from server to client arbitrarily and may be sent multiple times
6
+ */
7
+ export interface Promptbook_Server_Progress {
8
+ /**
9
+ * The progress of text generation
10
+ */
11
+ readonly taskProgress: TaskProgress;
12
+ }
@@ -0,0 +1,17 @@
1
+ import type { client_id } from '../../../../../types/typeAliases';
2
+ import type { Prompt } from '../../../../../types/Prompt';
3
+ /**
4
+ * Socket.io progress for remote text generation
5
+ *
6
+ * This is a request from client to server
7
+ */
8
+ export interface Promptbook_Server_Request {
9
+ /**
10
+ * Client responsible for the requests
11
+ */
12
+ readonly clientId: client_id;
13
+ /**
14
+ * The Prompt to execute
15
+ */
16
+ readonly prompt: Prompt;
17
+ }
@@ -0,0 +1,12 @@
1
+ import { PromptResult } from '../../../../PromptResult';
2
+ /**
3
+ * Socket.io error for remote text generation
4
+ *
5
+ * This is sent from server to client when the generated text is completed
6
+ */
7
+ export interface Promptbook_Server_Response {
8
+ /**
9
+ * The result of the prompt
10
+ */
11
+ promptResult: PromptResult;
12
+ }
@@ -0,0 +1,27 @@
1
+ import type { PromptbookLibrary } from '../../../../../library/PromptbookLibrary';
2
+ import type { client_id, string_uri } from '../../../../../types/typeAliases';
3
+ import type { CommonExecutionToolsOptions } from '../../../../CommonExecutionToolsOptions';
4
+ import type { NaturalExecutionTools } from '../../../../NaturalExecutionTools';
5
+ export type RemoteServerOptions = CommonExecutionToolsOptions & {
6
+ /**
7
+ * Port on which the server will listen
8
+ */
9
+ readonly port: number;
10
+ /**
11
+ * Path for the Socket.io server to listen
12
+ *
13
+ * @default '/socket.io'
14
+ * @example '/promptbook/socket.io'
15
+ */
16
+ readonly path: string_uri;
17
+ /**
18
+ * Promptbook library to use
19
+ *
20
+ * This is used to checkl validity of the prompt to prevent DDoS
21
+ */
22
+ readonly library: PromptbookLibrary;
23
+ /**
24
+ * Creates natural execution tools for each client
25
+ */
26
+ createNaturalExecutionTools(clientId: client_id): NaturalExecutionTools;
27
+ };
@@ -0,0 +1,17 @@
1
+ import type { IDestroyable } from 'destroyable';
2
+ import { RemoteServerOptions } from './interfaces/RemoteServerOptions';
3
+ /**
4
+ * Remote server is a proxy server that uses its execution tools internally and exposes the executor interface externally.
5
+ *
6
+ * You can simply use `RemoteExecutionTools` on client-side javascript and connect to your remote server.
7
+ * This is useful to make all logic on browser side but not expose your API keys or no need to use customer's GPU.
8
+ *
9
+ * @see https://github.com/webgptorg/promptbook#remote-server
10
+ */
11
+ export declare function startRemoteServer(options: RemoteServerOptions): IDestroyable;
12
+ /**
13
+ * TODO: Handle progress - support streaming
14
+ * TODO: [🤹‍♂️] Do not hang up immediately but wait until client closes OR timeout
15
+ * TODO: [🤹‍♂️] Timeout on chat to free up resources
16
+ * TODO: [🃏] Pass here some security token to prevent malitious usage and/or DDoS
17
+ */
@@ -0,0 +1,20 @@
1
+ import { ScriptExecutionTools, ScriptExecutionToolsExecuteOptions } from '../../../ScriptExecutionTools';
2
+ import { JavascriptExecutionToolsOptions } from './JavascriptExecutionToolsOptions';
3
+ /**
4
+ * ScriptExecutionTools for JavaScript implemented via eval
5
+ *
6
+ * Warning: It is used for testing and mocking
7
+ * **NOT intended to use in the production** due to its unsafe nature, use `JavascriptExecutionTools` instead.
8
+ */
9
+ export declare class JavascriptEvalExecutionTools implements ScriptExecutionTools {
10
+ private readonly options;
11
+ constructor(options: JavascriptExecutionToolsOptions);
12
+ /**
13
+ * Executes a JavaScript
14
+ */
15
+ execute(options: ScriptExecutionToolsExecuteOptions): Promise<string>;
16
+ }
17
+ /**
18
+ * TODO: Put predefined functions (like removeQuotes, spaceTrim, etc.) into annotation OR pass into constructor
19
+ * TODO: [🧠][💙] Distinct between options passed into ExecutionTools and to ExecutionTools.execute
20
+ */
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * TODO: !! Make shared test between JavascriptEvalExecutionTools and JavascriptExecutionTools to test the same functionality when implemented via vm2
4
+ */
@@ -0,0 +1,20 @@
1
+ import { ScriptExecutionTools, ScriptExecutionToolsExecuteOptions } from '../../../ScriptExecutionTools';
2
+ import { JavascriptExecutionToolsOptions } from './JavascriptExecutionToolsOptions';
3
+ /**
4
+ * ScriptExecutionTools for JavaScript implemented via vm2
5
+ *
6
+ * Warning: This is not implemented yet
7
+ */
8
+ export declare class JavascriptExecutionTools implements ScriptExecutionTools {
9
+ private readonly options;
10
+ constructor(options: JavascriptExecutionToolsOptions);
11
+ /**
12
+ * Executes a JavaScript
13
+ */
14
+ execute(options: ScriptExecutionToolsExecuteOptions): Promise<string>;
15
+ }
16
+ /**
17
+ * TODO: !! Pass isVerbose to constructor and use it
18
+ * TODO: !! Probbably make some common util createStatementToEvaluate
19
+ * TODO: !! Implement via vm2
20
+ */
@@ -0,0 +1,22 @@
1
+ import type { Promisable } from 'type-fest';
2
+ import type { string_javascript_name } from '../../../../types/typeAliases';
3
+ import type { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
4
+ /**
5
+ * Options for javascript execution
6
+ */
7
+ export type JavascriptExecutionToolsOptions = CommonExecutionToolsOptions & {
8
+ /**
9
+ * Functions to be executed in the JavaScript evaluation.
10
+ *
11
+ * This can be used in two ways:
12
+ * 1. To provide custom postprocessing functions. For this case function must receive one string and return a (promise of) string.
13
+ * 2. As environment for the ECECUTE SCRIPT, For this case function can be any function. [0]
14
+ *
15
+ * Note: There are also some built-in functions available:
16
+ * @see ./JavascriptEvalExecutionTools.ts
17
+ */
18
+ functions?: Record<string_javascript_name, ((value: string) => Promisable<string>) | Function>;
19
+ };
20
+ /**
21
+ * TODO: [🧠][💙] Distinct between options passed into ExecutionTools and to ExecutionTools.execute
22
+ */
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Does nothing, but preserves the function in the bundle
3
+ * Compiler is tricked into thinking the function is used
4
+ *
5
+ * @param value any function to preserve
6
+ * @returns nothing
7
+ */
8
+ export declare function preserve(func: (...params: Array<any>) => unknown): void;
9
+ /**
10
+ * TODO: !! [1] This maybe does memory leak
11
+ */
@@ -0,0 +1,15 @@
1
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
2
+ import { ScriptExecutionTools, ScriptExecutionToolsExecuteOptions } from '../../../ScriptExecutionTools';
3
+ /**
4
+ * ScriptExecutionTools for Python
5
+ *
6
+ * Warning: This is not implemented yet
7
+ */
8
+ export declare class PythonExecutionTools implements ScriptExecutionTools {
9
+ private readonly options;
10
+ constructor(options: CommonExecutionToolsOptions);
11
+ /**
12
+ * Executes a Python
13
+ */
14
+ execute(options: ScriptExecutionToolsExecuteOptions): Promise<string>;
15
+ }
@@ -0,0 +1,15 @@
1
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
2
+ import { ScriptExecutionTools, ScriptExecutionToolsExecuteOptions } from '../../../ScriptExecutionTools';
3
+ /**
4
+ * ScriptExecutionTools for TypeScript
5
+ *
6
+ * Warning: This is not implemented yet
7
+ */
8
+ export declare class TypescriptExecutionTools implements ScriptExecutionTools {
9
+ private readonly options;
10
+ constructor(options: CommonExecutionToolsOptions);
11
+ /**
12
+ * Executes a TypeScript
13
+ */
14
+ execute(options: ScriptExecutionToolsExecuteOptions): Promise<string>;
15
+ }
@@ -0,0 +1,14 @@
1
+ import { UserInterfaceTools, UserInterfaceToolsPromptDialogOptions } from '../../../UserInterfaceTools';
2
+ import { CallbackInterfaceToolsOptions } from './CallbackInterfaceToolsOptions';
3
+ /**
4
+ * Delagates the user interaction to a async callback function
5
+ * You need to provide your own implementation of this callback function and its bind to UI.
6
+ */
7
+ export declare class CallbackInterfaceTools implements UserInterfaceTools {
8
+ private readonly options;
9
+ constructor(options: CallbackInterfaceToolsOptions);
10
+ /**
11
+ * Trigger the custom callback function
12
+ */
13
+ promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
14
+ }
@@ -0,0 +1,12 @@
1
+ import { Promisable } from 'type-fest';
2
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
3
+ import { UserInterfaceToolsPromptDialogOptions } from '../../../UserInterfaceTools';
4
+ /**
5
+ * Options for CallbackInterfaceTools
6
+ */
7
+ export type CallbackInterfaceToolsOptions = CommonExecutionToolsOptions & {
8
+ /**
9
+ * The callback function to be called when promptDialog is called
10
+ */
11
+ callback(prompt: UserInterfaceToolsPromptDialogOptions): Promisable<string>;
12
+ };
@@ -0,0 +1,16 @@
1
+ import { CommonExecutionToolsOptions } from '../../../CommonExecutionToolsOptions';
2
+ import { UserInterfaceTools, UserInterfaceToolsPromptDialogOptions } from '../../../UserInterfaceTools';
3
+ /**
4
+ * Wrapper around `window.prompt` synchronous function that interacts with the user via browser prompt
5
+ *
6
+ * Warning: It is used for testing and mocking
7
+ * **NOT intended to use in the production** due to its synchronous nature.
8
+ */
9
+ export declare class SimplePromptInterfaceTools implements UserInterfaceTools {
10
+ private readonly options;
11
+ constructor(options: CommonExecutionToolsOptions);
12
+ /**
13
+ * Trigger window.PROMPT DIALOG
14
+ */
15
+ promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
16
+ }
@@ -0,0 +1,4 @@
1
+ import { Promisable } from 'type-fest';
2
+ export type AutomaticTranslator = {
3
+ translate(message: string): Promisable<string>;
4
+ };
@@ -0,0 +1,9 @@
1
+ import { AutomaticTranslator } from './AutomaticTranslator';
2
+ /**
3
+ * This will wrap an automatic translator and log each translation into the console
4
+ */
5
+ export declare class DebugAutomaticTranslator implements AutomaticTranslator {
6
+ private readonly automaticTranslator;
7
+ constructor(automaticTranslator: AutomaticTranslator);
8
+ translate(message: string): Promise<string>;
9
+ }