/** * Webpack loader for TabScript files. * * @module webpack-loader */ import { type Options } from './tabscript.js'; export interface WebpackLoaderOptions extends Omit { /** Output mode: 'js' (default) or 'ts'. Use 'ts' to preserve type information for subsequent type checking. */ outputMode?: 'js' | 'ts'; } /** * Webpack loader that transforms .tab files to JavaScript. * * @example * ```js * // webpack.config.js * module.exports = { * module: { * rules: [ * { * test: /\.tab$/, * use: { * loader: 'tabscript/webpack', * options: { * whitespace: 'pretty' * } * } * } * ] * } * }; * ``` * * @param source The TabScript source code * @returns The transpiled JavaScript code */ export default function tabscriptLoader(this: any, source: string): string;