import { default as default_2 } from 'signale';

/**
 * @function
 * @memberof Utils
 * @description Recursively copies a directory to the target directory, excluding any files or directories
 * that would result in the target directory being copied into itself.
 * subdirectory of the source directory, this function will avoid copying the target directory into
 * itself.
 * @example
 * // Copy a directory to the target directory
 * copyDirectory('path/to/source', 'path/to/target');
 * @example
 * // If the target directory is a subdirectory
 * of the source directory, this function will avoid copying the target directory into itself
 * copyDirectory('path/to/source', 'path/to/source/subdirectory');
 */
export declare function copyDirectory(source: string, target: string, ignoreFiles?: string[]): void;

/**
 * @function
 * @description Execute a command asynchronously and retrieve the standard output and standard error.
 * @example
 * // Basic usage
 * await exec('npm install', { scope: 'Install' });
 *
 * // With verbose output
 * await exec('npm run build', {
 *   scope: 'Build',
 *   verbose: true
 * });
 *
 * // With interactive mode
 * await exec('npx vue create my-project', {
 *   scope: 'Vue',
 *   interactive: true
 * });
 */
export declare function exec(command: string, { scope, verbose, interactive }?: ExecOptions): Promise<ProcessOutput>;

export declare interface ExecOptions {
    verbose?: boolean;
    interactive?: boolean;
}

export declare interface ExecOptions {
    scope?: string;
    verbose?: boolean;
    interactive?: boolean;
}

/**
 * @function
 * @memberof Utils
 * @description Feedback object that facilitates log display.
 * It includes all logging methods provided by 'signale'.
 * If the environment variable CLEAN_OUTPUT_MODE is set to 'true', all log methods use console.log,
 * providing cleaner and unstyled output. This is particularly useful
 * for other clients intending to use Vulcan
 * in the background, where stylized console output may be less desirable.
 * For more information about the Signale logging methods, refer to its documentation (https://github.com/klaussinani/signale).
 */
