import type { ReadonlyDeep } from 'type-fest';
import type { TaskJson } from '../../pipeline/PipelineJson/TaskJson';
import type { string_parameter_name } from '../../types/string_name';
/**
 * Parses the task and returns the set of all used parameters
 *
 * @param task the task with used parameters
 * @returns the set of parameter names
 * @throws {ParseError} if the script is invalid
 *
 * @public exported from `@promptbook/core` <- Note: [👖] This utility is so tightly interconnected with the Promptbook that it is not exported as util but in core
 */
export declare function extractParameterNamesFromTask(task: ReadonlyDeep<Pick<TaskJson, 'title' | 'description' | 'taskType' | 'content' | 'preparedContent' | 'jokerParameterNames' | 'foreach'>>): Set<string_parameter_name>;
