export declare enum ResultsLevel { Trace = 0, Successful = 1, Failed = 2 } export declare const mergeConfig: (defaultConfig: Config, loadedConfig?: Config) => Config; export declare function parseConfigFile(configPath: string): Promise; export interface Config { /** * Identifies the job that will run when executed. */ job: string | JobConfig; /** * The config that defines how the job will be executed. * * @additionalProperties false */ execution?: { /** * The number of tasks or threads created to process each item in the job. * * @TJS-type integer * @minimum 1 */ parallelTaskCount?: number; /** * The number of times, after the first attempt, to reprocess an item when an error occurs or a failed result is returned. * * @TJS-type integer * @minimum 1 */ itemFailureRetryCount?: number; /** * The number of items which must fail before the job is stopped, ending in a failure state. * * @TJS-type integer * @minimum 1 */ itemFailureCountToStopJob?: number; /** * Whether or not to handle exceptions. */ handleExceptions?: boolean; }; results?: { /** * The file path to write the results to. */ filePath?: string; /** * Include the config in the results when results are saved to a file. */ includeConfigInFile?: boolean; /** * When true, writes the results to the console when the job is complete. */ toConsole?: boolean; /** * The severity level of results to write to the file, console, or API. */ level: ResultsLevel; }; runlyApi?: { /** * The URI of the Runly API, https://api.runly.io/ by default. */ uri?: string; /** * The auth token used to grant the job access to the API. */ token?: string; /** * The org that the run is queued or executing in. */ organizationId?: string; /** * The environment that the run is queued or executing in. */ environmentId?: string; /** * The ID of the instance assigned by the API. */ instanceId?: string; /** * The name of the cluster that the run is assigned to. */ cluster?: string; /** * The name of the cluster that the run is assigned to. */ node?: string; }; } /** * The configuration used to find and load the job. * * @additionalProperties false */ export interface JobConfig { /** * The short or full name of the type of job. */ type: string; /** * The ID of the package that contains the job. */ package?: string; /** * The version of the package that contains the job. */ version?: string; } export declare function getJobConfig(config: Config): JobConfig;