import type { ResolvedCliOptions } from '../../utils/config/cli-options';
import type { BuildOptions, Message } from 'esbuild';
import type { Diagnostic } from '../diagnostic';
import { type BuildMode } from '../bundler/definitions';
import { type CustomBuildOptions } from './utils';
import type { File } from '../../create-project/utils/file-map';
import type { CompilationResult } from '../compile';
/** Start esbuild process in different modes */
export declare function buildActions(buildMode: BuildMode, options: CustomBuildOptions): Promise<CompilationResult>;
/** Check if functions already exist with the same action name */
export declare function validateActionNameConflict(actionsFilePaths: string[], options: {
    root: string;
    sourceRoot?: string;
}): Promise<void>;
/** Returns a fileMap item with the filePath of a compiled action as a key and the File as a value */
export declare function createFileMapItem(keyValuePair: [string, File], distDir: string): {
    [x: string]: {
        filename: string;
        isOfType: string;
        content: Buffer;
        mode?: keyof typeof import("../../create-project").FileMode;
        sourceMap?: Buffer;
    };
};
/** Filters out action esbuild diagnostics */
export declare function getDiagnostics(warnings: Message[]): Diagnostic[];
/** Returns esbuild build config for actions */
export declare function defineEsbuildBuildOptions(options: ResolvedCliOptions, actionsFilePaths: string[], relativeTsconfig: string, isDev?: boolean): BuildOptions;
