import type * as Babel from '@babel/core';
import { ExtendedPluginBuilder } from './js-utils.js';
import type { EmberTemplateCompiler } from './ember-template-compiler.js';
import { LegacyModuleName } from './public-types.js';
export * from './public-types.js';
export interface Options {
    compiler?: EmberTemplateCompiler;
    outputModuleOverrides?: Record<string, Record<string, [string, string]>>;
    enableLegacyModules?: LegacyModuleName[];
    targetFormat?: 'wire' | 'hbs';
    transforms?: ExtendedPluginBuilder[];
}
export declare function makePlugin<EnvSpecificOptions>(loadOptions: (opts: EnvSpecificOptions) => Promise<Options>): (babel: typeof Babel) => Promise<Babel.PluginObj<unknown>>;
declare const _default: (babel: typeof Babel) => Promise<Babel.PluginObj<unknown>>;
export default _default;
