import type { ParseResult } from '@babel/parser';
import type { File } from '@babel/types';
import type { IJsHandlerOptions, JsHandlerResult } from '../types/index.js';
import type { EvalHandler } from './evalTransforms.js';
import type { SourceAnalysis } from './sourceAnalysis.js';
import { babelParse } from './babel/parse.js';
import { processUpdatedSource } from './babel/process.js';
export declare function analyzeSource(ast: ParseResult<File>, options: IJsHandlerOptions, handler?: EvalHandler, collectModuleMetadata?: boolean): SourceAnalysis;
export declare function jsHandler(rawSource: string, options: IJsHandlerOptions): JsHandlerResult;
export { babelParse, processUpdatedSource };
export { genCacheKey, parseCache } from './babel/parse.js';
export { isEvalPath } from './evalTransforms.js';
export type { SourceAnalysis } from './sourceAnalysis.js';
