import { LifecycleHooks } from '@b64hub/sfpm-core'; import type { LwcTypescriptHooksOptions } from './types.js'; /** * Creates lifecycle hooks for compiling LWC TypeScript to JavaScript. * * Registers a hook on `build:pre` that runs `tsc` inside the `lwc/` * directory of the staged package. This enables authoring LWC controllers * in TypeScript while keeping `.js` files out of version control. * * The compiled `.js` output is written to the staging directory so that * downstream build and deploy steps work transparently. Original `.ts` * source files are removed by default. * * @param options - Hook configuration options * @returns A LifecycleHooks instance to pass to `defineConfig({ hooks: [...] })` * * @example * ```typescript * // sfpm.config.ts * import { defineConfig } from '@b64hub/sfpm-core'; * import { lwcTypescriptHooks } from '@b64hub/sfpm-hooks'; * * export default defineConfig({ * hooks: [ * lwcTypescriptHooks({ removeSourceFiles: true }), * ], * }); * ``` */ export declare function lwcTypescriptHooks(options?: LwcTypescriptHooksOptions): LifecycleHooks;