import type { BunPlugin } from 'bun'; import { readMarkdownFile } from '@stacksjs/stx'; import type { StxOptions } from '@stacksjs/stx'; export type { WatchAndBuildOptions, WatchBuildResult, WatcherInstance, WatchEvent, WatchOptions, } from './watch'; export type { CustomDirective, CustomDirectiveHandler, ServeOptions, ServeResult, StxOptions } from '@stacksjs/stx'; /** * Create a Bun plugin for processing .stx and .md files * * @param userOptions - Optional configuration to override defaults * @returns BunPlugin instance * * @example * ```typescript * // Basic usage * const plugin = stxPlugin() * * // With options * const plugin = stxPlugin({ * debug: true, * cache: true, * cachePath: '.stx/cache' * }) * ``` */ export declare function stxPlugin(userOptions?: StxOptions): BunPlugin; // Export watch functionality export { createWatcher, startWatchMode, watchAndBuild } from './watch'; // Re-export functions and types that consumers might need // Note: serve is exported from ./serve.ts, not here (to avoid duplicate export names when bundled) export { createMiddleware, createRoute, readMarkdownFile } from '@stacksjs/stx'; export default stxPlugin;