import type { Options } from 'execa'; export interface SingleTask { handler: TaskHandler; name: string; } export interface SequenceTask { context?: Partial; name: string; sequence: TaskSequence; } export interface TaskContextRunResult { code: number; output: string; } export declare type TaskContextConcurrentType = 'pre/script' | 'tasks' | false; export interface TaskContext { concurrent: TaskContextConcurrentType; env?: 'development' | 'production'; flags: TaskFlags; silent: boolean; run: (bin: string, args: string[], options?: CommonOptions) => Promise; } export declare type CommonOptions = Options; export declare type TaskSequenceItem = string | [string, Partial]; export declare type TaskSequenceHook = readonly TaskSequenceItem[] | string; export interface TaskSequenceHooks { post?: TaskSequenceHook; pre?: TaskSequenceHook; script: TaskSequenceHook; } export declare type TaskSequence = TaskSequenceItem[] | TaskSequenceHooks; export declare type TaskHandler = (name: string, context: TaskContext) => Promise; export interface TaskOptions { bail: boolean; skipPostScript: readonly string[]; skipPreScript: readonly string[]; skipScript: readonly string[]; } export declare type TaskFlags = Record>; export interface TaskRunnerFlags extends Record { bail?: boolean; skipPostScript?: boolean; skipPreScript?: boolean; skipScript?: boolean; } export interface RunContext { flags: Record; } //# sourceMappingURL=types.d.ts.map