import { Constructor } from '@nu-art/ts-common';
import { BaseCommando } from '../core/BaseCommando';
export declare class Commando extends BaseCommando {
    private uid?;
    static create<T extends Constructor<any>[]>(...plugins: T): (import("../core/class-merger").MergeTypes<[typeof BaseCommando, typeof Commando, ...T]> & BaseCommando) & Commando;
    constructor();
    setUID(uid: string): this;
    executeFile(filePath: string, interpreter?: string): Promise<{
        stdout: string;
        stderr: string;
    }>;
    executeRemoteFile(pathToFile: string, interpreter: string): Promise<{
        stdout: string;
        stderr: string;
    }>;
    execute<T>(callback?: (stdout: string, stderr: string, exitCode: number) => T): Promise<T | void>;
}
