@promptbook/legacy-documents 0.71.0-18 → 0.71.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 (88) hide show
  1. package/README.md +0 -6
  2. package/esm/index.es.js +80 -86
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/src/_packages/core.index.d.ts +22 -18
  5. package/esm/typings/src/_packages/types.index.d.ts +2 -2
  6. package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
  7. package/esm/typings/src/collection/SimplePipelineCollection.d.ts +2 -2
  8. package/esm/typings/src/collection/collectionToJson.d.ts +1 -1
  9. package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +1 -1
  10. package/esm/typings/src/collection/constructors/createCollectionFromPromise.d.ts +1 -1
  11. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +5 -5
  12. package/esm/typings/src/config.d.ts +21 -14
  13. package/esm/typings/src/execution/EmbeddingVector.d.ts +1 -1
  14. package/esm/typings/src/execution/LlmExecutionTools.d.ts +1 -1
  15. package/esm/typings/src/execution/PipelineExecutorResult.d.ts +2 -2
  16. package/esm/typings/src/execution/assertsExecutionSuccessful.d.ts +1 -0
  17. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +29 -6
  18. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +2 -11
  19. package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +4 -13
  20. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +9 -14
  21. package/esm/typings/src/execution/utils/addUsage.d.ts +1 -1
  22. package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -1
  23. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +2 -2
  24. package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +2 -2
  25. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForCli.d.ts +2 -2
  26. package/esm/typings/src/llm-providers/_common/register/LlmToolsConfiguration.d.ts +1 -1
  27. package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +4 -1
  28. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  29. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  30. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  31. package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +1 -1
  32. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +1 -1
  33. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +1 -1
  34. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +3 -3
  35. package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +1 -1
  36. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +1 -1
  37. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
  38. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +1 -1
  39. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Response.d.ts +1 -1
  40. package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +4 -4
  41. package/esm/typings/src/prepare/prepareTemplates.d.ts +1 -1
  42. package/esm/typings/src/scrapers/_common/Scraper.d.ts +1 -5
  43. package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +1 -1
  44. package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +1 -1
  45. package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +1 -1
  46. package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +2 -2
  47. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +2 -2
  48. package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +1 -1
  49. package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +1 -1
  50. package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -1
  51. package/esm/typings/src/scrapers/document/register-metadata.d.ts +1 -1
  52. package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +1 -1
  53. package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -1
  54. package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +1 -1
  55. package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +1 -1
  56. package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -1
  57. package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +1 -1
  58. package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +1 -1
  59. package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -1
  60. package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +1 -1
  61. package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +1 -1
  62. package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -1
  63. package/esm/typings/src/scrapers/website/register-metadata.d.ts +1 -1
  64. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  65. package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.d.ts +1 -1
  66. package/esm/typings/src/types/Arrayable.d.ts +1 -1
  67. package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +7 -0
  68. package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +4 -4
  69. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +1 -1
  70. package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +1 -1
  71. package/esm/typings/src/types/Prompt.d.ts +1 -1
  72. package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +1 -1
  73. package/esm/typings/src/utils/$Register.d.ts +1 -1
  74. package/esm/typings/src/utils/FromtoItems.d.ts +1 -1
  75. package/esm/typings/src/utils/arrayableToArray.d.ts +1 -1
  76. package/esm/typings/src/utils/emojis.d.ts +1 -1
  77. package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
  78. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +1 -1
  79. package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +1 -1
  80. package/esm/typings/src/utils/organization/TODO_USE.d.ts +1 -1
  81. package/esm/typings/src/utils/organization/keepUnused.d.ts +1 -1
  82. package/esm/typings/src/utils/random/$randomSeed.d.ts +1 -1
  83. package/esm/typings/src/utils/sets/intersection.d.ts +1 -1
  84. package/esm/typings/src/utils/sets/union.d.ts +1 -1
  85. package/package.json +2 -2
  86. package/umd/index.umd.js +80 -86
  87. package/umd/index.umd.js.map +1 -1
  88. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +0 -29
@@ -8,7 +8,7 @@ import type { number_usd } from '../../types/typeAliases';
8
8
  * @see https://docs.anthropic.com/en/docs/models-overview