export declare const feedback: {
    globalScope: (scope?: string) => {
        interactive: {
            config(configObj: default_2.SignaleConfig): default_2.Signale<default_2.DefaultMethods>;
            scope(...name: string[]): default_2.Signale<default_2.DefaultMethods>;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
            breakInteractiveChain: () => void;
        };
        server: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        runtime: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        prebuild: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        build: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        postbuild: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        storage: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        bindings: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        manifest: {
            interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
                breakInteractiveChain: () => void;
            };
            config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
            scope(...name: string[]): default_2.Signale<"deployed" | "option">;
            unscope(): void;
            time(label?: string): string;
            timeEnd(label?: string, span?: number): {
                label: string;
                span?: number | undefined;
            };
            disable(): void;
            enable(): void;
            isEnabled(): boolean;
            addSecrets(secrets: string[] | number[]): void;
            clearSecrets(): void;
            deployed: default_2.LoggerFunc;
            option: default_2.LoggerFunc;
            await: default_2.LoggerFunc;
            complete: default_2.LoggerFunc;
            error: default_2.LoggerFunc;
            debug: default_2.LoggerFunc;
            fatal: default_2.LoggerFunc;
            fav: default_2.LoggerFunc;
            info: default_2.LoggerFunc;
            note: default_2.LoggerFunc;
            pause: default_2.LoggerFunc;
            pending: default_2.LoggerFunc;
            star: default_2.LoggerFunc;
            start: default_2.LoggerFunc;
            success: default_2.LoggerFunc;
            warn: default_2.LoggerFunc;
            watch: default_2.LoggerFunc;
            log: default_2.LoggerFunc;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    interactive: {
        config(configObj: default_2.SignaleConfig): default_2.Signale<default_2.DefaultMethods>;
        scope(...name: string[]): default_2.Signale<default_2.DefaultMethods>;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
        breakInteractiveChain: () => void;
    };
    server: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    runtime: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    prebuild: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    build: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    postbuild: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    storage: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    bindings: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    manifest: {
        interactive: default_2.SignaleBase<default_2.DefaultMethods> & Record<default_2.DefaultMethods, default_2.LoggerFunc> & {
            breakInteractiveChain: () => void;
        };
        config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
        scope(...name: string[]): default_2.Signale<"deployed" | "option">;
        unscope(): void;
        time(label?: string): string;
        timeEnd(label?: string, span?: number): {
            label: string;
            span?: number | undefined;
        };
        disable(): void;
        enable(): void;
        isEnabled(): boolean;
        addSecrets(secrets: string[] | number[]): void;
        clearSecrets(): void;
        deployed: default_2.LoggerFunc;
        option: default_2.LoggerFunc;
        await: default_2.LoggerFunc;
        complete: default_2.LoggerFunc;
        error: default_2.LoggerFunc;
        debug: default_2.LoggerFunc;
        fatal: default_2.LoggerFunc;
        fav: default_2.LoggerFunc;
        info: default_2.LoggerFunc;
        note: default_2.LoggerFunc;
        pause: default_2.LoggerFunc;
        pending: default_2.LoggerFunc;
        star: default_2.LoggerFunc;
        start: default_2.LoggerFunc;
        success: default_2.LoggerFunc;
        warn: default_2.LoggerFunc;
        watch: default_2.LoggerFunc;
        log: default_2.LoggerFunc;
    };
    config(configObj: default_2.SignaleConfig): default_2.Signale<"deployed" | "option">;
    scope(...name: string[]): default_2.Signale<"deployed" | "option">;
    unscope(): void;
    time(label?: string): string;
    timeEnd(label?: string, span?: number): {
        label: string;
        span?: number | undefined;
    };
    disable(): void;
    enable(): void;
    isEnabled(): boolean;
    addSecrets(secrets: string[] | number[]): void;
    clearSecrets(): void;
    deployed: default_2.LoggerFunc;
    option: default_2.LoggerFunc;
    await: default_2.LoggerFunc;
    complete: default_2.LoggerFunc;
    error: default_2.LoggerFunc;
    debug: default_2.LoggerFunc;
    fatal: default_2.LoggerFunc;
    fav: default_2.LoggerFunc;
    info: default_2.LoggerFunc;
    note: default_2.LoggerFunc;
    pause: default_2.LoggerFunc;
    pending: default_2.LoggerFunc;
    star: default_2.LoggerFunc;
    start: default_2.LoggerFunc;
    success: default_2.LoggerFunc;
    warn: default_2.LoggerFunc;
    watch: default_2.LoggerFunc;
    log: default_2.LoggerFunc;
};

export declare function getAbsoluteDirPath(currentModuleFullPath?: string, path?: string): string;

/**
 * @function
 * @memberof Utils
 * @description Detects the package manager being used.
 * @param {object} options - Options for detecting the package manager.
 * @param {string} [options.cwd] - The directory to check.
 * Defaults to the current working directory.
 * @returns {Promise<string>} A Promise that resolves to the detected
 *  package manager (npm, yarn, pnpm).
 * @example
 *
 * // Example usage:
 * getPackageManager({ cwd: './my-project' })
 *   .then(pm => console.log(pm)) // Logs: 'yarn', 'npm', or 'pnpm'
 *   .catch(err => console.error(err));
 */
export declare const getPackageManager: ({ cwd }?: PackageManagerOptions) => Promise<PackageManagerType>;

export declare function getPackageVersion(packageName: string): any;

export declare interface LockFileMap {
    [key: string]: {
        fileName: string;
        pmType: PackageManagerType;
    };
}

export declare interface Logger {
    info(message: string): void;
    error(message: string): void;
    success(message: string): void;
    warn(message: string): void;
    debug(message: string): void;
    pending(message: string): void;
    complete(message: string): void;
    start(message: string): void;
}

export declare interface PackageManagerOptions {
    cwd?: string;
}

export declare type PackageManagerType = 'npm' | 'yarn' | 'pnpm' | 'npx';

export declare interface ProcessOutput {
    stdout: string;
    stderr: string;
}

export { }
