import createDebugger from 'debug';
export { default as serialize } from '@nuxt/devalue';

declare const debug: {
    config: createDebugger.Debugger;
    documents: createDebugger.Debugger;
    mdx: createDebugger.Debugger;
    layout: createDebugger.Debugger;
    detect: createDebugger.Debugger;
    resolve: createDebugger.Debugger;
    build: createDebugger.Debugger;
};
declare function sleep(ms: number): Promise<void>;
interface InstallPackageOptions {
    cwd?: string;
    dev?: boolean;
    silent?: boolean;
    packageManager?: string;
    packageManagerVersion?: string;
    preferOffline?: boolean;
    additionalArgs?: string[];
}
declare function installPackage(names: string | string[], options?: InstallPackageOptions): Promise<void>;
declare function tryImportOrInstallModule(name: string): Promise<any>;
declare function importLibrary<T>(pkgName: string): Promise<any>;
declare function isString(val: any): val is string;
declare function isStringPlugin(val: any): val is [string, any];
declare function uniq<T>(arr: Array<T>): T[];
declare function escapeRegex(str: string): string;
declare function pascalCase(str: string): string;
declare function camelCase(str: string): string;
declare function uncapitalize(str: string): string;
declare function capitalize(str: string): string;
declare function replaceAsync(str: string, regex: RegExp, asyncFn: (...groups: string[]) => Promise<string>): Promise<string>;
declare function exists(filePath: string): Promise<boolean>;
declare function compact<T>(val: (false | undefined | null | T)[]): T[];

export { type InstallPackageOptions, camelCase, capitalize, compact, debug, escapeRegex, exists, importLibrary, installPackage, isString, isStringPlugin, pascalCase, replaceAsync, sleep, tryImportOrInstallModule, uncapitalize, uniq };
