import type { OutputStrategy, StylesheetLink } from '@js-template-engine/types'; import { type FrameworkName, type StylingName } from '../extensions'; /** The `render` command's parsed options. */ export interface RenderCommandOptions { framework?: FrameworkName; styling: StylingName[]; outputDirectory: string; componentName?: string; stylingStrategy: OutputStrategy; stylingLanguage: 'css' | 'scss'; stylesheetLink: StylesheetLink; stylingLayer?: string; stylingLayerOrder: string[]; loadPath: string[]; scriptingStrategy: OutputStrategy; scriptingLanguage: 'javascript' | 'typescript'; bemElementSeparator?: string; bemModifierSeparator?: string; bemMode?: 'literal' | 'runtime'; bemImportSource?: string; tailwindOutput?: 'classes' | 'styles'; tailwindConvertStyles?: boolean; svelteMode?: 'legacy' | 'runes'; } /** * Renders one template file, or every template in a directory, and writes * the generated files under the output directory. * * Warnings go to stderr; written files are listed on stdout. A template * that fails to load or process is reported and does not stop the * remaining templates; any failure makes the command exit non-zero. * * @param source - A template file or a directory of template files. * @param options - The parsed command-line options. */ export declare function renderCommand(source: string, options: RenderCommandOptions): Promise;