@promptbook/remote-client 0.61.0-2 → 0.61.0-20

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 (359) hide show
  1. package/esm/index.es.js +37 -4
  2. package/esm/index.es.js.map +1 -1
  3. package/esm/typings/promptbook-collection/index.d.ts +200 -30
  4. package/esm/typings/src/_packages/core.index.d.ts +7 -2
  5. package/esm/typings/src/_packages/execute-javascript.index.d.ts +1 -1
  6. package/esm/typings/src/_packages/node.index.d.ts +2 -1
  7. package/esm/typings/src/_packages/types.index.d.ts +11 -7
  8. package/esm/typings/src/_packages/utils.index.d.ts +8 -6
  9. package/esm/typings/src/cli/cli-commands/hello.d.ts +3 -0
  10. package/esm/typings/src/cli/cli-commands/make.d.ts +3 -0
  11. package/esm/typings/src/cli/cli-commands/prettify.d.ts +3 -0
  12. package/esm/typings/src/cli/promptbookCli.d.ts +1 -0
  13. package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
  14. package/esm/typings/src/collection/SimplePipelineCollection.d.ts +10 -10
  15. package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +8 -7
  16. package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +2 -2
  17. package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +2 -3
  18. package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +2 -2
  19. package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +4 -2
  20. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -0
  21. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +42 -14
  22. package/esm/typings/src/config.d.ts +38 -1
  23. package/esm/typings/src/config.test.d.ts +4 -0
  24. package/esm/typings/src/conversion/pipelineJsonToString.d.ts +1 -1
  25. package/esm/typings/src/conversion/pipelineStringToJson.d.ts +9 -5
  26. package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +5 -3
  27. package/esm/typings/src/conversion/prettify/PrettifyOptions.d.ts +2 -2
  28. package/esm/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
  29. package/esm/typings/src/conversion/utils/renameParameter.d.ts +3 -3
  30. package/esm/typings/src/conversion/utils/stringifyPipelineJson.d.ts +13 -0
  31. package/esm/typings/src/conversion/validation/_importPipeline.d.ts +12 -3
  32. package/esm/typings/src/conversion/validation/validatePipeline.d.ts +10 -1
  33. package/esm/typings/src/errors/EnvironmentMismatchError.d.ts +7 -0
  34. package/esm/typings/src/errors/LimitReachedError.d.ts +7 -0
  35. package/esm/typings/src/errors/VersionMismatchError.d.ts +8 -0
  36. package/esm/typings/src/execution/CommonExecutionToolsOptions.d.ts +1 -0
  37. package/esm/typings/src/execution/LlmExecutionTools.d.ts +10 -8
  38. package/esm/typings/src/execution/PipelineExecutor.d.ts +9 -8
  39. package/esm/typings/src/execution/PromptResult.d.ts +28 -58
  40. package/esm/typings/src/execution/PromptResultUsage.d.ts +26 -0
  41. package/esm/typings/src/execution/ScriptExecutionTools.d.ts +5 -4
  42. package/esm/typings/src/execution/UncertainNumber.d.ts +18 -0
  43. package/esm/typings/src/execution/UserInterfaceTools.d.ts +5 -5
  44. package/esm/typings/src/execution/createPipelineExecutor.d.ts +19 -3
  45. package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +2 -2
  46. package/esm/typings/src/execution/utils/addUsage.d.ts +58 -2
  47. package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
  48. package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -1
  49. package/esm/typings/src/execution/utils/uncertainNumber.d.ts +1 -1
  50. package/esm/typings/src/execution/utils/usageToWorktime.d.ts +2 -2
  51. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
  52. package/esm/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -1
  53. package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -1
  54. package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +2 -1
  55. package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +1 -0
  56. package/esm/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +1 -1
  57. package/esm/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +3 -0
  58. package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +27 -0
  59. package/esm/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +18 -0
  60. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +9 -23
  61. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +3 -0
  62. package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +8 -14
  63. package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +30 -0
  64. package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +10 -0
  65. package/esm/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +11 -0
  66. package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +29 -0
  67. package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +10 -0
  68. package/esm/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +16 -0
  69. package/esm/typings/src/llm-providers/_common/utils/count-total-cost/LlmExecutionToolsWithTotalCost.d.ts +11 -0
  70. package/esm/typings/src/llm-providers/_common/utils/count-total-cost/countTotalCost.d.ts +14 -0
  71. package/esm/typings/src/llm-providers/_common/utils/count-total-cost/limitTotalCost.d.ts +32 -0
  72. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +3 -2
  73. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
  74. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +3 -3
  75. package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -0
  76. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -4
  77. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +5 -5
  78. package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +3 -0
  79. package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +3 -0
  80. package/esm/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +1 -1
  81. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -5
  82. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +7 -7
  83. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +12 -8
  84. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +7 -6
  85. package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +1 -1
  86. package/esm/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
  87. package/esm/typings/src/llm-providers/openai/computeUsage.d.ts +2 -2
  88. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +3 -2
  89. package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +3 -0
  90. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +9 -7
  91. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +1 -1
  92. package/esm/typings/src/personas/preparePersona.d.ts +15 -0
  93. package/esm/typings/src/prepare/PrepareOptions.d.ts +22 -0
  94. package/esm/typings/src/prepare/isPipelinePrepared.d.ts +10 -0
  95. package/esm/typings/src/prepare/preparePipeline.d.ts +18 -0
  96. package/esm/typings/src/prepare/unpreparePipeline.d.ts +9 -0
  97. package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +1 -1
  98. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  99. package/esm/typings/src/scripting/javascript/utils/unknownToString.d.ts +2 -1
  100. package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +25 -0
  101. package/esm/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
  102. package/esm/typings/src/storage/files-storage/FilesStorage.d.ts +30 -0
  103. package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +13 -0
  104. package/esm/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +7 -0
  105. package/esm/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
  106. package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +9 -0
  107. package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +9 -0
  108. package/esm/typings/src/storage/memory/MemoryStorage.d.ts +34 -0
  109. package/esm/typings/src/storage/utils/PrefixStorage.d.ts +26 -0
  110. package/esm/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +11 -0
  111. package/esm/typings/src/types/ModelRequirements.d.ts +71 -11
  112. package/esm/typings/src/types/ModelVariant.d.ts +14 -0
  113. package/esm/typings/src/types/PipelineJson/Expectations.d.ts +6 -2
  114. package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +67 -0
  115. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +24 -0
  116. package/esm/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +9 -1
  117. package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +38 -0
  118. package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +29 -4
  119. package/esm/typings/src/types/PipelineJson/PreparationJson.d.ts +21 -0
  120. package/esm/typings/src/types/PipelineJson/PromptDialogJson.d.ts +5 -0
  121. package/esm/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +5 -1
  122. package/esm/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +13 -4
  123. package/esm/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +11 -2
  124. package/esm/typings/src/types/PipelineJson/ScriptJson.d.ts +2 -0
  125. package/esm/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +2 -0
  126. package/esm/typings/src/types/PipelineString.d.ts +1 -1
  127. package/esm/typings/src/types/Prompt.d.ts +54 -10
  128. package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +4 -4
  129. package/esm/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +3 -3
  130. package/esm/typings/src/types/execution-report/countWorkingDuration.d.ts +1 -1
  131. package/esm/typings/src/types/typeAliases.d.ts +114 -15
  132. package/esm/typings/src/utils/FromtoItems.d.ts +3 -3
  133. package/esm/typings/src/utils/currentDate.d.ts +7 -0
  134. package/esm/typings/src/utils/deepClone.d.ts +9 -0
  135. package/esm/typings/src/utils/deepFreeze.d.ts +22 -0
  136. package/esm/typings/src/utils/emojis.d.ts +2 -2
  137. package/esm/typings/src/utils/extractParameters.d.ts +2 -2
  138. package/esm/typings/src/utils/formatNumber.d.ts +1 -1
  139. package/esm/typings/src/utils/isRunningInWhatever.d.ts +3 -0
  140. package/esm/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +3 -3
  141. package/esm/typings/src/utils/markdown/createMarkdownChart.d.ts +7 -10
  142. package/esm/typings/src/utils/markdown/createMarkdownTable.d.ts +1 -1
  143. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
  144. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +9 -2
  145. package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
  146. package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +3 -3
  147. package/esm/typings/src/utils/normalization/parseKeywords.d.ts +2 -1
  148. package/esm/typings/src/utils/organization/TODO_USE.d.ts +12 -0
  149. package/esm/typings/src/utils/organization/TODO_any.d.ts +6 -0
  150. package/esm/typings/src/utils/organization/TODO_object.d.ts +6 -0
  151. package/esm/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
  152. package/esm/typings/src/utils/organization/___.d.ts +6 -0
  153. package/esm/typings/src/utils/{just.d.ts → organization/just.d.ts} +5 -1
  154. package/esm/typings/src/utils/organization/keepUnused.d.ts +16 -0
  155. package/esm/typings/src/utils/organization/really_any.d.ts +6 -0
  156. package/esm/typings/src/utils/organization/really_unknown.d.ts +6 -0
  157. package/esm/typings/src/utils/random/randomSeed.d.ts +7 -0
  158. package/{umd/typings/src/execution → esm/typings/src}/utils/replaceParameters.d.ts +2 -4
  159. package/esm/typings/src/utils/replaceParameters.test.d.ts +1 -0
  160. package/esm/typings/src/utils/sets/difference.d.ts +3 -0
  161. package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +2 -1
  162. package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -1
  163. package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -1
  164. package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +2 -1
  165. package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +2 -1
  166. package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +2 -1
  167. package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +2 -1
  168. package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +2 -1
  169. package/package.json +2 -2
  170. package/umd/index.umd.js +37 -4
  171. package/umd/index.umd.js.map +1 -1
  172. package/umd/typings/promptbook-collection/index.d.ts +200 -30
  173. package/umd/typings/src/_packages/core.index.d.ts +7 -2
  174. package/umd/typings/src/_packages/execute-javascript.index.d.ts +1 -1
  175. package/umd/typings/src/_packages/node.index.d.ts +2 -1
  176. package/umd/typings/src/_packages/types.index.d.ts +11 -7
  177. package/umd/typings/src/_packages/utils.index.d.ts +8 -6
  178. package/umd/typings/src/cli/cli-commands/hello.d.ts +3 -0
  179. package/umd/typings/src/cli/cli-commands/make.d.ts +3 -0
  180. package/umd/typings/src/cli/cli-commands/prettify.d.ts +3 -0
  181. package/umd/typings/src/cli/promptbookCli.d.ts +1 -0
  182. package/umd/typings/src/collection/PipelineCollection.d.ts +1 -1
  183. package/umd/typings/src/collection/SimplePipelineCollection.d.ts +10 -10
  184. package/umd/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +8 -7
  185. package/umd/typings/src/collection/constructors/createCollectionFromUrl.d.ts +2 -2
  186. package/umd/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +2 -3
  187. package/umd/typings/src/commands/MODEL/ModelCommand.d.ts +2 -2
  188. package/umd/typings/src/commands/PERSONA/PersonaCommand.d.ts +4 -2
  189. package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -0
  190. package/umd/typings/src/commands/_common/types/CommandParser.d.ts +42 -14
  191. package/umd/typings/src/config.d.ts +38 -1
  192. package/umd/typings/src/config.test.d.ts +4 -0
  193. package/umd/typings/src/conversion/pipelineJsonToString.d.ts +1 -1
  194. package/umd/typings/src/conversion/pipelineStringToJson.d.ts +9 -5
  195. package/umd/typings/src/conversion/pipelineStringToJsonSync.d.ts +5 -3
  196. package/umd/typings/src/conversion/prettify/PrettifyOptions.d.ts +2 -2
  197. package/umd/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
  198. package/umd/typings/src/conversion/utils/renameParameter.d.ts +3 -3
  199. package/umd/typings/src/conversion/utils/stringifyPipelineJson.d.ts +13 -0
  200. package/umd/typings/src/conversion/utils/stringifyPipelineJson.test.d.ts +1 -0
  201. package/umd/typings/src/conversion/validation/_importPipeline.d.ts +12 -3
  202. package/umd/typings/src/conversion/validation/validatePipeline.d.ts +10 -1
  203. package/umd/typings/src/errors/EnvironmentMismatchError.d.ts +7 -0
  204. package/umd/typings/src/errors/LimitReachedError.d.ts +7 -0
  205. package/umd/typings/src/errors/VersionMismatchError.d.ts +8 -0
  206. package/umd/typings/src/execution/CommonExecutionToolsOptions.d.ts +1 -0
  207. package/umd/typings/src/execution/LlmExecutionTools.d.ts +10 -8
  208. package/umd/typings/src/execution/PipelineExecutor.d.ts +9 -8
  209. package/umd/typings/src/execution/PromptResult.d.ts +28 -58
  210. package/umd/typings/src/execution/PromptResultUsage.d.ts +26 -0
  211. package/umd/typings/src/execution/ScriptExecutionTools.d.ts +5 -4
  212. package/umd/typings/src/execution/UncertainNumber.d.ts +18 -0
  213. package/umd/typings/src/execution/UserInterfaceTools.d.ts +5 -5
  214. package/umd/typings/src/execution/createPipelineExecutor.d.ts +19 -3
  215. package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +2 -2
  216. package/umd/typings/src/execution/utils/addUsage.d.ts +58 -2
  217. package/umd/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
  218. package/umd/typings/src/execution/utils/forEachAsync.d.ts +1 -1
  219. package/umd/typings/src/execution/utils/uncertainNumber.d.ts +1 -1
  220. package/umd/typings/src/execution/utils/usageToWorktime.d.ts +2 -2
  221. package/umd/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
  222. package/umd/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -1
  223. package/umd/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -1
  224. package/umd/typings/src/formats/list/ListFormatDefinition.d.ts +2 -1
  225. package/umd/typings/src/formats/xml/XmlFormatDefinition.d.ts +1 -0
  226. package/umd/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +1 -1
  227. package/umd/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +3 -0
  228. package/umd/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +27 -0
  229. package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +18 -0
  230. package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts +1 -0
  231. package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +9 -23
  232. package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +3 -0
  233. package/umd/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +8 -14
  234. package/umd/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +30 -0
  235. package/umd/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +10 -0
  236. package/umd/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +11 -0
  237. package/umd/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +29 -0
  238. package/umd/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +10 -0
  239. package/umd/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +16 -0
  240. package/umd/typings/src/llm-providers/_common/utils/count-total-cost/LlmExecutionToolsWithTotalCost.d.ts +11 -0
  241. package/umd/typings/src/llm-providers/_common/utils/count-total-cost/countTotalCost.d.ts +14 -0
  242. package/umd/typings/src/llm-providers/_common/utils/count-total-cost/limitTotalCost.d.ts +32 -0
  243. package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +3 -2
  244. package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
  245. package/umd/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +3 -3
  246. package/umd/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -0
  247. package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -4
  248. package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +5 -5
  249. package/umd/typings/src/llm-providers/azure-openai/playground/playground.d.ts +3 -0
  250. package/umd/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +3 -0
  251. package/umd/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +1 -1
  252. package/umd/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -5
  253. package/umd/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +7 -7
  254. package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +12 -8
  255. package/umd/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +7 -6
  256. package/umd/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +1 -1
  257. package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
  258. package/umd/typings/src/llm-providers/openai/computeUsage.d.ts +2 -2
  259. package/umd/typings/src/llm-providers/openai/openai-models.d.ts +3 -2
  260. package/umd/typings/src/llm-providers/openai/playground/playground.d.ts +3 -0
  261. package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +9 -7
  262. package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +1 -1
  263. package/umd/typings/src/personas/preparePersona.d.ts +15 -0
  264. package/umd/typings/src/personas/preparePersona.test.d.ts +1 -0
  265. package/umd/typings/src/prepare/PrepareOptions.d.ts +22 -0
  266. package/umd/typings/src/prepare/isPipelinePrepared.d.ts +10 -0
  267. package/umd/typings/src/prepare/isPipelinePrepared.test.d.ts +1 -0
  268. package/umd/typings/src/prepare/preparePipeline.d.ts +18 -0
  269. package/umd/typings/src/prepare/unpreparePipeline.d.ts +9 -0
  270. package/umd/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +1 -1
  271. package/umd/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  272. package/umd/typings/src/scripting/javascript/utils/unknownToString.d.ts +2 -1
  273. package/umd/typings/src/storage/_common/PromptbookStorage.d.ts +25 -0
  274. package/umd/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
  275. package/umd/typings/src/storage/files-storage/FilesStorage.d.ts +30 -0
  276. package/umd/typings/src/storage/files-storage/FilesStorageOptions.d.ts +13 -0
  277. package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +7 -0
  278. package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
  279. package/umd/typings/src/storage/local-storage/getLocalStorage.d.ts +9 -0
  280. package/umd/typings/src/storage/local-storage/getSessionStorage.d.ts +9 -0
  281. package/umd/typings/src/storage/memory/MemoryStorage.d.ts +34 -0
  282. package/umd/typings/src/storage/utils/PrefixStorage.d.ts +26 -0
  283. package/umd/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +11 -0
  284. package/umd/typings/src/types/ModelRequirements.d.ts +71 -11
  285. package/umd/typings/src/types/ModelVariant.d.ts +14 -0
  286. package/umd/typings/src/types/PipelineJson/Expectations.d.ts +6 -2
  287. package/umd/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +67 -0
  288. package/umd/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +24 -0
  289. package/umd/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +9 -1
  290. package/umd/typings/src/types/PipelineJson/PersonaJson.d.ts +38 -0
  291. package/umd/typings/src/types/PipelineJson/PipelineJson.d.ts +29 -4
  292. package/umd/typings/src/types/PipelineJson/PreparationJson.d.ts +21 -0
  293. package/umd/typings/src/types/PipelineJson/PromptDialogJson.d.ts +5 -0
  294. package/umd/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +5 -1
  295. package/umd/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +13 -4
  296. package/umd/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +11 -2
  297. package/umd/typings/src/types/PipelineJson/ScriptJson.d.ts +2 -0
  298. package/umd/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +2 -0
  299. package/umd/typings/src/types/PipelineString.d.ts +1 -1
  300. package/umd/typings/src/types/Prompt.d.ts +54 -10
  301. package/umd/typings/src/types/execution-report/ExecutionReportJson.d.ts +4 -4
  302. package/umd/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +3 -3
  303. package/umd/typings/src/types/execution-report/countWorkingDuration.d.ts +1 -1
  304. package/umd/typings/src/types/typeAliases.d.ts +114 -15
  305. package/umd/typings/src/utils/FromtoItems.d.ts +3 -3
  306. package/umd/typings/src/utils/currentDate.d.ts +7 -0
  307. package/umd/typings/src/utils/deepClone.d.ts +9 -0
  308. package/umd/typings/src/utils/deepFreeze.d.ts +22 -0
  309. package/umd/typings/src/utils/emojis.d.ts +2 -2
  310. package/umd/typings/src/utils/extractParameters.d.ts +2 -2
  311. package/umd/typings/src/utils/formatNumber.d.ts +1 -1
  312. package/umd/typings/src/utils/isRunningInWhatever.d.ts +3 -0
  313. package/umd/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +3 -3
  314. package/umd/typings/src/utils/markdown/createMarkdownChart.d.ts +7 -10
  315. package/umd/typings/src/utils/markdown/createMarkdownTable.d.ts +1 -1
  316. package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
  317. package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +9 -2
  318. package/umd/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
  319. package/umd/typings/src/utils/markdown/parseMarkdownSection.d.ts +3 -3
  320. package/umd/typings/src/utils/normalization/parseKeywords.d.ts +2 -1
  321. package/umd/typings/src/utils/organization/TODO_USE.d.ts +12 -0
  322. package/umd/typings/src/utils/organization/TODO_any.d.ts +6 -0
  323. package/umd/typings/src/utils/organization/TODO_object.d.ts +6 -0
  324. package/umd/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
  325. package/umd/typings/src/utils/organization/___.d.ts +6 -0
  326. package/umd/typings/src/utils/{just.d.ts → organization/just.d.ts} +5 -1
  327. package/umd/typings/src/utils/organization/keepUnused.d.ts +16 -0
  328. package/umd/typings/src/utils/organization/really_any.d.ts +6 -0
  329. package/umd/typings/src/utils/organization/really_unknown.d.ts +6 -0
  330. package/umd/typings/src/utils/random/randomSeed.d.ts +7 -0
  331. package/{esm/typings/src/execution → umd/typings/src}/utils/replaceParameters.d.ts +2 -4
  332. package/umd/typings/src/utils/replaceParameters.test.d.ts +1 -0
  333. package/umd/typings/src/utils/sets/difference.d.ts +3 -0
  334. package/umd/typings/src/utils/validators/email/isValidEmail.d.ts +2 -1
  335. package/umd/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -1
  336. package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -1
  337. package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +2 -1
  338. package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +2 -1
  339. package/umd/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +2 -1
  340. package/umd/typings/src/utils/validators/url/isValidUrl.d.ts +2 -1
  341. package/umd/typings/src/utils/validators/uuid/isValidUuid.d.ts +2 -1
  342. package/esm/typings/src/collection/constructors/justTestFsImport.d.ts +0 -7
  343. package/esm/typings/src/personas/personaToModelRequirements.d.ts +0 -6
  344. package/esm/typings/src/types/Parameters.d.ts +0 -14
  345. package/esm/typings/src/types/PipelineJson/KnowledgeJson.d.ts +0 -6
  346. package/esm/typings/src/types/PipelineJson/MaterialKnowledgePieceJson.d.ts +0 -28
  347. package/umd/typings/src/collection/constructors/justTestFsImport.d.ts +0 -7
  348. package/umd/typings/src/personas/personaToModelRequirements.d.ts +0 -6
  349. package/umd/typings/src/types/Parameters.d.ts +0 -14
  350. package/umd/typings/src/types/PipelineJson/KnowledgeJson.d.ts +0 -6
  351. package/umd/typings/src/types/PipelineJson/MaterialKnowledgePieceJson.d.ts +0 -28
  352. /package/esm/typings/src/_packages/{markdown-utils.d.ts → markdown-utils.index.d.ts} +0 -0
  353. /package/esm/typings/src/{execution/addPromptResultUsage.test.d.ts → conversion/utils/stringifyPipelineJson.test.d.ts} +0 -0
  354. /package/esm/typings/src/{execution/utils/replaceParameters.test.d.ts → knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts} +0 -0
  355. /package/{umd/typings/src/execution/addPromptResultUsage.test.d.ts → esm/typings/src/personas/preparePersona.test.d.ts} +0 -0
  356. /package/esm/typings/src/{utils/postprocessing → postprocessing/utils}/extractBlock.d.ts +0 -0
  357. /package/{umd/typings/src/execution/utils/replaceParameters.test.d.ts → esm/typings/src/prepare/isPipelinePrepared.test.d.ts} +0 -0
  358. /package/umd/typings/src/_packages/{markdown-utils.d.ts → markdown-utils.index.d.ts} +0 -0
  359. /package/umd/typings/src/{utils/postprocessing → postprocessing/utils}/extractBlock.d.ts +0 -0
