///
import debug from 'debug';
import type { PlainObject } from './types';
import type { DecodedSourceMap, RawSourceMap } from '@ampproject/remapping/dist/types/types';
import type { FSWatcher } from 'chokidar';
export declare function toArray(any: T | T[]): T[];
export declare function slash(p: string): string;
export declare const externalRE: RegExp;
export declare const isExternalUrl: (url: string) => boolean;
export declare const isWindows: boolean;
export declare function normalizePath(id: string): string;
export declare function ensureWatchedFile(watcher: FSWatcher, file: string | null, root: string): void;
export declare function createDebugger(namespace: string): debug.Debugger['log'];
export declare function numberToPos(source: string, offset: number | {
line: number;
column: number;
}): {
line: number;
column: number;
};
export declare function posToNumber(source: string, pos: number | {
line: number;
column: number;
}): number;
export declare function generateCodeFrame(source: string, start?: number | {
line: number;
column: number;
}, end?: number): string;
export declare function combineSourcemaps(filename: string, sourcemapList: Array): RawSourceMap;
export declare const require: NodeRequire;
export declare const safeRequire: (filePath: string) => any;
/**
* check if path is dir
* @param name
* @returns Promise
*/
export declare const isDirectory: (name: string) => boolean;
export declare const isFile: (name: string) => boolean;
export declare const findDefaultEntryFile: (dirPath: string) => string;
export declare const addSuffixToFile: (file: string) => string;
export declare const isObject: (value: unknown) => value is Record;
export declare const booleanToObject: (value: object | boolean) => object;
export declare function debouncePromise(fn: (...args: T) => Promise, delay: number, onError: (err: unknown) => void): (...args: Parameters) => void;
export declare const timeFrom: (start: number, subtract?: number) => string;
export declare const unique: (arr: T[]) => T[];
export declare const stringifyObject: (obj: PlainObject) => {};
export declare const scriptsFilter: (id: unknown) => boolean;