import { type Service } from 'knifecycle';
import { type ImporterService, type LogService } from 'common-services';
import { type AppEnvVars } from 'application-services';
export declare const DEFAULT_COMPILER_OPTIONS: FullWhookCompilerOptions;
declare const _default: import("knifecycle").ServiceInitializer<WhookCompilerDependencies, WhookCompilerService>;
export default _default;
export type FullWhookCompilerOptions = {
    externalModules: string[];
    ignoredModules: string[];
    mainFields?: string[];
    target: string;
    format: 'esm' | 'cjs';
    excludeNodeModules?: boolean;
};
export type WhookCompilerOptions = Partial<FullWhookCompilerOptions>;
export type WhookCompilerConfig = {
    DEBUG_NODE_ENVS: string[];
    COMPILER_OPTIONS?: WhookCompilerOptions;
};
export type WhookCompilerDependencies = WhookCompilerConfig & {
    PROJECT_DIR: string;
    ENV: AppEnvVars;
    importer: ImporterService<Service>;
    log?: LogService;
};
export type WhookCompilationResult = {
    contents: string;
    mappings: string;
    extension: string;
};
export type WhookCompilerService = (entryPoint: string, options?: WhookCompilerOptions) => Promise<WhookCompilationResult>;
