import type { Mode } from 'node:fs';
import { setTimeout } from 'node:timers/promises';
export * from '@mojojs/util';
interface FixOptions {
    author?: string;
    dependencies?: Record<string, string>;
    description?: string;
    devDependencies?: Record<string, string>;
    exports?: string;
    files?: string[];
    license?: string;
    name?: string;
    scripts?: Record<string, string>;
    version?: string;
}
export declare const httpStatusMessages: Record<number, string>;
/**
 * Create directory for generator commands.
 */
export declare function cliCreateDir(path: string): Promise<void>;
/**
 * Create file for generator commands.
 */
export declare function cliCreateFile(path: string, template: string, values?: Record<string, any>, options?: {
    chmod?: Mode;
}): Promise<void>;
/**
 * Fix package.json file for generator commands.
 */
export declare function cliFixPackage(options?: FixOptions): Promise<void>;
/**
 * Get mojo.js devDependencies.
 */
export declare function devDependencies(regex: RegExp): Promise<Record<string, string>>;
/**
 * Generate exception context.
 */
export declare function exceptionContext(error: Error, options?: {
    lines?: number;
}): Promise<{
    file: string;
    line: number;
    column: number;
    source: {
        num: number;
        code: string;
    }[];
} | null>;
/**
 * Load modules.
 */
export declare function loadModules(dirs: string[]): Promise<Record<string, any>>;
/**
 * Sleep asynchronously.
 */
export declare const sleep: typeof setTimeout;