9
9
  * @public exported from `@promptbook/anthropic-claude`
10
10
  */
11
- export declare const ANTHROPIC_CLAUDE_MODELS: Array<AvailableModel & {
11
+ export declare const ANTHROPIC_CLAUDE_MODELS: ReadonlyArray<AvailableModel & {
12
12
  pricing?: {
13
13
  readonly prompt: number_usd;
14
14
  readonly output: number_usd;
@@ -35,7 +35,7 @@ export declare class AzureOpenAiExecutionTools implements LlmExecutionTools {
35
35
  /**
36
36
  * List all available Azure OpenAI models that can be used
37
37
  */
38
- listModels(): Promise<Array<AvailableModel>>;
38
+ listModels(): Promise<ReadonlyArray<AvailableModel>>;
39
39
  /**
40
40
  * Calls OpenAI API to use a chat model.
41
41
  */
@@ -9,7 +9,7 @@ import type { string_postprocessing_function_name } from '../../types/typeAliase
9
9
  *
10
10
  * @private internal utility for MockedFackedLlmExecutionTools
11
11
  */
12
- export declare function $fakeTextToExpectations(expectations: Expectations, postprocessingFunctionNames?: Array<string_postprocessing_function_name>): Promise<string>;
12
+ export declare function $fakeTextToExpectations(expectations: Expectations, postprocessingFunctionNames?: ReadonlyArray<string_postprocessing_function_name>): Promise<string>;
13
13
  /**
14
14
  * TODO: [💝] Unite object for expecting amount and format - use here also a format
15
15
  */
@@ -24,7 +24,7 @@ export declare class MockedEchoLlmExecutionTools implements LlmExecutionTools {
24
24
  /**
25
25
  * List all available mocked-models that can be used
26
26
  */
27
- listModels(): Array<AvailableModel>;
27
+ listModels(): ReadonlyArray<AvailableModel>;
28
28
  /**
29
29
  * Mocks chat model
30
30
  */
@@ -25,7 +25,7 @@ export declare class MockedFackedLlmExecutionTools implements LlmExecutionTools
25
25
  /**
26
26
  * List all available fake-models that can be used
27
27
  */
28
- listModels(): Array<AvailableModel>;
28
+ listModels(): ReadonlyArray<AvailableModel>;
29
29
  /**
30
30
  * Fakes chat model
31
31
  */
@@ -21,11 +21,11 @@ export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
21
21
  /**
22
22
  * Array of execution tools in order of priority
23
23
  */
24
- readonly llmExecutionTools: Array<LlmExecutionTools>;
24
+ readonly llmExecutionTools: ReadonlyArray<LlmExecutionTools>;
25
25
  /**
26
26
  * Gets array of execution tools in order of priority
27
27
  */
28
- constructor(...llmExecutionTools: Array<LlmExecutionTools>);
28
+ constructor(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>);
29
29
  get title(): string_title & string_markdown_text;
30
30
  get description(): string_markdown;
31
31
  /**
@@ -36,7 +36,7 @@ export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
36
36
  * List all available models that can be used
37
37
  * This lists is a combination of all available models from all execution tools
38
38
  */
39
- listModels(): Promise<Array<AvailableModel>>;
39
+ listModels(): Promise<ReadonlyArray<AvailableModel>>;
40
40
  /**
41
41
  * Calls the best available chat model
42
42
  */
@@ -15,7 +15,7 @@ import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
15
15
  *
16
16
  * @public exported from `@promptbook/core`
17
17
  */
18
- export declare function joinLlmExecutionTools(...llmExecutionTools: Array<LlmExecutionTools>): MultipleLlmExecutionTools;
18
+ export declare function joinLlmExecutionTools(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>): MultipleLlmExecutionTools;
19
19
  /**
20
20
  * TODO: [👷‍♂️] @@@ Manual about construction of llmTools
21
21
  */
@@ -36,7 +36,7 @@ export declare class OpenAiExecutionTools implements LlmExecutionTools {
36
36
  /**
37
37
  * List all available OpenAI models that can be used
38
38
  */
39
- listModels(): Array<AvailableModel>;
39
+ listModels(): ReadonlyArray<AvailableModel>;
40
40
  /**
41
41
  * Calls OpenAI API to use a chat model.
42
42
  */
@@ -9,7 +9,7 @@ import type { number_usd } from '../../types/typeAliases';
9
9
  * @see https://openai.com/api/pricing/
10
10
  * @public exported from `@promptbook/openai`
11
11
  */
12
- export declare const OPENAI_MODELS: Array<AvailableModel & {
12
+ export declare const OPENAI_MODELS: ReadonlyArray<AvailableModel & {
13
13
  pricing?: {
14
14
  readonly prompt: number_usd;
15
15
  readonly output: number_usd;
@@ -31,7 +31,7 @@ export declare class RemoteLlmExecutionTools implements LlmExecutionTools {
31
31
  /**
32
32
  * List all available models that can be used
33
33
  */
34
- listModels(): Promise<Array<AvailableModel>>;
34
+ listModels(): Promise<ReadonlyArray<AvailableModel>>;
35
35
  /**
36
36
  * Creates a connection to the remote proxy server.
37
37
  */
@@ -8,7 +8,7 @@ export type PromptbookServer_ListModels_Response = {
8
8
  /**
9
9
  * Available models that can be used
10
10
  */
11
- readonly models: Array<AvailableModel>;
11
+ readonly models: ReadonlyArray<AvailableModel>;
12
12
  };
13
13
  /**
14
14
  * TODO: [👒] Listing models (and checking configuration) probbably should go through REST API not Socket.io
@@ -1,3 +1,4 @@
1
+ import type { IntermediateFilesStrategy } from '../types/IntermediateFilesStrategy';
1
2
  import type { string_dirname } from '../types/typeAliases';
2
3
  /**
3
4
  * Options for preparation of the pipeline
@@ -21,12 +22,11 @@ export type PrepareAndScrapeOptions = {
21
22
  */
22
23
  readonly cacheDirname?: string_dirname;
23
24
  /**
24
- * If true, the cache is cleaned after the scraping
25
+ * Strategy for caching the intermediate results for knowledge source
25
26
  *
26
- *
27
- * @default false // <- TODO: !!!!!! Change to `cacheStrategy`/`intermediateFiles`, Put to global config, change to `true` and explicitly set to `false` in all playgrounds
27
+ * @default DEFAULT_INTERMEDIATE_FILES_STRATEGY
28
28
  */
29
- readonly isCacheCleaned?: boolean;
29
+ readonly intermediateFilesStrategy?: IntermediateFilesStrategy;
30
30
  /**
31
31
  * Maximum number of tasks running in parallel
32
32
  *
@@ -12,7 +12,7 @@ type PreparedTemplates = {
12
12
  /**
13
13
  * @@@ Sequence of templates that are chained together to form a pipeline
14
14
  */
15
- readonly templatesPrepared: Array<TemplateJson>;
15
+ readonly templatesPrepared: ReadonlyArray<TemplateJson>;
16
16
  };
17
17
  /**
18
18
  * @@@
@@ -17,7 +17,7 @@ export type Scraper = {
17
17
  /**
18
18
  * Scrapes the markdown file and returns the knowledge pieces or `null` if it can't scrape it
19
19
  */
20
- scrape(source: ScraperSourceHandler): Promisable<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
20
+ scrape(source: ScraperSourceHandler): Promisable<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
21
21
  };
22
22
  /**
23
23
  * @@@
@@ -60,7 +60,3 @@ export type ScraperSourceHandler = {
60
60
  * TODO: [🐝] @@@ Annotate all
61
61
  * TODO: [🔼] Export via types
62
62
  */
63
- /**
64
- * Note: [⚫] Code in this file should never be published in any package
65
- * <- TODO: !!!!!! Test that this is catched
66
- */
@@ -8,7 +8,7 @@ import type { ExecutionTools } from '../../execution/ExecutionTools';
8
8
  * @see https://github.com/webgptorg/promptbook/discussions/41
9
9
  * @public exported from `@promptbook/core`
10
10
  */
11
- export declare function prepareKnowledgePieces(knowledgeSources: Array<KnowledgeSourceJson>, tools: Pick<ExecutionTools, 'llm' | 'fs' | 'scrapers'>, options: PrepareAndScrapeOptions): Promise<Array<Omit<KnowledgePiecePreparedJson, 'preparationIds'>>>;
11
+ export declare function prepareKnowledgePieces(knowledgeSources: ReadonlyArray<KnowledgeSourceJson>, tools: Pick<ExecutionTools, 'llm' | 'fs' | 'scrapers'>, options: PrepareAndScrapeOptions): Promise<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'preparationIds'>>>;
12
12
  /**
13
13
  * TODO: [🧊] In future one preparation can take data from previous preparation and save tokens and time
14
14
  * Put `knowledgePieces` into `PrepareKnowledgeOptions`
@@ -9,4 +9,4 @@ import type { Scraper } from '../Scraper';
9
9
  *
10
10
  * @public exported from `@promptbook/browser`
11
11
  */
12
- export declare function $provideScrapersForBrowser(tools: Pick<ExecutionTools, 'llm'>, options?: PrepareAndScrapeOptions): Promise<Array<Scraper>>;
12
+ export declare function $provideScrapersForBrowser(tools: Pick<ExecutionTools, 'llm'>, options?: PrepareAndScrapeOptions): Promise<ReadonlyArray<Scraper>>;
@@ -9,7 +9,7 @@ import type { Scraper } from '../Scraper';
9
9
  *
10
10
  * @public exported from `@promptbook/node`
11
11
  */
12
- export declare function $provideScrapersForNode(tools: Pick<ExecutionTools, 'fs' | 'llm' | 'executables'>, options?: PrepareAndScrapeOptions): Promise<Array<Scraper>>;
12
+ export declare function $provideScrapersForNode(tools: Pick<ExecutionTools, 'fs' | 'llm' | 'executables'>, options?: PrepareAndScrapeOptions): Promise<ReadonlyArray<Scraper>>;
13
13
  /**
14
14
  * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
15
15
  */
@@ -1,8 +1,8 @@
1
+ import type { Executables } from '../../../execution/Executables';
1
2
  import type { string_mime_type } from '../../../types/typeAliases';
2
3
  import type { string_promptbook_documentation_url } from '../../../types/typeAliases';
3
4
  import type { string_title } from '../../../types/typeAliases';
4
5
  import type { Registered } from '../../../utils/$Register';
5
- import type { TODO_any } from '../../../utils/organization/TODO_any';
6
6
  /**
7
7
  * @@@
8
8
  *
@@ -33,7 +33,7 @@ export type ScraperAndConverterMetadata = Registered & {
33
33
  /**
34
34
  * @@@
35
35
  */
36
- readonly requiredExecutables: TODO_any;
36
+ readonly requiredExecutables: ReadonlyArray<Capitalize<keyof Executables extends `${infer N}Path` ? N : never>>;
37
37
  /**
38
38
  * Link to documentation
39
39
  */
@@ -13,7 +13,7 @@ type GetScraperIntermediateSourceSource = Pick<ScraperSourceHandler, 'filename'
13
13
  *
14
14
  * @private internal utility of `getScraperIntermediateSource`
15
15
  */
16
- type GetScraperIntermediateSourceHandler = Required<Pick<PrepareAndScrapeOptions, 'rootDirname' | 'cacheDirname' | 'isCacheCleaned' | 'isVerbose'>> & {
16
+ type GetScraperIntermediateSourceHandler = Required<Pick<PrepareAndScrapeOptions, 'rootDirname' | 'cacheDirname' | 'intermediateFilesStrategy' | 'isVerbose'>> & {
17
17
  readonly extension: string_file_extension;
18
18
  };
19
19
  /**
@@ -28,7 +28,7 @@ export {};
28
28
  /**
29
29
  * Note: Not using `FileCacheStorage` for two reasons:
30
30
  * 1) Need to store more than serialized JSONs
31
- * 2) Need to switch between a `rootDirname` and `cacheDirname` <- TODO: !!!!
31
+ * 2) Need to switch between a `rootDirname` and `cacheDirname` <- TODO: [😡]
32
32
  * TODO: [🐱‍🐉][🧠] Make some smart crop
33
33
  * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
34
34
  */
@@ -6,6 +6,6 @@ import type { ScraperSourceHandler } from '../Scraper';
6
6
  /**
7
7
  * @@@
8
8
  *
9
- * @private for scraper utilities
9
+ * @public exported from `@promptbook/core`
10
10
  */
11
11
  export declare function makeKnowledgeSourceHandler(knowledgeSource: SetOptional<KnowledgeSourceJson, 'name'>, tools: Pick<ExecutionTools, 'fs'>, options?: Pick<PrepareAndScrapeOptions, 'rootDirname' | 'isVerbose'>): Promise<ScraperSourceHandler>;
@@ -33,7 +33,7 @@ export declare class DocumentScraper implements Converter, Scraper {
33
33
  /**
34
34
  * Scrapes the docx file and returns the knowledge pieces or `null` if it can't scrape it
35
35
  */
36
- scrape(source: ScraperSourceHandler): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
36
+ scrape(source: ScraperSourceHandler): Promise<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
37
37
  }
38
38
  /**
39
39
  * TODO: [👣] Converted documents can act as cached items - there is no need to run conversion each time
@@ -13,7 +13,7 @@ export declare const createDocumentScraper: ((tools: Pick<ExecutionTools, 'llm'>
13
13
  mimeTypes: string[];
14
14
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
15
15
  isAvilableInBrowser: false;
16
- requiredExecutables: string[];
16
+ requiredExecutables: "Pandoc"[];
17
17
  }>;
18
18
  /**
19
19
  * TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
@@ -11,7 +11,7 @@ export declare const documentScraperMetadata: import("type-fest/source/readonly-
11
11
  mimeTypes: string[];
12
12
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
13
13
  isAvilableInBrowser: false;
14
- requiredExecutables: string[];
14
+ requiredExecutables: "Pandoc"[];
15
15
  }>;
16
16
  /**
17
17
  * Registration of known scraper metadata
@@ -33,7 +33,7 @@ export declare class LegacyDocumentScraper implements Converter, Scraper {
33
33
  /**
34
34
  * Scrapes the `.doc` or `.rtf` file and returns the knowledge pieces or `null` if it can't scrape it
35
35
  */
36
- scrape(source: ScraperSourceHandler): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
36
+ scrape(source: ScraperSourceHandler): Promise<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
37
37
  }
38
38
  /**
39
39
  * TODO: [👣] Converted documents can act as cached items - there is no need to run conversion each time
@@ -13,7 +13,7 @@ export declare const createLegacyDocumentScraper: ((tools: Pick<ExecutionTools,
13
13
  mimeTypes: string[];
14
14
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
15
15
  isAvilableInBrowser: false;
16
- requiredExecutables: string[];
16
+ requiredExecutables: ("Pandoc" | "LibreOffice")[];
17
17
  }>;
18
18
  /**
19
19
  * TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
@@ -11,7 +11,7 @@ export declare const legacyDocumentScraperMetadata: import("type-fest/source/rea
11
11
  mimeTypes: string[];
12
12
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
13
13
  isAvilableInBrowser: false;
14
- requiredExecutables: string[];
14
+ requiredExecutables: ("Pandoc" | "LibreOffice")[];
15
15
  }>;
16
16
  /**
17
17
  * Registration of known scraper metadata
@@ -21,7 +21,7 @@ export declare class MarkdownScraper implements Scraper {
21
21
  /**
22
22
  * Scrapes the markdown file and returns the knowledge pieces or `null` if it can't scrape it
23
23
  */
24
- scrape(source: ScraperSourceHandler): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
24
+ scrape(source: ScraperSourceHandler): Promise<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
25
25
  }
26
26
  /**
27
27
  * TODO: [🪂] Do it in parallel 11:11
@@ -13,7 +13,7 @@ export declare const createMarkdownScraper: ((tools: Pick<ExecutionTools, 'llm'>
13
13
  mimeTypes: string[];
14
14
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
15
15
  isAvilableInBrowser: true;
16
- requiredExecutables: string[];
16
+ requiredExecutables: never[];
17
17
  }>;
18
18
  /**
19
19
  * TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
@@ -11,7 +11,7 @@ export declare const markdownScraperMetadata: import("type-fest/source/readonly-
11
11
  mimeTypes: string[];
12
12
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
13
13
  isAvilableInBrowser: true;
14
- requiredExecutables: string[];
14
+ requiredExecutables: never[];
15
15
  }>;
16
16
  /**
17
17
  * Registration of known scraper metadata
@@ -31,7 +31,7 @@ export declare class PdfScraper implements Converter, Scraper {
31
31
  /**
32
32
  * Scrapes the `.pdf` file and returns the knowledge pieces or `null` if it can't scrape it
33
33
  */
34
- scrape(source: ScraperSourceHandler): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
34
+ scrape(source: ScraperSourceHandler): Promise<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
35
35
  }
36
36
  /**
37
37
  * TODO: [👣] Converted pdf documents can act as cached items - there is no need to run conversion each time
@@ -13,7 +13,7 @@ export declare const createPdfScraper: ((tools: Pick<ExecutionTools, 'llm'>, opt
13
13
  mimeTypes: string[];
14
14
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
15
15
  isAvilableInBrowser: true;
16
- requiredExecutables: string[];
16
+ requiredExecutables: never[];
17
17
  }>;
18
18
  /**
19
19
  * TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
@@ -11,7 +11,7 @@ export declare const pdfScraperMetadata: import("type-fest/source/readonly-deep"
11
11
  mimeTypes: string[];
12
12
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
13
13
  isAvilableInBrowser: true;
14
- requiredExecutables: string[];
14
+ requiredExecutables: never[];
15
15
  }>;
16
16
  /**
17
17
  * Registration of known scraper metadata
@@ -40,7 +40,7 @@ export declare class WebsiteScraper implements Converter, Scraper {
40
40
  /**
41
41
  * Scrapes the website and returns the knowledge pieces or `null` if it can't scrape it
42
42
  */
43
- scrape(source: ScraperSourceHandler): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
43
+ scrape(source: ScraperSourceHandler): Promise<ReadonlyArray<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>> | null>;
44
44
  }
45
45
  /**
46
46
  * TODO: [👣] Scraped website in .md can act as cache item - there is no need to run conversion each time
@@ -13,7 +13,7 @@ export declare const createWebsiteScraper: ((tools: Pick<ExecutionTools, 'llm'>,
13
13
  mimeTypes: string[];
14
14
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
15
15
  isAvilableInBrowser: false;
16
- requiredExecutables: string[];
16
+ requiredExecutables: never[];
17
17
  }>;
18
18
  /**
19
19
  * TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
@@ -11,7 +11,7 @@ export declare const websiteScraperMetadata: import("type-fest/source/readonly-d
11
11
  mimeTypes: string[];
12
12
  documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
13
13
  isAvilableInBrowser: false;
14
- requiredExecutables: string[];
14
+ requiredExecutables: never[];
15
15
  }>;
16
16
  /**
17
17
  * Registration of known scraper metadata
@@ -7,7 +7,7 @@ import type { really_any } from '../../../utils/organization/really_any';
7
7
  * @returns nothing
8
8
  * @private internal function of `JavascriptExecutionTools` and `JavascriptEvalExecutionTools`
9
9
  */
10
- export declare function preserve(func: (...params: Array<really_any>) => unknown): void;
10
+ export declare function preserve(func: (...params: ReadonlyArray<really_any>) => unknown): void;
11
11
  /**
12
12
  * TODO: !! [1] This maybe does memory leak
13
13
  */
@@ -4,4 +4,4 @@ import type { string_name } from '../../../types/typeAliases';
4
4
  *
5
5
  * @private for `FileCacheStorage`
6
6
  */
7
- export declare function nameToSubfolderPath(name: string_name): Array<string>;
7
+ export declare function nameToSubfolderPath(name: string_name): ReadonlyArray<string>;
@@ -7,4 +7,4 @@
7
7
  *
8
8
  * @private internal type
9
9
  */
10
- export type Arrayable<TItem> = TItem | Array<TItem> | undefined;
10
+ export type Arrayable<TItem> = TItem | ReadonlyArray<TItem> | undefined;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @@@
3
+ */
4
+ export type IntermediateFilesStrategy = 'HIDE_AND_CLEAN' | 'HIDE_AND_KEEP';
5
+ /**
6
+ * TODO: [🎅] Maube add options for all kinds of cache, unite with `isCacheReloaded` and make `cacheStrategy` (which is not specific only for intermediate files)
7
+ */
@@ -31,7 +31,7 @@ export type KnowledgePiecePreparedJson = {
31
31
  /**
32
32
  * List of sources where the information comes from
33
33
  */
34
- readonly sources: Array<{
34
+ readonly sources: ReadonlyArray<{
35
35
  /**
36
36
  * Identifier of the source
37
37
  */
@@ -48,11 +48,11 @@ export type KnowledgePiecePreparedJson = {
48
48
  /**
49
49
  * List of keywords that are associated with the knowledge piece
50
50
  */
51
- readonly keywords: Array<string_keyword>;
51
+ readonly keywords: ReadonlyArray<string_keyword>;
52
52
  /**
53
53
  * List of models embeddings that are associated with the knowledge piece
54
54
  */
55
- readonly index: Array<{
55
+ readonly index: ReadonlyArray<{
56
56
  /**
57
57
  * Model name which generated the embedding
58
58
  */
@@ -65,7 +65,7 @@ export type KnowledgePiecePreparedJson = {
65
65
  /**
66
66
  * List of preparation ids that were used to prepare this knowledge piece
67
67
  */
68
- readonly preparationIds: Array<number_id>;
68
+ readonly preparationIds: ReadonlyArray<number_id>;
69
69
  };
70
70
  /**
71
71
  * TODO: [🍙] Make some standard order of json properties
@@ -37,7 +37,7 @@ export type KnowledgeSourcePreparedJson = KnowledgeSourceJson & {
37
37
  /**
38
38
  * List of preparation ids that were used to prepare this knowledge source to knowledge pieces
39
39
  */
40
- readonly preparationIds: Array<number_id>;
40
+ readonly preparationIds: ReadonlyArray<number_id>;
41
41
  };
42
42
  /**
43
43
  * TODO: [🍙] Make some standard order of json properties
@@ -38,7 +38,7 @@ export type PersonaPreparedJson = PersonaJson & {
38
38
  /**
39
39
  * List of preparation ids that were used to prepare this persona
40
40
  */
41
- readonly preparationIds: Array<number_id>;
41
+ readonly preparationIds: ReadonlyArray<number_id>;
42
42
  };
43
43
  /**
44
44
  * TODO: [🍙] Make some standard order of json properties
@@ -77,7 +77,7 @@ export type CommonPrompt = {
77
77
  /**
78
78
  * List of postprocessing steps that are executed after the prompt
79
79
  */
80
- readonly postprocessingFunctionNames?: Array<string_postprocessing_function_name>;
80
+ readonly postprocessingFunctionNames?: ReadonlyArray<string_postprocessing_function_name>;
81
81
  /**
82
82
  * Expectations for the answer
83
83
  *
@@ -37,5 +37,5 @@ export type ExecutionReportJson = {
37
37
  /**
38
38
  * Sequence of templates in order which were executed
39
39
  */
40
- readonly promptExecutions: Array<ExecutionPromptReportJson>;
40
+ readonly promptExecutions: ReadonlyArray<ExecutionPromptReportJson>;
41
41
  };
@@ -34,6 +34,6 @@ export declare class $Register<TRegistered extends Registered> {
34
34
  private readonly registerName;
35
35
  private readonly storage;
36
36
  constructor(registerName: string_name);
37
- list(): Array<TRegistered>;
37
+ list(): ReadonlyArray<TRegistered>;
38
38
  register(registered: TRegistered): Registration;
39
39
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Represents items which are compared to each other
3
3
  */
4
- export type FromtoItems = Array<{
4
+ export type FromtoItems = ReadonlyArray<{
5
5
  /**
6
6
  * The title of the item
7
7
  */
@@ -8,4 +8,4 @@ import type { Arrayable } from '../types/Arrayable';
8
8
  *
9
9
  * @private internal utility
10
10
  */
11
- export declare function arrayableToArray<TItem>(input?: Arrayable<TItem>): Array<TItem>;
11
+ export declare function arrayableToArray<TItem>(input?: Arrayable<TItem>): ReadonlyArray<TItem>;
@@ -8,7 +8,7 @@ import type { string_char_emoji } from '../types/typeAliasEmoji';
8
8
  * @private within the repository
9
9
  * @deprecated Use /\p{Extended_Pictographic}/ instead
10
10
  */
11
- export declare const EMOJIS_IN_CATEGORIES: Record<string, Array<string_char_emoji>>;
11
+ export declare const EMOJIS_IN_CATEGORIES: Record<string, ReadonlyArray<string_char_emoji>>;
12
12
  /**
13
13
  *
14
14
  * All possible emoji chars like "🍆", "🍡", "🍤"...
@@ -4,7 +4,7 @@ import type { ExpectationAmount } from '../../types/PipelineJson/Expectations';
4
4
  *
5
5
  * @public exported from `@promptbook/utils`
6
6
  */
7
- export declare function splitIntoSentences(text: string): Array<string>;
7
+ export declare function splitIntoSentences(text: string): ReadonlyArray<string>;
8
8
  /**
9
9
  * Counts number of sentences in the text
10
10
  *
@@ -30,7 +30,7 @@ export type CodeBlock = {
30
30
  * @throws {ParseError} if block is not closed properly
31
31
  * @public exported from `@promptbook/markdown-utils`
32
32
  */
33
- export declare function extractAllBlocksFromMarkdown(markdown: string_markdown): Array<CodeBlock>;
33
+ export declare function extractAllBlocksFromMarkdown(markdown: string_markdown): ReadonlyArray<CodeBlock>;
34
34
  /**
35
35
  * TODO: Maybe name for `blockNotation` instead of '```' and '>'
36
36
  */
@@ -5,7 +5,7 @@ import type { string_markdown_section } from '../../types/typeAliases';
5
5
  *
6
6
  * @public exported from `@promptbook/markdown-utils`
7
7
  */
8
- export declare function splitMarkdownIntoSections(markdown: string_markdown): Array<string_markdown_section>;
8
+ export declare function splitMarkdownIntoSections(markdown: string_markdown): ReadonlyArray<string_markdown_section>;
9
9
  /**
10
10
  * TODO: [🏛] This can be part of markdown builder
11
11
  * Note: [🕞] In past (commit 42086e1603cbed506482997c00a8ee979af0a247) there was much more
@@ -9,4 +9,4 @@ import type { really_any } from './really_any';
9
9
  * @returns void
10
10
  * @private within the repository
11
11
  */
12
- export declare function TODO_USE(...value: Array<really_any>): void;
12
+ export declare function TODO_USE(...value: ReadonlyArray<really_any>): void;
@@ -13,4 +13,4 @@ import type { really_any } from './really_any';
13
13
  * @returns void
14
14
  * @private within the repository
15
15
  */
16
- export declare function keepUnused<TTypeToKeep1 = really_any, TTypeToKeep2 = really_any, TTypeToKeep3 = really_any>(...valuesToKeep: Array<really_any>): void;
16
+ export declare function keepUnused<TTypeToKeep1 = really_any, TTypeToKeep2 = really_any, TTypeToKeep3 = really_any>(...valuesToKeep: ReadonlyArray<really_any>): void;
@@ -3,7 +3,7 @@ import type { number_seed } from '../../types/typeAliases';
3
3
  * Generates random seed
4
4
  *
5
5
  * Note: `$` is used to indicate that this function is not a pure function - it is not deterministic
6
- * Warning: This function is not cryptographically secure (it uses Math.random internally)
6
+ * Warning: This function is NOT cryptographically secure (it uses Math.random internally)
7
7
  * @public exported from `@promptbook/utils`
8
8
  */
9
9
  export declare function $randomSeed(): number_seed;
@@ -4,4 +4,4 @@
4
4
  * @deprecated use new javascript set methods instead @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
5
5
  * @public exported from `@promptbook/utils`
6
6
  */
7
- export declare function intersection<TItem>(...sets: Array<Set<TItem>>): Set<TItem>;
7
+ export declare function intersection<TItem>(...sets: ReadonlyArray<Set<TItem>>): Set<TItem>;