import { n as __name } from "./chunk-O_arW02_.js"; import { D as Extname, a as FabricElement, l as Plugin, u as UserPlugin } from "./Fabric-DcPYjTt7.js"; import { r as TreeNode, t as ComponentNode } from "./useNodeTree-c9qOt3mv.js"; //#region src/plugins/barrelPlugin.d.ts type Mode = 'all' | 'named' | 'propagate' | false; type Options$3 = { root: string; mode: Mode; dryRun?: boolean; }; type WriteEntryOptions = { root: string; mode: Mode; }; type ExtendOptions$2 = { /** * `fabric.writeEntry` should be called before `fabric.write` */ writeEntry(options: WriteEntryOptions): Promise; }; declare global { namespace Kubb { interface Fabric { /** * `fabric.writeEntry` should be called before `fabric.write` */ writeEntry(options: WriteEntryOptions): Promise; } } } declare const barrelPlugin: Plugin; //#endregion //#region src/plugins/definePlugin.d.ts /** * Defines a Fabric plugin with type safety. * * Use this function to create plugins that hook into Fabric's lifecycle * events and extend its functionality. * * @param plugin - The plugin configuration object * @returns A typed plugin ready to use with Fabric * * @example * ```ts * import { definePlugin } from '@kubb/fabric-core' * * export const myPlugin = definePlugin({ * name: 'my-plugin', * async setup(fabric) { * fabric.context.on('write:start', (files) => { * console.log(`Writing ${files.length} files`) * }) * } * }) * ``` */ declare function definePlugin = {}>(plugin: UserPlugin): Plugin; //#endregion //#region src/plugins/fsPlugin.d.ts type WriteOptions = { extension?: Record; }; type Options$2 = { dryRun?: boolean; /** * Optional callback that is invoked whenever a file is written by the plugin. * Useful for tests to observe write operations without spying on internal functions. */ onBeforeWrite?: (path: string, data: string | undefined) => void | Promise; clean?: { path: string; }; }; type ExtendOptions$1 = { write(options?: WriteOptions): Promise; }; declare global { namespace Kubb { interface Fabric { write(options?: WriteOptions): Promise; } } } declare const fsPlugin: Plugin; //#endregion //#region src/plugins/fsxPlugin/fsxPlugin.d.ts type Options$1 = { treeNode?: TreeNode; /** * Set this to true to always see the result of the render in the console(line per render) */ debug?: boolean; }; type ExtendOptions = { render(Fabric: FabricElement): Promise; waitUntilExit(): Promise; }; declare global { namespace Kubb { interface Fabric { render(Fabric: FabricElement): Promise; waitUntilExit(): Promise; } } } declare const fsxPlugin: Plugin; //#endregion //#region src/plugins/loggerPlugin.d.ts type Options = { /** * Toggle progress bar output. * @default true */ progress?: boolean; }; declare const loggerPlugin: Plugin; //#endregion export { type Plugin, barrelPlugin, definePlugin, fsPlugin, fsxPlugin, loggerPlugin }; //# sourceMappingURL=plugins.d.ts.map