import type { Graph } from '@onerepo/graph'; import { Logger } from '@onerepo/logger'; import type { Argv as Yargv } from 'yargs'; import type { Yargs } from '@onerepo/yargs'; import type { Jiti } from 'jiti'; import type { Config, RootConfig, CorePlugins } from '../types'; export declare const defaultConfig: Required; /** * Command-line application returned from {@link setup | `setup()`}. * * ```js * setup().then(({ run }) => run()); * ``` * @internal */ export type App = { /** * (advanced) Further extend the yargs object before running the command handler. See [Yargs `.command(module)`](http://yargs.js.org/docs/#api-reference-commandmodule) for more information. */ yargs: Yargs; /** * Run the command handler. */ run: () => Promise; }; /** * Set up and run your command-line interface. * * ```js * setup({ * name: 'one', * // ...config * }).then(({ run }) => run()); * ``` * * @internal */ export declare function setup({ graph: inputGraph, require, root, config, yargs: yargsInstance, corePlugins, logger: inputLogger, }: { graph?: Graph; require?: NodeJS.Require | Jiti; root: string; config: Config; yargs: Yargv; corePlugins: CorePlugins; logger?: Logger; }): Promise;