import type { Message } from 'esbuild';
import type { Diagnostic } from '../diagnostic';
import { type CustomBuildOptions } from './utils';
import type { File } from '../../create-project/utils/file-map';
import type { CompilationResult } from '../compile';
export declare enum BuildMode {
    'WATCH' = "watch",
    'BUILD' = "build",
    'RESET' = "reset"
}
/** 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: {
    functionsInput: string;
    functionsGlob: string;
    root: 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/utils/file-map").FileMode;
        sourceMap?: Buffer;
    };
};
/** Filters out action esbuild diagnostics */
export declare function getDiagnostics(warnings: Message[]): Diagnostic[];
