import type { Command } from 'commander'; import type { PresetKey } from './presets/presets'; export interface CLIOptions { type?: 'module' | 'system'; preset?: PresetKey; default: boolean; config: boolean; force: boolean; deps: boolean; git: boolean; packageManager: typeof packageManagers[number]; } export declare const packageManagers: readonly ["npm", "yarn", "yarn2"]; interface PresetOptions extends CLIOptions { preset: PresetKey; default: false; } interface DefaultOptions extends CLIOptions { preset?: undefined; default: true; } interface RegularOptions extends CLIOptions { preset?: undefined; default: boolean; } export declare type ValidatedCLIOptions = PresetOptions | DefaultOptions | RegularOptions; export declare type Options = ValidatedCLIOptions & { type: 'module' | 'system'; }; export declare function validateOptions(options: CLIOptions, program: Command): options is ValidatedCLIOptions; export {};