import * as esbuild from 'esbuild';
export declare function watch(opt: esbuild.BuildOptions): Promise<any>;
export declare function build(opt: esbuild.BuildOptions): Promise<esbuild.BuildResult<{
    bundle?: boolean;
    splitting?: boolean;
    preserveSymlinks?: boolean;
    outfile?: string;
    metafile?: boolean;
    outdir?: string;
    outbase?: string;
    external?: string[];
    packages?: "external";
    alias?: Record<string, string>;
    loader?: {
        [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[] | Record<string, string> | {
        in: string;
        out: string;
    }[];
    stdin?: esbuild.StdinOptions;
    plugins?: esbuild.Plugin[];
    absWorkingDir?: string;
    nodePaths?: string[];
    sourcemap?: boolean | "both" | "linked" | "inline" | "external";
    legalComments?: "none" | "linked" | "inline" | "external" | "eof";
    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[];
    minify?: boolean;
    minifyWhitespace?: boolean;
    minifyIdentifiers?: boolean;
    minifySyntax?: boolean;
    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;
    color?: boolean;
    logLevel?: esbuild.LogLevel;
    logLimit?: number;
    logOverride?: Record<string, esbuild.LogLevel>;
}>>;
export declare function buildSync(opt: esbuild.BuildOptions): esbuild.BuildResult<{
    bundle?: boolean;
    splitting?: boolean;
    preserveSymlinks?: boolean;
    outfile?: string;
    metafile?: boolean;
    outdir?: string;
    outbase?: string;
    external?: string[];
    packages?: "external";
    alias?: Record<string, string>;
    loader?: {
        [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[] | Record<string, string> | {
        in: string;
        out: string;
    }[];
    stdin?: esbuild.StdinOptions;
    plugins?: esbuild.Plugin[];
    absWorkingDir?: string;
    nodePaths?: string[];
    sourcemap?: boolean | "both" | "linked" | "inline" | "external";
    legalComments?: "none" | "linked" | "inline" | "external" | "eof";
    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[];
    minify?: boolean;
    minifyWhitespace?: boolean;
    minifyIdentifiers?: boolean;
    minifySyntax?: boolean;
    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;
    color?: boolean;
    logLevel?: esbuild.LogLevel;
    logLimit?: number;
    logOverride?: Record<string, esbuild.LogLevel>;
}>;
