import { DeepPartial, MaybePromise } from "../../utils/types.mts";
import { WaitConfig } from "./wait.mts";
import { FinalUserConfig } from "../../utils/config.mts";
export interface ParallelConfig {
  wait: WaitConfig;
  commands: ParallelCommand[];
  groupName?: string;
  groups: Record<string, ParallelCommand[]>;
}
export declare const ParallelDefaultConfig: ParallelConfig;
export interface ParallelCommand {
  name: string;
  wait?: DeepPartial<WaitConfig> & {
    func: () => MaybePromise<boolean>;
  };
  npmScript: string;
}
export interface Command {
  command: string;
  name: string;
}
export declare const parallel: (config: FinalUserConfig) => Promise<void>;