@@ -5,6 +5,7 @@ import type { string_javascript_name } from '../typeAliases';
5
5
  import type { string_markdown } from '../typeAliases';
6
6
  import type { string_markdown_text } from '../typeAliases';
7
7
  import type { string_name } from '../typeAliases';
8
+ import type { string_parameter_name } from '../typeAliases';
8
9
  import type { string_prompt } from '../typeAliases';
9
10
  import type { string_template } from '../typeAliases';
10
11
  import type { Expectations } from './Expectations';
@@ -15,7 +16,7 @@ export interface PromptTemplateJsonCommon {
15
16
  /**
16
17
  * Name of the template
17
18
  * - It must be unique across the pipeline
18
- * - It should start uppercase and contain letters and numbers
19
+ * - It should start uppercase and can contain letters and numbers
19
20
  * - The pipelineUrl together with hash and name are used to identify the prompt template in the pipeline
20
21
  */
21
22
  readonly name: string_name;
@@ -34,11 +35,13 @@ export interface PromptTemplateJsonCommon {
34
35
  *
35
36
  * Note: Joker is one of the dependent parameters
36
37
  */
37
- readonly dependentParameterNames: Array<string_name>;
38
+ readonly dependentParameterNames: Array<string_parameter_name>;
38
39
  /**
39
40
  * If theese parameters meet the expectations requirements, they are used instead of executing this prompt template
41
+ *
42
+ * @see https://github.com/webgptorg/promptbook/discussions/66
40
43
  */
41
- readonly jokers?: Array<string>;
44
+ readonly jokerParameterNames?: Array<string_parameter_name>;
42
45
  /**
43
46
  * Type of the execution
44
47
  * This determines if the prompt template is send to LLM, user or some scripting evaluation
@@ -50,20 +53,24 @@ export interface PromptTemplateJsonCommon {
50
53
  readonly content: (string_prompt | string_javascript | string_markdown) & string_template;
51
54
  /**
52
55
  * List of postprocessing steps that are executed after the prompt template
56
+ *
57
+ * @see https://github.com/webgptorg/promptbook/discussions/31
53
58
  */
54
- readonly postprocessing?: Array<string_javascript_name>;
59
+ readonly postprocessingFunctionNames?: Array<string_javascript_name>;
55
60
  /**
56
61
  * Expect this amount of each unit in the answer
57
62
  *
58
63
  * For example 5 words, 3 sentences, 2 paragraphs, ...
59
64
  *
60
65
  * Note: Expectations are performed after all postprocessing steps
66
+ * @see https://github.com/webgptorg/promptbook/discussions/30
61
67
  */
62
68
  readonly expectations?: Expectations;
63
69
  /**
64
70
  * Expect this format of the answer
65
71
  *
66
72
  * Note: Expectations are performed after all postprocessing steps
73
+ * @see https://github.com/webgptorg/promptbook/discussions/30
67
74
  * @deprecated [💝]
68
75
  */
69
76
  readonly expectFormat?: ExpectFormatCommand['format'];
@@ -73,5 +80,7 @@ export interface PromptTemplateJsonCommon {
73
80
  readonly resultingParameterName: string_name;
74
81
  }
75
82
  /**
83
+ * TODO: [🧠][🥜]
76
84
  * TODO: use one helper type> (string_prompt | string_javascript | string_markdown) & string_template
85
+ * TODO: [♈] Probbably move expectations from templates to parameters
77
86
  */
@@ -1,5 +1,6 @@
1
1
  import type { string_markdown_text } from '../typeAliases';
2
- import type { string_name } from '../typeAliases';
2
+ import type { string_parameter_name } from '../typeAliases';
3
+ import type { string_parameter_value } from '../typeAliases';
3
4
  /**
4
5
  * Describes one parameter of the promptbook
5
6
  */
@@ -9,7 +10,7 @@ export type PromptTemplateParameterJson = {
9
10
  * - It must be unique across the pipeline
10
11
  * - It should start lowercase and contain letters and numbers
11
12
  */
12
- readonly name: string_name;
13
+ readonly name: string_parameter_name;
13
14
  /**
14
15
  * The parameter is input of the pipeline
15
16
  */
@@ -23,4 +24,12 @@ export type PromptTemplateParameterJson = {
23
24
  * - It can use simple markdown formatting like **bold**, *italic*, [link](https://example.com), ... BUT not code blocks and structure
24
25
  */
25
26
  readonly description?: string_markdown_text;
27
+ /**
28
+ * Sample values of the parameter
29
+ * Note: This values won't be actually used as some default values, but they are just for better understanding of the parameter
30
+ */
31
+ readonly sampleValues?: Array<string_parameter_value>;
26
32
  };
33
+ /**
34
+ * TODO: [♈] Probbably move expectations from templates to parameters
35
+ */
@@ -2,6 +2,8 @@ import type { ScriptLanguage } from '../ScriptLanguage';
2
2
  import type { PromptTemplateJsonCommon } from './PromptTemplateJsonCommon';
3
3
  /**
4
4
  * Template for script execution
5
+ *
6
+ * @see https://github.com/webgptorg/promptbook/discussions/77
5
7
  */
6
8
  export interface ScriptJson extends PromptTemplateJsonCommon {
7
9
  readonly blockType: 'SCRIPT';
@@ -1,6 +1,8 @@
1
1
  import type { PromptTemplateJsonCommon } from './PromptTemplateJsonCommon';
2
2
  /**
3
3
  * Template for simple concatenation of strings
4
+ *
5
+ * @see https://github.com/webgptorg/promptbook/discussions/17
4
6
  */
5
7
  export interface SimpleTemplateJson extends PromptTemplateJsonCommon {
6
8
  readonly blockType: 'SIMPLE_TEMPLATE';
@@ -2,7 +2,7 @@
2
2
  * Promptbook is the **core concept of this package**.
3
3
  * It represents a series of prompt templates chained together to form a pipeline / one big prompt template with input and result parameters.
4
4
  *
5
- * @see !!! https://github.com/webgptorg/promptbook#promptbook
5
+ * @see @@@ https://github.com/webgptorg/promptbook#promptbook
6
6
  */
7
7
  export type PipelineString = string & {
8
8
  readonly _type: 'Promptbook';
@@ -1,17 +1,61 @@
1
1
  import type { ExpectFormatCommand } from '../commands/EXPECT/ExpectFormatCommand';
2
2
  import type { PostprocessingFunction } from '../scripting/javascript/JavascriptExecutionToolsOptions';
3
+ import type { ChatModelRequirements } from './ModelRequirements';
4
+ import type { CompletionModelRequirements } from './ModelRequirements';
5
+ import type { EmbeddingModelRequirements } from './ModelRequirements';
3
6
  import type { ModelRequirements } from './ModelRequirements';
4
7
  import type { Expectations } from './PipelineJson/Expectations';
5
- import type { string_name } from './typeAliases';
8
+ import type { Parameters } from './typeAliases';
6
9
  import type { string_pipeline_url_with_hashtemplate } from './typeAliases';
7
10
  import type { string_prompt } from './typeAliases';
11
+ import type { string_template } from './typeAliases';
8
12
  import type { string_title } from './typeAliases';
9
13
  /**
10
14
  * Prompt in a text along with model requirements, but without any execution or templating logic.
11
15
  *
16
+ * Note: [🛫] This is NOT fully serializable as JSON, it contains functions which are not serializable
12
17
  * @see https://github.com/webgptorg/promptbook#prompt
13
18
  */
14
- export type Prompt = {
19
+ export type Prompt = CompletionPrompt | ChatPrompt | EmbeddingPrompt;
20
+ /**
21
+ * Completion prompt
22
+ *
23
+ * Note: [🛫] This is NOT fully serializable as JSON, it contains functions which are not serializable
24
+ */
25
+ export type CompletionPrompt = CommonPrompt & {
26
+ /**
27
+ * Requirements for completion model
28
+ */
29
+ modelRequirements: CompletionModelRequirements;
30
+ };
31
+ /**
32
+ * Chat prompt
33
+ *
34
+ * Note: [🛫] This is NOT fully serializable as JSON, it contains functions which are not serializable
35
+ */
36
+ export type ChatPrompt = CommonPrompt & {
37
+ /**
38
+ * Requirements for chat model
39
+ */
40
+ modelRequirements: ChatModelRequirements;
41
+ };
42
+ /**
43
+ * Embedding prompt
44
+ *
45
+ * Note: [🛫] This is NOT fully serializable as JSON, it contains functions which are not serializable
46
+ */
47
+ export type EmbeddingPrompt = CommonPrompt & {
48
+ /**
49
+ * Requirements for chat model
50
+ */
51
+ modelRequirements: EmbeddingModelRequirements;
52
+ };
53
+ /**
54
+ * Common properties for all prompt results
55
+ *
56
+ * Note: This is fully serializable as JSON
57
+ */
58
+ export type CommonPrompt = {
15
59
  /**
16
60
  * The title of the prompt
17
61
  *
@@ -19,12 +63,11 @@ export type Prompt = {
19
63
  */
20
64
  readonly title: string_title;
21
65
  /**
22
- * The text of the prompt
66
+ * The text of the prompt with placeholders for parameters
23
67
  *
24
- * Note: This is not a template, this is exactly the text that will be sent to the model
25
- * @example "What is the capital of France?"
68
+ * @example "What is the capital of {country}?"
26
69
  */
27
- readonly content: string_prompt;
70
+ readonly content: string_prompt & string_template;
28
71
  /**
29
72
  * Requirements for the model
30
73
  */
@@ -54,12 +97,13 @@ export type Prompt = {
54
97
  */
55
98
  readonly pipelineUrl?: string_pipeline_url_with_hashtemplate;
56
99
  /**
57
- * Parameters used in the prompt
58
- *
59
- * Note: This is redundant (same information is in pipelineUrl+content) but useful for logging and debugging
100
+ * Parameters used in the `content`
60
101
  */
61
- readonly parameters: Record<string_name, string>;
102
+ readonly parameters: Parameters;
62
103
  };
63
104
  /**
105
+ * TODO: [🔼] !!!! Export all from `@promptbook/types`
106
+ * TODO: [🧄] Replace all "github.com/webgptorg/promptbook#xxx" with "ptbk.io/xxx"
64
107
  * TODO: [✔] Check ModelRequirements in runtime
108
+ * TODO: [🏳] Add options for translation - maybe create `TranslationPrompt`
65
109
  */
@@ -41,18 +41,18 @@ export type ExecutionReportJson = {
41
41
  /**
42
42
  * The prompt wich was executed
43
43
  */
44
- prompt: Omit<Prompt, 'pipelineUrl' | 'parameters'>;
44
+ readonly prompt: Omit<Prompt, 'pipelineUrl' | 'parameters'>;
45
45
  /**
46
46
  * Result of the prompt execution (if not failed during LLM execution)
47
47
  */
48
- result?: PromptResult;
48
+ readonly result?: PromptResult;
49
49
  /**
50
50
  * The error which occured during LLM execution or during postprocessing or expectation checking
51
51
  *
52
52
  * Note: It makes sense to have both error and result defined, for example when the result not pass expectations
53
53
  */
54
- error?: {
55
- message: string;
54
+ readonly error?: {
55
+ readonly message: string;
56
56
  };
57
57
  }>;
58
58
  };
@@ -1,16 +1,16 @@
1
1
  import type { number_percent } from '../typeAliases';
2
2
  /**
3
- * Options for generating an execution report string
3
+ * Options for `executionReportJsonToString`
4
4
  */
5
5
  export type ExecutionReportStringOptions = {
6
6
  /**
7
7
  * The tax rate to be applied, expressed as a percentage from 0 to 1 (=100%) or even more
8
8
  */
9
- taxRate: number_percent;
9
+ readonly taxRate: number_percent;
10
10
  /**
11
11
  * The width of the charts in the report
12
12
  */
13
- chartsWidth: number;
13
+ readonly chartsWidth: number;
14
14
  };
15
15
  /**
16
16
  * Default options for generating an execution report string
@@ -2,6 +2,6 @@ import type { FromtoItems } from '../../utils/FromtoItems';
2
2
  /**
3
3
  * Count the duration of working time
4
4
  *
5
- * @private within the package
5
+ * @private within the repository
6
6
  */
7
7
  export declare function countWorkingDuration(items: FromtoItems): number;
@@ -1,3 +1,4 @@
1
+ import { RESERVED_PARAMETER_NAMES } from '../config';
1
2
  /**
2
3
  * Semantic helper
3
4
  */
@@ -17,7 +18,7 @@ export type string_prompt = string;
17
18
  /**
18
19
  * Semantic helper
19
20
  *
20
- * For example `"A cat wearing a {ITEM}"`
21
+ * For example `"A cat wearing a {item}"`
21
22
  */
22
23
  export type string_template = string;
23
24
  /**
@@ -32,6 +33,12 @@ export type string_text_prompt = string_prompt;
32
33
  * For example `"How many hats does the cat wear?"`
33
34
  */
34
35
  export type string_chat_prompt = string_text_prompt;
36
+ /**
37
+ * Semantic helper
38
+ *
39
+ * For example `"You are an AI assistant. You are here to help me with my work."`
40
+ */
41
+ export type string_system_message = string_text_prompt;
35
42
  /**
36
43
  * Semantic helper
37
44
  *
@@ -73,6 +80,42 @@ export type string_char = string;
73
80
  * For example `"ainautes"`
74
81
  */
75
82
  export type string_name = string;
83
+ /**
84
+ * Semantic helper
85
+ * Unique identifier of anything
86
+ *
87
+ * For example `"eventName"`
88
+ */
89
+ export type string_parameter_name = string_name;
90
+ /**
91
+ * Semantic helper
92
+ * Unique identifier of parameter
93
+ *
94
+ * For example `"DevConf 2024"`
95
+ */
96
+ export type string_parameter_value = string;
97
+ /**
98
+ * Parameters of the pipeline
99
+ *
100
+ * There are three types of parameters:
101
+ * - **INPUT PARAMETERs** are required to execute the pipeline.
102
+ * - **Intermediate parameters** are used internally in the pipeline.
103
+ * - **OUTPUT PARAMETERs** are not used internally in the pipeline, but are returned as the result of the pipeline execution.
104
+ *
105
+ * @see https://ptbk.io/parameters
106
+ */
107
+ export type Parameters = Exclude<Record<string_parameter_name, string_parameter_value>, ReservedParameters>;
108
+ /**
109
+ * Semantic helper
110
+ * Unique identifier of reserved parameter
111
+ *
112
+ * For example `"context"`
113
+ */
114
+ export type string_reserved_parameter_name = typeof RESERVED_PARAMETER_NAMES[number];
115
+ /**
116
+ * @@@
117
+ */
118
+ export type ReservedParameters = Record<string_reserved_parameter_name, string_parameter_value>;
76
119
  /**
77
120
  * Semantic helper
78
121
  * Title of anything
@@ -80,6 +123,36 @@ export type string_name = string;
80
123
  * For example `"Ai*nautes"`
81
124
  */
82
125
  export type string_title = string;
126
+ /**
127
+ * Description of persona
128
+ *
129
+ * For example `"Skilled copywriter"`
130
+ */
131
+ export type string_persona_description = string;
132
+ /**
133
+ * Source of one knowledge
134
+ *
135
+ * It can be a link, a relative path to file or direct text
136
+ *
137
+ * For example `"https://pavolhejny.com/"`
138
+ * For example `"./pavol-hejny-cv.pdf"`
139
+ * For example `"Pavol Hejný has web https://pavolhejny.com/"`
140
+ * For example `"Pavol Hejný is web developer and creator of Promptbook and Collboard"`
141
+ *
142
+ * @@@ string_knowledge_source vs string_knowledge_source_link
143
+ */
144
+ export type string_knowledge_source = string_knowledge_source_link | string_markdown;
145
+ /**
146
+ * One link to knowledge source
147
+ *
148
+ * It can be a link or relative path
149
+ *
150
+ * For example `"https://pavolhejny.com/"`
151
+ * For example `"./pavol-hejny-cv.pdf"`
152
+ *
153
+ * @@@ string_knowledge_source vs string_knowledge_source_link
154
+ */
155
+ export type string_knowledge_source_link = string_url | string_file_path;
83
156
  /**
84
157
  * Semantic helper
85
158
  *
@@ -123,6 +196,10 @@ export type string_markdown_section_content = string;
123
196
  * For example `"**Hello** World!"`
124
197
  */
125
198
  export type string_markdown_text = string;
199
+ /**
200
+ * @@@
201
+ */
202
+ export type string_promptbook_documentation_url = `https://github.com/webgptorg/promptbook/discussions/${number | '@@'}`;
126
203
  /**
127
204
  * Semantic helper
128
205
  *
@@ -159,6 +236,17 @@ export type string_script = string;
159
236
  * For example `console.info("Hello World!")`
160
237
  */
161
238
  export type string_javascript = string;
239
+ /**
240
+ * Semantic helper for JSON strings
241
+ *
242
+ * Note: TType is a type of the JSON object inside the string
243
+ *
244
+ * For example `{"foo": "bar"}`
245
+ */
246
+ export type string_json<TType> = string & {
247
+ _type: 'string_json';
248
+ scheme: TType;
249
+ };
162
250
  /**
163
251
  * Semantic helper
164
252
  *
@@ -428,6 +516,14 @@ export type string_date_iso8601 = `${number}-${number}-${number}${string}${numbe
428
516
  * Semantic helper for US Dollars
429
517
  */
430
518
  export type number_usd = number;
519
+ /**
520
+ * Semantic helper for incremental IDs
521
+ */
522
+ export type number_id = number_integer & (number_positive | 0);
523
+ /**
524
+ * Semantic helper for number of rows and columns
525
+ */
526
+ export type number_linecol_number = number_integer & number_positive;
431
527
  /**
432
528
  * Semantic helper for number of tokens
433
529
  */
@@ -437,9 +533,22 @@ export type number_negative = number;
437
533
  export type number_integer = number;
438
534
  /**
439
535
  * Semantic helper;
440
- * Percentage from 0 to 1 (100%)
536
+ * Percentage from 0 to 1 (100%) (and bellow and above)
441
537
  */
442
538
  export type number_percent = number;
539
+ /**
540
+ * Semantic helper;
541
+ * Model temperature
542
+ */
543
+ export type number_model_temperature = number_percent;
544
+ /**
545
+ * Semantic helper;
546
+ * Seed for random generator
547
+ *
548
+ * Percentage from 0 to 1 (100%)
549
+ * TODO: Is seed (in OpenAI) number from 0 to 1?
550
+ */
551
+ export type number_seed = number_percent;
443
552
  /**
444
553
  * Likeness of the wallpaper
445
554
  *
@@ -462,19 +571,9 @@ export type number_kilobytes = number_positive;
462
571
  export type number_megabytes = number_positive;
463
572
  export type number_gigabytes = number_positive;
464
573
  export type number_terabytes = number_positive;
465
- /**
466
- * Formatting helper to put void to keep longer version of prettier
467
- */
468
- export type ___ = never;
469
- /**
470
- * Organizational helper to better mark the place where the type is missing
471
- */
472
- export type TODO = any;
473
- /**
474
- * Organizational helper to mark a place where to really use any
475
- */
476
- export type really_any = any;
477
- /**
574
+ /**.
575
+ * TODO: !!! Change "For example" to @example
478
576
  * TODO: !! Cleanup
479
577
  * TODO: !! Change to branded types
578
+ * TODO: [📂] Export all this file through `@promptbook/types`
480
579
  */
@@ -5,15 +5,15 @@ export type FromtoItems = Array<{
5
5
  /**
6
6
  * The title of the item
7
7
  */
8
- title: string;
8
+ readonly title: string;
9
9
  /**
10
10
  * The start of the item
11
11
  *
12
12
  * This can mean anything, like seconds, milliseconds, dollars, etc.
13
13
  */
14
- from: number;
14
+ readonly from: number;
15
15
  /**
16
16
  * The end of the item
17
17
  */
18
- to: number;
18
+ readonly to: number;
19
19
  }>;
@@ -0,0 +1,7 @@
1
+ import type { string_date_iso8601 } from '../types/typeAliases';
2
+ /**
3
+ * Simple wrapper `new Date().toISOString()`
4
+ *
5
+ * @returns string_date branded type
6
+ */
7
+ export declare function $currentDate(): string_date_iso8601;
@@ -0,0 +1,9 @@
1
+ import type { WritableDeep } from 'type-fest';
2
+ /**
3
+ * @@@
4
+ */
5
+ export declare function deepClone<TObject>(objectValue: TObject): WritableDeep<TObject>;
6
+ /**
7
+ * TODO: [🔼] Export from `@promptbook/utils`
8
+ * TODO: [🧠] Is there a way how to meaningfully test this utility
9
+ */
@@ -0,0 +1,22 @@
1
+ import type { ReadonlyDeep } from 'type-fest';
2
+ /**
3
+ * @@@
4
+ *
5
+ * @returns The same object as the input, but deeply frozen
6
+ *
7
+ * Note: This function mutates the object and returns the original (but mutated-deep-freezed) object
8
+ */
9
+ export declare function deepFreeze<TObject>(objectValue: TObject): ReadonlyDeep<TObject>;
10
+ /**
11
+ * @@@
12
+ * @@@
13
+ *
14
+ * @returns The same object as the input, but deeply frozen
15
+ *
16
+ * Note: This function mutates the object and returns the original (but mutated-deep-freezed) object
17
+ */
18
+ export declare function deepFreezeWithSameType<TObject>(objectValue: TObject): TObject;
19
+ /**
20
+ * TODO: [🔼] Export from `@promptbook/utils`
21
+ * TODO: [🧠] Is there a way how to meaningfully test this utility
22
+ */
@@ -5,7 +5,7 @@ import type { string_char_emoji } from '../types/typeAliasEmoji';
5
5
  *
6
6
  * @see https://getemoji.com/
7
7
  *
8
- * @private within the package
8
+ * @private within the repository
9
9
  * @deprecated Use /\p{Extended_Pictographic}/ instead
10
10
  */
11
11
  export declare const EMOJIS_IN_CATEGORIES: Record<string, Array<string_char_emoji>>;
@@ -13,7 +13,7 @@ export declare const EMOJIS_IN_CATEGORIES: Record<string, Array<string_char_emoj
13
13
  *
14
14
  * All possible emoji chars like "🍆", "🍡", "🍤"...
15
15
  *
16
- * @private within the package
16
+ * @private within the repository
17
17
  * @deprecated Use /\p{Extended_Pictographic}/ instead
18
18
  */
19
19
  export declare const EMOJIS: Set<string_char_emoji>;
@@ -1,4 +1,4 @@
1
- import type { string_name } from '../types/typeAliases';
1
+ import type { string_parameter_name } from '../types/typeAliases';
2
2
  import type { string_template } from '../types/typeAliases';
3
3
  /**
4
4
  * Parses the template and returns the list of all parameter names
@@ -6,4 +6,4 @@ import type { string_template } from '../types/typeAliases';
6
6
  * @param template the template with parameters in {curly} braces
7
7
  * @returns the list of parameter names
8
8
  */
9
- export declare function extractParameters(template: string_template): Set<string_name>;
9
+ export declare function extractParameters(template: string_template): Set<string_parameter_name>;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Format either small or big number
3
3
  *
4
- * @private within the package
4
+ * @private within the repository
5
5
  */
6
6
  export declare function formatNumber(value: number): string;
@@ -10,3 +10,6 @@ export declare const isRunningInNode: Function;
10
10
  * Detects if the code is running in a web worker
11
11
  */
12
12
  export declare const isRunningInWebWorker: Function;
13
+ /**
14
+ * TODO: [🔼] !!! Export via `@promptbook/utils`
15
+ */
@@ -3,9 +3,9 @@ import type { string_name } from '../../types/typeAliases';
3
3
  /**
4
4
  * Add or modify an auto-generated section in a markdown file
5
5
  *
6
- * @private within the package
6
+ * @private within the repository
7
7
  */
8
8
  export declare function addAutoGeneratedSection(content: string_markdown, options: {
9
- sectionName: string_name;
10
- sectionContent: string_markdown;
9
+ readonly sectionName: string_name;
10
+ readonly sectionContent: string_markdown;
11
11
  }): string_markdown;
@@ -1,37 +1,34 @@
1
1
  import type { string_markdown } from '../../types/typeAliases';
2
2
  import type { FromtoItems } from '../FromtoItems';
3
3
  /**
4
- * Options for creating a markdown chart
5
- */
6
- /**
7
- * Options for creating a markdown chart.
4
+ * Options for `CreateMarkdownChartOptions`
8
5
  */
9
6
  type CreateMarkdownChartOptions = {
10
7
  /**
11
8
  * The header for the first column - the name of the item
12
9
  */
13
- nameHeader: string;
10
+ readonly nameHeader: string;
14
11
  /**
15
12
  * The header for the second column - the value of the item
16
13
  */
17
- valueHeader: string;
14
+ readonly valueHeader: string;
18
15
  /**
19
16
  * The items to be charted
20
17
  */
21
- items: FromtoItems;
18
+ readonly items: FromtoItems;
22
19
  /**
23
20
  * The width of the chart in squares
24
21
  */
25
- width: number;
22
+ readonly width: number;
26
23
  /**
27
24
  * The name of the unit shown in the chart
28
25
  */
29
- unitName: string;
26
+ readonly unitName: string;
30
27
  };
31
28
  /**
32
29
  * Function createMarkdownChart will draw a chart in markdown from ⬛+🟦 tiles
33
30
  *
34
- * @private within the package
31
+ * @private within the repository
35
32
  */
36
33
  export declare function createMarkdownChart(options: CreateMarkdownChartOptions): string_markdown;
37
34
  export {};
@@ -3,6 +3,6 @@ import type { string_markdown_text } from '../../types/typeAliases';
3
3
  /**
4
4
  * Create a markdown table from a 2D array of strings
5
5
  *
6
- * @private within the package
6
+ * @private within the repository
7
7
  */
8
8
  export declare function createMarkdownTable(table: Array<Array<string_markdown_text>>): string_markdown;