/** * esbuild plugin for TabScript files. * * @module esbuild-plugin */ import { type Options } from './tabscript.js'; export interface EsbuildPluginOptions extends Omit { /** Output mode: 'ts' (default, preserves types) or 'js'. esbuild handles TypeScript natively. */ outputMode?: 'js' | 'ts'; } /** * esbuild plugin that transforms .tab files to JavaScript. * * @example * ```js * // build.js * import { tabscriptPlugin } from 'tabscript/esbuild'; * import * as esbuild from 'esbuild'; * * await esbuild.build({ * entryPoints: ['src/index.tab'], * bundle: true, * plugins: [tabscriptPlugin()] * }); * ``` * * @param options Configuration options for the TabScript transpiler * @returns esbuild plugin instance */ export declare function tabscriptPlugin(options?: EsbuildPluginOptions): any;