import * as _$esbuild from "esbuild";
import { BuildOptions } from "esbuild";

//#region src/loadExternalFile/bundleJSFile.d.ts
declare const bundleJSFile: (buildOptions: BuildOptions) => Promise<_$esbuild.BuildResult<{
  bundle: boolean;
  splitting?: boolean;
  preserveSymlinks?: boolean;
  outfile?: string;
  metafile?: boolean;
  outdir?: string;
  outbase?: string;
  external?: string[];
  packages: "bundle" | "external";
  alias?: Record<string, string>;
  loader: {
    readonly '.js': "js";
    readonly '.jsx': "jsx";
    readonly '.mjs': "js";
    readonly '.ts': "ts";
    readonly '.tsx': "tsx";
    readonly '.cjs': "js";
    readonly '.json': "json";
    readonly '.md': "text";
    readonly '.mdx': "text";
  } | {
    [ext: string]: _$esbuild.Loader;
  };
  resolveExtensions?: string[];
  mainFields?: string[];
  conditions?: string[];
  write: boolean;
  allowOverwrite?: boolean;
  tsconfig?: string;
  outExtension?: {
    [ext: string]: string;
  };
  publicPath?: string;
  entryNames?: string;
  chunkNames?: string;
  assetNames?: string;
  inject?: string[];
  banner?: {
    [type: string]: string;
  };
  footer?: {
    [type: string]: string;
  };
  entryPoints?: (string | {
    in: string;
    out: string;
  })[] | Record<string, string>;
  stdin?: _$esbuild.StdinOptions;
  plugins?: _$esbuild.Plugin[];
  absWorkingDir?: string;
  nodePaths?: string[];
  sourcemap: boolean | "linked" | "inline" | "external" | "both";
  legalComments?: "none" | "inline" | "eof" | "linked" | "external";
  sourceRoot?: string;
  sourcesContent?: boolean;
  format: _$esbuild.Format;
  globalName?: string;
  target: string | string[];
  supported?: Record<string, boolean>;
  platform: _$esbuild.Platform;
  mangleProps?: RegExp;
  reserveProps?: RegExp;
  mangleQuoted?: boolean;
  mangleCache?: Record<string, string | false>;
  drop?: _$esbuild.Drop[];
  dropLabels?: string[];
  minify?: boolean;
  minifyWhitespace?: boolean;
  minifyIdentifiers?: boolean;
  minifySyntax?: boolean;
  lineLimit?: number;
  charset?: _$esbuild.Charset;
  treeShaking?: boolean;
  ignoreAnnotations?: boolean;
  jsx?: "transform" | "preserve" | "automatic";
  jsxFactory?: string;
  jsxFragment?: string;
  jsxImportSource?: string;
  jsxDev?: boolean;
  jsxSideEffects?: boolean;
  define?: {
    [key: string]: string;
  };
  pure?: string[];
  keepNames?: boolean;
  absPaths?: _$esbuild.AbsPaths[];
  color?: boolean;
  logLevel: _$esbuild.LogLevel;
  logLimit?: number;
  logOverride?: Record<string, _$esbuild.LogLevel>;
  tsconfigRaw?: string | _$esbuild.TsconfigRaw;
}>>;
//#endregion
export { bundleJSFile };
//# sourceMappingURL=bundleJSFile.d.ts.map