import Addon from './addon.js';
import ChainableCommand from './chainable_command.js';
import type { ArgumentOptions, CommandHandler, CommandOptions, OptionOptions } from '../types.js';
declare class ChainableBin extends Addon {
    colors(colors: boolean): this;
    package(name: string, version: string): this;
    autoExit(exiter: boolean): this;
    autoUpdateNotifier(updater: boolean): this;
    usage(usage: string): this;
    option(name: string, description: string, options?: Omit<OptionOptions, 'name' | 'description'>): this;
    argument(name: string, description: string, options?: Omit<ArgumentOptions, 'name' | 'description'>): this;
    action(handler: CommandHandler): this;
    command(name: string, description: string, options?: Omit<CommandOptions, 'name' | 'description'>): ChainableCommand;
    run(argv?: string[]): Promise<void>;
}
export default ChainableBin;
