import { CommandExample } from './commandExample';
import { ReturnCode } from './returnCode';
interface Command {
    name: string;
    subCommand: string;
    value: string;
    execute: (...parameters: any) => Promise<ReturnCode>;
}
export interface CommandOptions {
    parseOptions?: {
        [key: string]: Object;
    };
    syntax?: string;
    aliases?: string[];
    usage?: string;
    description?: string;
    examples?: CommandExample[];
    strict?: boolean;
}
export declare const defaultCommandOptions: CommandOptions;
export declare class CommandBase implements Command {
    protected parsed: {
        [x: string]: unknown;
        _: (string | number)[];
        $0: string;
    };
    constructor(args: string[], options?: CommandOptions);
    get name(): string;
    get subCommand(): string;
    get value(): string;
    execute(): Promise<ReturnCode>;
}
export {};
