interface EsbuildPlugin {
    name: string;
    setup: (build: EsbuildPluginBuild) => void;
}
interface EsbuildPluginBuild {
    onLoad: (options: {
        filter: RegExp;
        namespace?: string;
    }, callback: (args: {
        path: string;
    }) => Promise<{
        contents: string;
        loader: string;
    } | null | undefined> | {
        contents: string;
        loader: string;
    } | null | undefined) => void;
}
export interface SimpleStepsEsbuildPluginOptions {
    /** tsconfig.json path. Defaults to `./tsconfig.json`. */
    tsconfig?: string;
}
/**
 * esbuild plugin that applies the SimpleSteps TypeScript transformer.
 *
 * @example
 * ```ts
 * import { simpleStepsEsbuildPlugin } from '@simplesteps/core/transformer/plugins/esbuild';
 *
 * await esbuild.build({
 *   entryPoints: ['src/index.ts'],
 *   plugins: [simpleStepsEsbuildPlugin()],
 * });
 * ```
 */
export declare function simpleStepsEsbuildPlugin(options?: SimpleStepsEsbuildPluginOptions): EsbuildPlugin;
export default simpleStepsEsbuildPlugin;
//# sourceMappingURL=esbuild.d.ts.map