@promptbook/openai 0.60.0 → 0.61.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/README.md +23 -21
  2. package/esm/index.es.js +38 -20
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/promptbook-collection/index.d.ts +61 -4
  5. package/esm/typings/src/_packages/core.index.d.ts +8 -8
  6. package/esm/typings/src/_packages/markdown-utils.d.ts +17 -0
  7. package/esm/typings/src/_packages/types.index.d.ts +11 -6
  8. package/esm/typings/src/_packages/utils.index.d.ts +23 -19
  9. package/esm/typings/src/cli/cli-commands/hello.d.ts +7 -0
  10. package/esm/typings/src/cli/cli-commands/make.d.ts +7 -0
  11. package/esm/typings/src/cli/cli-commands/prettify.d.ts +7 -0
  12. package/esm/typings/src/collection/collectionToJson.d.ts +3 -0
  13. package/esm/typings/src/collection/collectionToJson.test.d.ts +6 -0
  14. package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +2 -1
  15. package/esm/typings/src/commands/BLOCK/BlockCommand.d.ts +11 -0
  16. package/esm/typings/src/commands/BLOCK/BlockTypes.d.ts +13 -0
  17. package/esm/typings/src/commands/BLOCK/blockCommandParser.d.ts +9 -0
  18. package/esm/typings/src/commands/EXPECT/ExpectAmountCommand.d.ts +14 -0
  19. package/esm/typings/src/commands/EXPECT/ExpectCommand.d.ts +9 -0
  20. package/esm/typings/src/commands/EXPECT/ExpectFormatCommand.d.ts +7 -0
  21. package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +9 -0
  22. package/esm/typings/src/commands/JOKER/JokerCommand.d.ts +11 -0
  23. package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +9 -0
  24. package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +12 -0
  25. package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +9 -0
  26. package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +13 -0
  27. package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +9 -0
  28. package/esm/typings/src/commands/PARAMETER/ParameterCommand.d.ts +15 -0
  29. package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +9 -0
  30. package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +11 -0
  31. package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +9 -0
  32. package/esm/typings/src/commands/POSTPROCESS/PostprocessCommand.d.ts +11 -0
  33. package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +9 -0
  34. package/esm/typings/src/commands/PROMPTBOOK_VERSION/PromptbookVersionCommand.d.ts +11 -0
  35. package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +9 -0
  36. package/esm/typings/src/commands/URL/UrlCommand.d.ts +10 -0
  37. package/esm/typings/src/commands/URL/urlCommandParser.d.ts +9 -0
  38. package/esm/typings/src/commands/X_ACTION/ActionCommand.d.ts +9 -0
  39. package/esm/typings/src/commands/X_ACTION/actionCommand.test.d.ts +1 -0
  40. package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +9 -0
  41. package/esm/typings/src/commands/X_INSTRUMENT/InstrumentCommand.d.ts +9 -0
  42. package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommand.test.d.ts +1 -0
  43. package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +9 -0
  44. package/esm/typings/src/commands/_BOILERPLATE/BoilerplateCommand.d.ts +10 -0
  45. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommand.test.d.ts +1 -0
  46. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +12 -0
  47. package/esm/typings/src/commands/_common/parseCommand.d.ts +12 -0
  48. package/esm/typings/src/commands/_common/parseCommand.test.d.ts +1 -0
  49. package/esm/typings/src/commands/_common/types/Command.d.ts +6 -0
  50. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +36 -0
  51. package/esm/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +9 -0
  52. package/esm/typings/src/commands/index.d.ts +4 -0
  53. package/esm/typings/src/config.d.ts +4 -0
  54. package/esm/typings/src/conversion/pipelineJsonToString.d.ts +2 -0
  55. package/esm/typings/src/conversion/pipelineStringToJson.d.ts +2 -3
  56. package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +4 -2
  57. package/esm/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
  58. package/esm/typings/src/conversion/utils/extractVariables.d.ts +1 -1
  59. package/esm/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +3 -0
  60. package/esm/typings/src/errors/NotYetImplementedError.d.ts +7 -0
  61. package/esm/typings/src/errors/{SyntaxError.d.ts → ParsingError.d.ts} +2 -2
  62. package/{umd/typings/src/errors/ExecutionError.d.ts → esm/typings/src/errors/PipelineExecutionError.d.ts} +2 -2
  63. package/esm/typings/src/errors/_ExpectError.d.ts +2 -2
  64. package/esm/typings/src/execution/ExecutionTools.d.ts +4 -3
  65. package/esm/typings/src/execution/LlmExecutionTools.d.ts +24 -5
  66. package/esm/typings/src/execution/PromptResult.d.ts +2 -2
  67. package/esm/typings/src/execution/assertsExecutionSuccessful.d.ts +1 -1
  68. package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -1
  69. package/esm/typings/src/execution/utils/checkExpectations.d.ts +1 -1
  70. package/esm/typings/src/execution/utils/replaceParameters.d.ts +1 -1
  71. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +5 -0
  72. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +5 -5
  73. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -0
  74. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -0
  75. package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +5 -0
  76. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -0
  77. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +10 -0
  78. package/esm/typings/src/llm-providers/mocked/fakeTextToExpectations.d.ts +1 -1
  79. package/esm/typings/src/llm-providers/mocked/test/fakeTextToExpectations.test.d.ts +1 -0
  80. package/esm/typings/src/llm-providers/mocked/test/faked-completion.test.d.ts +1 -0
  81. package/esm/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +5 -0
  82. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +14 -1
  83. package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +16 -0
  84. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +6 -1
  85. package/esm/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
  86. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -0
  87. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +13 -3
  88. package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -0
  89. package/esm/typings/src/personas/personaToModelRequirements.d.ts +6 -0
  90. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +2 -1
  91. package/esm/typings/src/types/Arrayable.d.ts +10 -0
  92. package/esm/typings/src/types/PipelineJson/Expectations.d.ts +28 -0
  93. package/esm/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +16 -0
  94. package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +8 -2
  95. package/esm/typings/src/types/PipelineJson/PromptDialogJson.d.ts +7 -0
  96. package/esm/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +6 -142
  97. package/esm/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +77 -0
  98. package/esm/typings/src/types/PipelineJson/ScriptJson.d.ts +14 -0
  99. package/esm/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +7 -0
  100. package/esm/typings/src/types/Prompt.d.ts +3 -3
  101. package/esm/typings/src/types/TaskProgress.d.ts +2 -2
  102. package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +3 -3
  103. package/esm/typings/src/types/typeAliases.d.ts +50 -6
  104. package/esm/typings/src/utils/arrayableToArray.d.ts +11 -0
  105. package/esm/typings/src/utils/arrayableToArray.test.d.ts +1 -0
  106. package/esm/typings/src/utils/emojis.d.ts +1 -0
  107. package/esm/typings/src/utils/expectation-counters/countCharacters.d.ts +1 -1
  108. package/esm/typings/src/utils/expectation-counters/countLines.d.ts +1 -1
  109. package/esm/typings/src/utils/expectation-counters/countPages.d.ts +1 -1
  110. package/esm/typings/src/utils/expectation-counters/countParagraphs.d.ts +1 -1
  111. package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
  112. package/esm/typings/src/utils/expectation-counters/countWords.d.ts +1 -1
  113. package/esm/typings/src/utils/expectation-counters/index.d.ts +2 -2
  114. package/esm/typings/src/utils/markdown/flattenMarkdown.d.ts +14 -0
  115. package/esm/typings/src/utils/markdown/flattenMarkdown.test.d.ts +1 -0
  116. package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +30 -0
  117. package/esm/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +1 -0
  118. package/esm/typings/src/utils/markdown/prettifyMarkdown.d.ts +1 -0
  119. package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +12 -0
  120. package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +1 -0
  121. package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +8 -1
  122. package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +8 -1
  123. package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +13 -1
  124. package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +8 -1
  125. package/esm/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +8 -1
  126. package/esm/typings/src/{conversion/utils → utils}/parseNumber.d.ts +1 -1
  127. package/esm/typings/src/utils/parseNumber.test.d.ts +1 -0
  128. package/esm/typings/src/utils/sets/difference.d.ts +2 -0
  129. package/esm/typings/src/utils/sets/intersection.d.ts +2 -0
  130. package/esm/typings/src/utils/sets/union.d.ts +2 -0
  131. package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +5 -0
  132. package/esm/typings/src/utils/validators/email/isValidEmail.test.d.ts +1 -0
  133. package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +7 -0
  134. package/esm/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +1 -0
  135. package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -0
  136. package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +1 -0
  137. package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +12 -0
  138. package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +1 -0
  139. package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +9 -0
  140. package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +1 -0
  141. package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +9 -0
  142. package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +1 -0
  143. package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +12 -0
  144. package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +1 -0
  145. package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +12 -0
  146. package/esm/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +1 -0
  147. package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +3 -0
  148. package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +5 -0
  149. package/esm/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +1 -0
  150. package/esm/typings/src/version.d.ts +3 -2
  151. package/package.json +2 -2
  152. package/umd/index.umd.js +38 -20
  153. package/umd/index.umd.js.map +1 -1
  154. package/umd/typings/promptbook-collection/index.d.ts +61 -4
  155. package/umd/typings/src/_packages/core.index.d.ts +8 -8
  156. package/umd/typings/src/_packages/markdown-utils.d.ts +17 -0
  157. package/umd/typings/src/_packages/types.index.d.ts +11 -6
  158. package/umd/typings/src/_packages/utils.index.d.ts +23 -19
  159. package/umd/typings/src/cli/cli-commands/hello.d.ts +7 -0
  160. package/umd/typings/src/cli/cli-commands/make.d.ts +7 -0
  161. package/umd/typings/src/cli/cli-commands/prettify.d.ts +7 -0
  162. package/umd/typings/src/collection/collectionToJson.d.ts +3 -0
  163. package/umd/typings/src/collection/collectionToJson.test.d.ts +6 -0
  164. package/umd/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +2 -1
  165. package/umd/typings/src/commands/BLOCK/BlockCommand.d.ts +11 -0
  166. package/umd/typings/src/commands/BLOCK/BlockTypes.d.ts +13 -0
  167. package/umd/typings/src/commands/BLOCK/blockCommand.test.d.ts +1 -0
  168. package/umd/typings/src/commands/BLOCK/blockCommandParser.d.ts +9 -0
  169. package/umd/typings/src/commands/EXPECT/ExpectAmountCommand.d.ts +14 -0
  170. package/umd/typings/src/commands/EXPECT/ExpectCommand.d.ts +9 -0
  171. package/umd/typings/src/commands/EXPECT/ExpectFormatCommand.d.ts +7 -0
  172. package/umd/typings/src/commands/EXPECT/expectCommand.test.d.ts +1 -0
  173. package/umd/typings/src/commands/EXPECT/expectCommandParser.d.ts +9 -0
  174. package/umd/typings/src/commands/JOKER/JokerCommand.d.ts +11 -0
  175. package/umd/typings/src/commands/JOKER/jokerCommand.test.d.ts +1 -0
  176. package/umd/typings/src/commands/JOKER/jokerCommandParser.d.ts +9 -0
  177. package/umd/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +12 -0
  178. package/umd/typings/src/commands/KNOWLEDGE/knowledgeCommand.test.d.ts +1 -0
  179. package/umd/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +9 -0
  180. package/umd/typings/src/commands/MODEL/ModelCommand.d.ts +13 -0
  181. package/umd/typings/src/commands/MODEL/modelCommand.test.d.ts +1 -0
  182. package/umd/typings/src/commands/MODEL/modelCommandParser.d.ts +9 -0
  183. package/umd/typings/src/commands/PARAMETER/ParameterCommand.d.ts +15 -0
  184. package/umd/typings/src/commands/PARAMETER/parameterCommand.test.d.ts +1 -0
  185. package/umd/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +9 -0
  186. package/umd/typings/src/commands/PERSONA/PersonaCommand.d.ts +11 -0
  187. package/umd/typings/src/commands/PERSONA/personaCommand.test.d.ts +1 -0
  188. package/umd/typings/src/commands/PERSONA/personaCommandParser.d.ts +9 -0
  189. package/umd/typings/src/commands/POSTPROCESS/PostprocessCommand.d.ts +11 -0
  190. package/umd/typings/src/commands/POSTPROCESS/postprocessCommand.test.d.ts +1 -0
  191. package/umd/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +9 -0
  192. package/umd/typings/src/commands/PROMPTBOOK_VERSION/PromptbookVersionCommand.d.ts +11 -0
  193. package/umd/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommand.test.d.ts +1 -0
  194. package/umd/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +9 -0
  195. package/umd/typings/src/commands/URL/UrlCommand.d.ts +10 -0
  196. package/umd/typings/src/commands/URL/urlCommand.test.d.ts +1 -0
  197. package/umd/typings/src/commands/URL/urlCommandParser.d.ts +9 -0
  198. package/umd/typings/src/commands/X_ACTION/ActionCommand.d.ts +9 -0
  199. package/umd/typings/src/commands/X_ACTION/actionCommand.test.d.ts +1 -0
  200. package/umd/typings/src/commands/X_ACTION/actionCommandParser.d.ts +9 -0
  201. package/umd/typings/src/commands/X_INSTRUMENT/InstrumentCommand.d.ts +9 -0
  202. package/umd/typings/src/commands/X_INSTRUMENT/instrumentCommand.test.d.ts +1 -0
  203. package/umd/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +9 -0
  204. package/umd/typings/src/commands/_BOILERPLATE/BoilerplateCommand.d.ts +10 -0
  205. package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommand.test.d.ts +1 -0
  206. package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +12 -0
  207. package/umd/typings/src/commands/_common/parseCommand.d.ts +12 -0
  208. package/umd/typings/src/commands/_common/parseCommand.test.d.ts +1 -0
  209. package/umd/typings/src/commands/_common/types/Command.d.ts +6 -0
  210. package/umd/typings/src/commands/_common/types/CommandParser.d.ts +36 -0
  211. package/umd/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +9 -0
  212. package/umd/typings/src/commands/index.d.ts +4 -0
  213. package/umd/typings/src/config.d.ts +4 -0
  214. package/umd/typings/src/conversion/pipelineJsonToString.d.ts +2 -0
  215. package/umd/typings/src/conversion/pipelineStringToJson.d.ts +2 -3
  216. package/umd/typings/src/conversion/pipelineStringToJsonSync.d.ts +4 -2
  217. package/umd/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
  218. package/umd/typings/src/conversion/utils/extractVariables.d.ts +1 -1
  219. package/umd/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +3 -0
  220. package/umd/typings/src/errors/NotYetImplementedError.d.ts +7 -0
  221. package/umd/typings/src/errors/{SyntaxError.d.ts → ParsingError.d.ts} +2 -2
  222. package/{esm/typings/src/errors/ExecutionError.d.ts → umd/typings/src/errors/PipelineExecutionError.d.ts} +2 -2
  223. package/umd/typings/src/errors/_ExpectError.d.ts +2 -2
  224. package/umd/typings/src/execution/ExecutionTools.d.ts +4 -3
  225. package/umd/typings/src/execution/LlmExecutionTools.d.ts +24 -5
  226. package/umd/typings/src/execution/PromptResult.d.ts +2 -2
  227. package/umd/typings/src/execution/assertsExecutionSuccessful.d.ts +1 -1
  228. package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -1
  229. package/umd/typings/src/execution/utils/checkExpectations.d.ts +1 -1
  230. package/umd/typings/src/execution/utils/replaceParameters.d.ts +1 -1
  231. package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +5 -0
  232. package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +5 -5
  233. package/umd/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -0
  234. package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -0
  235. package/umd/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +5 -0
  236. package/umd/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -0
  237. package/umd/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +10 -0
  238. package/umd/typings/src/llm-providers/mocked/fakeTextToExpectations.d.ts +1 -1
  239. package/umd/typings/src/llm-providers/mocked/test/fakeTextToExpectations.test.d.ts +1 -0
  240. package/umd/typings/src/llm-providers/mocked/test/faked-completion.test.d.ts +1 -0
  241. package/umd/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +5 -0
  242. package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +14 -1
  243. package/umd/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +16 -0
  244. package/umd/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +6 -1
  245. package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
  246. package/umd/typings/src/llm-providers/openai/openai-models.d.ts +1 -0
  247. package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +13 -3
  248. package/umd/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -0
  249. package/umd/typings/src/personas/personaToModelRequirements.d.ts +6 -0
  250. package/umd/typings/src/scripting/javascript/utils/preserve.d.ts +2 -1
  251. package/umd/typings/src/types/Arrayable.d.ts +10 -0
  252. package/umd/typings/src/types/PipelineJson/Expectations.d.ts +28 -0
  253. package/umd/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +16 -0
  254. package/umd/typings/src/types/PipelineJson/PipelineJson.d.ts +8 -2
  255. package/umd/typings/src/types/PipelineJson/PromptDialogJson.d.ts +7 -0
  256. package/umd/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +6 -142
  257. package/umd/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +77 -0
  258. package/umd/typings/src/types/PipelineJson/ScriptJson.d.ts +14 -0
  259. package/umd/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +7 -0
  260. package/umd/typings/src/types/Prompt.d.ts +3 -3
  261. package/umd/typings/src/types/TaskProgress.d.ts +2 -2
  262. package/umd/typings/src/types/execution-report/ExecutionReportJson.d.ts +3 -3
  263. package/umd/typings/src/types/typeAliases.d.ts +50 -6
  264. package/umd/typings/src/utils/arrayableToArray.d.ts +11 -0
  265. package/umd/typings/src/utils/arrayableToArray.test.d.ts +1 -0
  266. package/umd/typings/src/utils/emojis.d.ts +1 -0
  267. package/umd/typings/src/utils/expectation-counters/countCharacters.d.ts +1 -1
  268. package/umd/typings/src/utils/expectation-counters/countLines.d.ts +1 -1
  269. package/umd/typings/src/utils/expectation-counters/countPages.d.ts +1 -1
  270. package/umd/typings/src/utils/expectation-counters/countParagraphs.d.ts +1 -1
  271. package/umd/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
  272. package/umd/typings/src/utils/expectation-counters/countWords.d.ts +1 -1
  273. package/umd/typings/src/utils/expectation-counters/index.d.ts +2 -2
  274. package/umd/typings/src/utils/markdown/flattenMarkdown.d.ts +14 -0
  275. package/umd/typings/src/utils/markdown/flattenMarkdown.test.d.ts +1 -0
  276. package/umd/typings/src/utils/markdown/parseMarkdownSection.d.ts +30 -0
  277. package/umd/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +1 -0
  278. package/umd/typings/src/utils/markdown/prettifyMarkdown.d.ts +1 -0
  279. package/umd/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +12 -0
  280. package/umd/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +1 -0
  281. package/umd/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +8 -1
  282. package/umd/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +8 -1
  283. package/umd/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +13 -1
  284. package/umd/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +8 -1
  285. package/umd/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +8 -1
  286. package/umd/typings/src/{conversion/utils → utils}/parseNumber.d.ts +1 -1
  287. package/umd/typings/src/utils/parseNumber.test.d.ts +1 -0
  288. package/umd/typings/src/utils/sets/difference.d.ts +2 -0
  289. package/umd/typings/src/utils/sets/intersection.d.ts +2 -0
  290. package/umd/typings/src/utils/sets/union.d.ts +2 -0
  291. package/umd/typings/src/utils/validators/email/isValidEmail.d.ts +5 -0
  292. package/umd/typings/src/utils/validators/email/isValidEmail.test.d.ts +1 -0
  293. package/umd/typings/src/utils/validators/filePath/isValidFilePath.d.ts +7 -0
  294. package/umd/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +1 -0
  295. package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -0
  296. package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +1 -0
  297. package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +12 -0
  298. package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +1 -0
  299. package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +9 -0
  300. package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +1 -0
  301. package/umd/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +9 -0
  302. package/umd/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +1 -0
  303. package/umd/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +12 -0
  304. package/umd/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +1 -0
  305. package/umd/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +12 -0
  306. package/umd/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +1 -0
  307. package/umd/typings/src/utils/validators/url/isValidUrl.d.ts +3 -0
  308. package/umd/typings/src/utils/validators/uuid/isValidUuid.d.ts +5 -0
  309. package/umd/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +1 -0
  310. package/umd/typings/src/version.d.ts +3 -2
  311. package/esm/typings/src/cli/actions/hello.d.ts +0 -7
  312. package/esm/typings/src/cli/actions/make.d.ts +0 -7
  313. package/esm/typings/src/cli/actions/prettify.d.ts +0 -7
  314. package/esm/typings/src/conversion/utils/parseCommand.d.ts +0 -11
  315. package/esm/typings/src/conversion/utils/parseCommand.test.d.ts +0 -4
  316. package/esm/typings/src/errors/TemplateError.d.ts +0 -9
  317. package/esm/typings/src/llm-providers/mocked/mocked-chat.test.d.ts +0 -4
  318. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionToolsOptions.d.ts +0 -24
  319. package/esm/typings/src/types/Command.d.ts +0 -101
  320. package/esm/typings/src/types/ExecutionTypes.d.ts +0 -13
  321. package/esm/typings/src/utils/markdown-json/MarkdownStructure.d.ts +0 -25
  322. package/esm/typings/src/utils/markdown-json/countMarkdownStructureDeepness.d.ts +0 -7
  323. package/esm/typings/src/utils/markdown-json/markdownToMarkdownStructure.d.ts +0 -13
  324. package/umd/typings/src/cli/actions/hello.d.ts +0 -7
  325. package/umd/typings/src/cli/actions/make.d.ts +0 -7
  326. package/umd/typings/src/cli/actions/prettify.d.ts +0 -7
  327. package/umd/typings/src/conversion/utils/parseCommand.d.ts +0 -11
  328. package/umd/typings/src/conversion/utils/parseCommand.test.d.ts +0 -4
  329. package/umd/typings/src/errors/TemplateError.d.ts +0 -9
  330. package/umd/typings/src/llm-providers/mocked/mocked-chat.test.d.ts +0 -4
  331. package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionToolsOptions.d.ts +0 -24
  332. package/umd/typings/src/types/Command.d.ts +0 -101
  333. package/umd/typings/src/types/ExecutionTypes.d.ts +0 -13
  334. package/umd/typings/src/utils/markdown-json/MarkdownStructure.d.ts +0 -25
  335. package/umd/typings/src/utils/markdown-json/countMarkdownStructureDeepness.d.ts +0 -7
  336. package/umd/typings/src/utils/markdown-json/markdownToMarkdownStructure.d.ts +0 -13
  337. /package/esm/typings/src/{conversion/utils/parseNumber.test.d.ts → commands/BLOCK/blockCommand.test.d.ts} +0 -0
  338. /package/esm/typings/src/{llm-providers/mocked/fakeTextToExpectations.test.d.ts → commands/EXPECT/expectCommand.test.d.ts} +0 -0
  339. /package/esm/typings/src/{llm-providers/mocked/faked-completion.test.d.ts → commands/JOKER/jokerCommand.test.d.ts} +0 -0
  340. /package/esm/typings/src/{utils/markdown-json/countMarkdownStructureDeepness.test.d.ts → commands/KNOWLEDGE/knowledgeCommand.test.d.ts} +0 -0
  341. /package/esm/typings/src/{utils/markdown-json/markdownToMarkdownStructure.test.d.ts → commands/MODEL/modelCommand.test.d.ts} +0 -0
  342. /package/{umd/typings/src/conversion/utils/parseNumber.test.d.ts → esm/typings/src/commands/PARAMETER/parameterCommand.test.d.ts} +0 -0
  343. /package/{umd/typings/src/llm-providers/mocked/fakeTextToExpectations.test.d.ts → esm/typings/src/commands/PERSONA/personaCommand.test.d.ts} +0 -0
  344. /package/{umd/typings/src/llm-providers/mocked/faked-completion.test.d.ts → esm/typings/src/commands/POSTPROCESS/postprocessCommand.test.d.ts} +0 -0
  345. /package/{umd/typings/src/utils/markdown-json/countMarkdownStructureDeepness.test.d.ts → esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommand.test.d.ts} +0 -0
  346. /package/{umd/typings/src/utils/markdown-json/markdownToMarkdownStructure.test.d.ts → esm/typings/src/commands/URL/urlCommand.test.d.ts} +0 -0
  347. /package/esm/typings/src/llm-providers/mocked/{joker.test.d.ts → test/joker.test.d.ts} +0 -0
  348. /package/esm/typings/src/llm-providers/mocked/{mocked-completion.test.d.ts → test/mocked-completion.test.d.ts} +0 -0
  349. /package/umd/typings/src/llm-providers/mocked/{joker.test.d.ts → test/joker.test.d.ts} +0 -0
  350. /package/umd/typings/src/llm-providers/mocked/{mocked-completion.test.d.ts → test/mocked-completion.test.d.ts} +0 -0
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { ExpectCommand } from './ExpectCommand';
3
+ /**
4
+ * Parses the expect command
5
+ *
6
+ * @see ./EXPECT-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const expectCommandParser: CommandParser<ExpectCommand>;
@@ -0,0 +1,11 @@
1
+ import type { string_name } from '../../types/typeAliases';
2
+ /**
3
+ * Parsed JOKER command
4
+ *
5
+ * @see ./jokerCommandParser.ts for more details
6
+ * @private within the commands folder
7
+ */
8
+ export type JokerCommand = {
9
+ readonly type: 'JOKER';
10
+ readonly parameterName: string_name;
11
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { JokerCommand } from './JokerCommand';
3
+ /**
4
+ * Parses the joker command
5
+ *
6
+ * @see ./JOKER-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const jokerCommandParser: CommandParser<JokerCommand>;
@@ -0,0 +1,12 @@
1
+ import type { string_file_relative_path } from '../../types/typeAliases';
2
+ import type { string_url } from '../../types/typeAliases';
3
+ /**
4
+ * Parsed KNOWLEDGE command
5
+ *
6
+ * @see ./knowledgeCommandParser.ts for more details
7
+ * @private within the commands folder
8
+ */
9
+ export type KnowledgeCommand = {
10
+ readonly type: 'KNOWLEDGE';
11
+ readonly source: string_url | string_file_relative_path;
12
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { KnowledgeCommand } from './KnowledgeCommand';
3
+ /**
4
+ * Parses the knowledge command
5
+ *
6
+ * @see ./KNOWLEDGE-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const knowledgeCommandParser: CommandParser<KnowledgeCommand>;
@@ -0,0 +1,13 @@
1
+ import type { ModelRequirements } from '../../types/ModelRequirements';
2
+ import type { TODO } from '../../types/typeAliases';
3
+ /**
4
+ * Parsed MODEL command
5
+ *
6
+ * @see ./modelCommandParser.ts for more details
7
+ * @private within the commands folder
8
+ */
9
+ export type ModelCommand = {
10
+ readonly type: 'MODEL';
11
+ readonly key: keyof ModelRequirements;
12
+ readonly value: TODO;
13
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { ModelCommand } from './ModelCommand';
3
+ /**
4
+ * Parses the model command
5
+ *
6
+ * @see ./MODEL-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const modelCommandParser: CommandParser<ModelCommand>;
@@ -0,0 +1,15 @@
1
+ import type { string_markdown_text } from '../../types/typeAliases';
2
+ import type { string_name } from '../../types/typeAliases';
3
+ /**
4
+ * Parsed PARAMETER command
5
+ *
6
+ * @see ./parameterCommandParser.ts for more details
7
+ * @private within the commands folder
8
+ */
9
+ export type ParameterCommand = {
10
+ readonly type: 'PARAMETER';
11
+ readonly isInput: boolean;
12
+ readonly isOutput: boolean;
13
+ readonly parameterName: string_name;
14
+ readonly parameterDescription: string_markdown_text | null;
15
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { ParameterCommand } from './ParameterCommand';
3
+ /**
4
+ * Parses the parameter command
5
+ *
6
+ * @see ./PARAMETER-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const parameterCommandParser: CommandParser<ParameterCommand>;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Parsed PERSONA command
3
+ *
4
+ * @see ./personaCommandParser.ts for more details
5
+ * @private within the commands folder
6
+ */
7
+ export type PersonaCommand = {
8
+ readonly type: 'PERSONA';
9
+ personaName: string;
10
+ personaDescription: string | null;
11
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { PersonaCommand } from './PersonaCommand';
3
+ /**
4
+ * Parses the persona command
5
+ *
6
+ * @see ./PERSONA-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const personaCommandParser: CommandParser<PersonaCommand>;
@@ -0,0 +1,11 @@
1
+ import type { string_name } from '../../types/typeAliases';
2
+ /**
3
+ * Parsed POSTPROCESS command
4
+ *
5
+ * @see ./postprocessCommandParser.ts for more details
6
+ * @private within the commands folder
7
+ */
8
+ export type PostprocessCommand = {
9
+ readonly type: 'POSTPROCESS';
10
+ readonly functionName: string_name;
11
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { PostprocessCommand } from './PostprocessCommand';
3
+ /**
4
+ * Parses the postprocess command
5
+ *
6
+ * @see ./POSTPROCESS-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const postprocessCommandParser: CommandParser<PostprocessCommand>;
@@ -0,0 +1,11 @@
1
+ import type { string_semantic_version } from '../../types/typeAliases';
2
+ /**
3
+ * Parsed PROMPTBOOK_VERSION command
4
+ *
5
+ * @see ./promptbookVersionCommandParser.ts for more details
6
+ * @private within the commands folder
7
+ */
8
+ export type PromptbookVersionCommand = {
9
+ readonly type: 'PROMPTBOOK_VERSION';
10
+ readonly promptbookVersion: string_semantic_version;
11
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { PromptbookVersionCommand } from './PromptbookVersionCommand';
3
+ /**
4
+ * Parses the PROMPTBOOK_VERSION command
5
+ *
6
+ * @see ./PROMPTBOOK_VERSION-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const promptbookVersionCommandParser: CommandParser<PromptbookVersionCommand>;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Parsed URL command
3
+ *
4
+ * @see ./urlCommandParser.ts for more details
5
+ * @private within the commands folder
6
+ */
7
+ export type UrlCommand = {
8
+ readonly type: 'URL';
9
+ readonly pipelineUrl: URL;
10
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { UrlCommand } from './UrlCommand';
3
+ /**
4
+ * Parses the url command
5
+ *
6
+ * @see ./URL-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const urlCommandParser: CommandParser<UrlCommand>;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Parsed ACTION command
3
+ *
4
+ * @see ./actionCommandParser.ts for more details
5
+ * @private within the commands folder
6
+ */
7
+ export type ActionCommand = {
8
+ readonly type: 'ACTION';
9
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { ActionCommand } from './ActionCommand';
3
+ /**
4
+ * Parses the action command
5
+ *
6
+ * @see ./ACTION-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const actionCommandParser: CommandParser<ActionCommand>;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Parsed INSTRUMENT command
3
+ *
4
+ * @see ./instrumentCommandParser.ts for more details
5
+ * @private within the commands folder
6
+ */
7
+ export type InstrumentCommand = {
8
+ readonly type: 'INSTRUMENT';
9
+ };
@@ -0,0 +1,9 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { InstrumentCommand } from './InstrumentCommand';
3
+ /**
4
+ * Parses the instrument command
5
+ *
6
+ * @see ./INSTRUMENT-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const instrumentCommandParser: CommandParser<InstrumentCommand>;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Parsed BOILERPLATE command
3
+ *
4
+ * @see ./boilerplateCommandParser.ts for more details
5
+ * @private within the commands folder
6
+ */
7
+ export type BoilerplateCommand = {
8
+ readonly type: 'BOILERPLATE';
9
+ readonly value: string;
10
+ };
@@ -0,0 +1,12 @@
1
+ import type { CommandParser } from '../_common/types/CommandParser';
2
+ import type { BoilerplateCommand } from './BoilerplateCommand';
3
+ /**
4
+ * Parses the boilerplate command
5
+ *
6
+ * @see ./BOILERPLATE-README.md for more details
7
+ * @private within the commands folder
8
+ */
9
+ export declare const boilerplateCommandParser: CommandParser<BoilerplateCommand>;
10
+ /**
11
+ * TODO: [💐] Implement BOILERPLATE command into `pipelineStringToJsonSync` function
12
+ */
@@ -0,0 +1,12 @@
1
+ import type { string_markdown_text } from '../../types/typeAliases';
2
+ import type { Command } from './types/Command';
3
+ import type { CommandUsagePlace } from './types/CommandUsagePlaces';
4
+ /**
5
+ * Parses one line of ul/ol to command
6
+ *
7
+ * @returns parsed command object
8
+ * @throws {ParsingError} if the command is invalid
9
+ *
10
+ * @private within the pipelineStringToJson
11
+ */
12
+ export declare function parseCommand(raw: string_markdown_text, usagePlace: CommandUsagePlace): Command;
@@ -0,0 +1,6 @@
1
+ import { COMMANDS } from '../../index';
2
+ /**
3
+ * Command is one piece of the prompt template which adds some logic to the prompt template or the whole pipeline.
4
+ * It is parsed from the markdown from ul/ol items - one command per one item.
5
+ */
6
+ export type Command = ReturnType<typeof COMMANDS[number]['parse']>;
@@ -0,0 +1,36 @@
1
+ import type { string_markdown_text } from '../../../types/typeAliases';
2
+ import type { string_name } from '../../../types/typeAliases';
3
+ import type { string_SCREAMING_CASE } from '../../../utils/normalization/normalizeTo_SCREAMING_CASE';
4
+ import type { CommandUsagePlace } from './CommandUsagePlaces';
5
+ export type CommandParser<TCommand extends {
6
+ type: string_name & string_SCREAMING_CASE;
7
+ }> = {
8
+ name: string_name & string_SCREAMING_CASE;
9
+ aliasNames?: Array<string_name & string_SCREAMING_CASE>;
10
+ deprecatedNames?: Array<string_name & string_SCREAMING_CASE>;
11
+ usagePlaces: Array<CommandUsagePlace>;
12
+ description: string_markdown_text;
13
+ discussionUrl: `https://github.com/webgptorg/promptbook/discussions/${number | '@@'}`;
14
+ examples: Array<string_markdown_text>;
15
+ /**
16
+ * @throws {ParsingError} if the parsing fails
17
+ */
18
+ parse(input: CommandParserInput): TCommand;
19
+ };
20
+ export type CommandParserInput = {
21
+ usagePlace: CommandUsagePlace;
22
+ raw: string_markdown_text;
23
+ rawArgs: string_markdown_text;
24
+ normalized: string_name & string_SCREAMING_CASE;
25
+ args: Array<string_name & string_SCREAMING_CASE>;
26
+ };
27
+ /**
28
+ * TODO: !!!! Annotate
29
+ * TODO: [🧠] Maybe put flag if it is for whole `.ptbk.md` file of just one section
30
+ * TODO: [🍧] CommandParser should have applyToPipelineJson method
31
+ * which will apply parsed command to the pipeline JSON
32
+ * it will be called from `pipelineStringToJsonSync`
33
+ * and replace hardcoded switch statement and [💐]
34
+ * and throw ParsingError
35
+ *
36
+ */
@@ -0,0 +1,9 @@
1
+ import type { TupleToUnion } from 'type-fest';
2
+ /**
3
+ * Where the command can be used
4
+ */
5
+ export type CommandUsagePlace = TupleToUnion<typeof CommandUsagePlaces>;
6
+ /**
7
+ * Where the command can be used
8
+ */
9
+ export declare const CommandUsagePlaces: readonly ["PIPELINE_HEAD", "PIPELINE_TEMPLATE"];
@@ -0,0 +1,4 @@
1
+ /**
2
+ * All available command parsers
3
+ */
4
+ export declare const COMMANDS: readonly [import("./_common/types/CommandParser").CommandParser<import("./BLOCK/BlockCommand").BlockCommand>, import("./_common/types/CommandParser").CommandParser<import("./EXPECT/ExpectCommand").ExpectCommand>, import("./_common/types/CommandParser").CommandParser<import("./JOKER/JokerCommand").JokerCommand>, import("./_common/types/CommandParser").CommandParser<import("./MODEL/ModelCommand").ModelCommand>, import("./_common/types/CommandParser").CommandParser<import("./PARAMETER/ParameterCommand").ParameterCommand>, import("./_common/types/CommandParser").CommandParser<import("./POSTPROCESS/PostprocessCommand").PostprocessCommand>, import("./_common/types/CommandParser").CommandParser<import("./PROMPTBOOK_VERSION/PromptbookVersionCommand").PromptbookVersionCommand>, import("./_common/types/CommandParser").CommandParser<import("./URL/UrlCommand").UrlCommand>, import("./_common/types/CommandParser").CommandParser<import("./KNOWLEDGE/KnowledgeCommand").KnowledgeCommand>, import("./_common/types/CommandParser").CommandParser<import("./X_ACTION/ActionCommand").ActionCommand>, import("./_common/types/CommandParser").CommandParser<import("./X_INSTRUMENT/InstrumentCommand").InstrumentCommand>, import("./_common/types/CommandParser").CommandParser<import("./PERSONA/PersonaCommand").PersonaCommand>, import("./_common/types/CommandParser").CommandParser<import("./_BOILERPLATE/BoilerplateCommand").BoilerplateCommand>];
@@ -10,3 +10,7 @@ export declare const CHARACTER_LOOP_LIMIT = 100000;
10
10
  * The name of the builded pipeline collection made by CLI `ptbk make` and for lookup in `createCollectionFromDirectory`
11
11
  */
12
12
  export declare const PIPELINE_COLLECTION_BASE_FILENAME = "index";
13
+ /**
14
+ * The names of the parameters that are reserved for special purposes
15
+ */
16
+ export declare const RESERVED_PARAMETER_NAMES: string[];
@@ -8,5 +8,7 @@ import type { PipelineString } from '../types/PipelineString';
8
8
  */
9
9
  export declare function pipelineJsonToString(pipelineJson: PipelineJson): PipelineString;
10
10
  /**
11
+ * TODO: !!!!! Implement new features and commands into `promptTemplateParameterJsonToString`
12
+ * TODO: [🧠] Is there a way to auto-detect missing features in pipelineJsonToString
11
13
  * TODO: Escape all
12
14
  */
@@ -4,7 +4,7 @@ import type { PipelineString } from '../types/PipelineString';
4
4
  /**
5
5
  * Options for pipelineStringToJson
6
6
  */
7
- type PipelineStringToJsonOptions = {
7
+ export type PipelineStringToJsonOptions = {
8
8
  /**
9
9
  * Tools for processing required for knowledge processing *(not for actual execution)*
10
10
  */
@@ -20,13 +20,12 @@ type PipelineStringToJsonOptions = {
20
20
  * @param pipelineString {Promptbook} in string markdown format (.ptbk.md)
21
21
  * @param options - Options and tools for the compilation
22
22
  * @returns {Promptbook} compiled in JSON format (.ptbk.json)
23
- * @throws {SyntaxError} if the promptbook string is not valid
23
+ * @throws {ParsingError} if the promptbook string is not valid
24
24
  *
25
25
  * Note: This function does not validate logic of the pipeline only the syntax
26
26
  * Note: This function acts as compilation process
27
27
  */
28
28
  export declare function pipelineStringToJson(pipelineString: PipelineString, options?: PipelineStringToJsonOptions): Promise<PipelineJson>;
29
- export {};
30
29
  /**
31
30
  * TODO: [🏏] Leverage the batch API and build queues @see https://platform.openai.com/docs/guides/batch
32
31
  */
@@ -10,14 +10,16 @@ import type { PipelineString } from '../types/PipelineString';
10
10
  * @param pipelineString {Promptbook} in string markdown format (.ptbk.md)
11
11
  * @param options - Options and tools for the compilation
12
12
  * @returns {Promptbook} compiled in JSON format (.ptbk.json)
13
- * @throws {SyntaxError} if the promptbook string is not valid
13
+ * @throws {ParsingError} if the promptbook string is not valid
14
14
  *
15
15
  * Note: This function does not validate logic of the pipeline only the syntax
16
16
  * Note: This function acts as compilation process
17
17
  */
18
18
  export declare function pipelineStringToJsonSync(pipelineString: PipelineString): PipelineJson;
19
19
  /**
20
- * TODO: Report here line/column of error
20
+ * TODO: !!!! Warn if used only sync version
21
+ * TODO: [🚞] Report here line/column of error
21
22
  * TODO: Use spaceTrim more effectively
22
23
  * TODO: [🧠] Parameter flags - isInput, isOutput, isInternal
24
+ * TODO: [🥞] Not optimal parsing because `splitMarkdownIntoSections` is executed twice with same string, once through `flattenMarkdown` and second directly here
23
25
  */
@@ -5,9 +5,9 @@ import type { string_name } from '../../types/typeAliases';
5
5
  *
6
6
  * @param promptTemplate the template with used parameters
7
7
  * @returns the set of parameter names
8
- * @throws {SyntaxError} if the script is invalid
8
+ * @throws {ParsingError} if the script is invalid
9
9
  */
10
- export declare function extractParametersFromPromptTemplate(promptTemplate: Pick<PromptTemplateJson, 'title' | 'description' | 'executionType' | 'content'>): Set<string_name>;
10
+ export declare function extractParametersFromPromptTemplate(promptTemplate: Pick<PromptTemplateJson, 'title' | 'description' | 'blockType' | 'content'>): Set<string_name>;
11
11
  /**
12
12
  * TODO: [🔣] If script require contentLanguage
13
13
  */
@@ -5,7 +5,7 @@ import type { string_javascript_name } from '../../types/typeAliases';
5
5
  *
6
6
  * @param script from which to extract the variables
7
7
  * @returns the list of variable names
8
- * @throws {SyntaxError} if the script is invalid
8
+ * @throws {ParsingError} if the script is invalid
9
9
  */
10
10
  export declare function extractVariables(script: string_javascript): Set<string_javascript_name>;
11
11
  /**
@@ -1 +1,4 @@
1
1
  export {};
2
+ /**
3
+ * TODO: Include automatically all samples from logic errors folder (same with syntax errors)
4
+ */
@@ -0,0 +1,7 @@
1
+ /**
2
+ * This error type indicates that some part of the code is not implemented yet
3
+ */
4
+ export declare class NotYetImplementedError extends Error {
5
+ readonly name = "NotYetImplementedError";
6
+ constructor(message: string);
7
+ }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * This error indicates that the promptbook in a markdown format cannot be parsed into a valid promptbook object
3
3
  */
4
- export declare class SyntaxError extends Error {
5
- readonly name = "SyntaxError";
4
+ export declare class ParsingError extends Error {
5
+ readonly name = "ParsingError";
6
6
  constructor(message: string);
7
7
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * This error indicates errors during the execution of the pipeline
3
3
  */
4
- export declare class ExecutionError extends Error {
5
- readonly name = "ExecutionError";
4
+ export declare class PipelineExecutionError extends Error {
5
+ readonly name = "PipelineExecutionError";
6
6
  constructor(message: string);
7
7
  }
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * This error occurs when some expectation is not met in the execution of the pipeline
3
3
  *
4
- * @private Always catched and rethrown as `ExecutionError`
5
- * Note: This is a kindof subtype of ExecutionError
4
+ * @private Always catched and rethrown as `PipelineExecutionError`
5
+ * Note: This is a kindof subtype of PipelineExecutionError
6
6
  */
7
7
  export declare class ExpectError extends Error {
8
8
  readonly name = "ExpectError";
@@ -1,3 +1,4 @@
1
+ import type { Arrayable } from '../types/Arrayable';
1
2
  import type { LlmExecutionTools } from './LlmExecutionTools';
2
3
  import type { ScriptExecutionTools } from './ScriptExecutionTools';
3
4
  import type { UserInterfaceTools } from './UserInterfaceTools';
@@ -10,10 +11,10 @@ export type ExecutionTools = {
10
11
  /**
11
12
  * Tools for executing prompts to large language models like GPT-4
12
13
  *
13
- * Tip: Combine multiple LLM execution tools with `MultipleLlmExecutionTools`
14
+ * Tip: Combine multiple LLM execution tools - use array of LlmExecutionTools instead of single LlmExecutionTools
14
15
  * @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#llm-execution-tools
15
16
  */
16
- llm: LlmExecutionTools;
17
+ llm?: Arrayable<LlmExecutionTools>;
17
18
  /**
18
19
  * Tools for executing scripts
19
20
  *
@@ -21,7 +22,7 @@ export type ExecutionTools = {
21
22
  * If none of them supports the script, an error is thrown
22
23
  * @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#script-execution-tools
23
24
  */
24
- script: Array<ScriptExecutionTools>;
25
+ script?: Arrayable<ScriptExecutionTools>;
25
26
  /**
26
27
  * Tools for interacting with the user
27
28
  *
@@ -1,10 +1,13 @@
1
1
  import type { Promisable } from 'type-fest';
2
2
  import type { ModelVariant } from '../types/ModelRequirements';
3
3
  import type { Prompt } from '../types/Prompt';
4
+ import type { string_markdown } from '../types/typeAliases';
5
+ import type { string_markdown_text } from '../types/typeAliases';
4
6
  import type { string_model_name } from '../types/typeAliases';
5
7
  import type { string_title } from '../types/typeAliases';
6
8
  import type { PromptChatResult } from './PromptResult';
7
9
  import type { PromptCompletionResult } from './PromptResult';
10
+ import type { PromptEmbeddingResult } from './PromptResult';
8
11
  /**
9
12
  * Container for all the tools needed to execute prompts to large language models like GPT-4
10
13
  * On its interface it exposes common methods for prompt execution.
@@ -14,13 +17,29 @@ import type { PromptCompletionResult } from './PromptResult';
14
17
  */
15
18
  export type LlmExecutionTools = {
16
19
  /**
17
- * Use a chat model
20
+ * Title of the model provider
21
+ *
22
+ * @example "OpenAI"
18
23
  */
19
- callChatModel(prompt: Prompt): Promise<PromptChatResult>;
24
+ readonly title: string_title & string_markdown_text;
20
25
  /**
21
- * Use a completion model
26
+ * Description of the provider
27
+ *
28
+ * @example "Use all models from OpenAI"
22
29
  */
23
- callCompletionModel(prompt: Prompt): Promise<PromptCompletionResult>;
30
+ readonly description: string_markdown;
31
+ /**
32
+ * Calls a chat model
33
+ */
34
+ callChatModel?(prompt: Prompt): Promise<PromptChatResult>;
35
+ /**
36
+ * Calls a completion model
37
+ */
38
+ callCompletionModel?(prompt: Prompt): Promise<PromptCompletionResult>;
39
+ /**
40
+ * Calls an embedding model
41
+ */
42
+ callEmbeddingModel?(prompt: Prompt): Promise<PromptEmbeddingResult>;
24
43
  /**
25
44
  * List all available models that can be used
26
45
  */
@@ -44,8 +63,8 @@ export type AvailableModel = {
44
63
  readonly modelVariant: ModelVariant;
45
64
  };
46
65
  /**
66
+ * TODO: !!!! Translation model
47
67
  * TODO: [🧠] Emulation of one type of model with another one - emuate chat with completion; emulate translation with chat
48
68
  * TODO: [🍓][♐] Some heuristic to pick the best model in listed models
49
- * TODO: [🏳] callChatModel -> chat, callCompletionModel -> complete, translate
50
69
  * TODO: [🧠] Should or should not there be a word "GPT" in both callCompletionModel and callChatModel
51
70
  */
@@ -1,5 +1,5 @@
1
1
  import type { KebabCase } from 'type-fest';
2
- import type { ExpectationUnit } from '../types/PipelineJson/PromptTemplateJson';
2
+ import type { ExpectationUnit } from '../types/PipelineJson/Expectations';
3
3
  import type { number_positive } from '../types/typeAliases';
4
4
  import type { number_usd } from '../types/typeAliases';
5
5
  import type { string_date_iso8601 } from '../types/typeAliases';
@@ -11,7 +11,7 @@ import type { EmbeddingVector } from './EmbeddingVector';
11
11
  *
12
12
  * @see https://github.com/webgptorg/promptbook#prompt-result
13
13
  */
14
- export type PromptResult = PromptCompletionResult | PromptChatResult;
14
+ export type PromptResult = PromptCompletionResult | PromptChatResult | PromptEmbeddingResult;
15
15
  /**
16
16
  * Prompt completion result
17
17
  * It contains only the following text NOT the whole completion