UNPKG

@manuth/generator-wsc-package

Version:

A Generator for WoltLab Suite Core Packages.

50 lines (49 loc) 1.98 kB
/// <reference types="yeoman-generator" /> import { GeneratorOptions } from "@manuth/extended-yo-generator"; import { ObjectLiteralExpression, SourceFile } from "ts-morph"; import { InstructionComponent } from "../../../Components/InstructionComponent.js"; import { InstructionFileMapping } from "../../../FileMappings/InstructionFileMapping.js"; import { IWoltLabSettings } from "../../../Settings/IWoltLabSettings.js"; import { IThemeComponentOptions } from "../Settings/IThemeComponentOptions.js"; /** * Provides the functionality to generate theme-instructions. * * @template TSettings * The type of the settings of the generator. * * @template TOptions * The type of the options of the generator. * * @template TComponentOptions * The type of the options of the component. */ export declare class ThemeInstructionFileMapping<TSettings extends IWoltLabSettings, TOptions extends GeneratorOptions, TComponentOptions extends IThemeComponentOptions> extends InstructionFileMapping<TSettings, TOptions, TComponentOptions> { /** * Initializes a new instance of the {@link ThemeInstructionFileMapping `ThemeInstructionFileMapping<TSettings, TOptions, TComponentOptions>`} class. * * @param component * The component to create an instruction-file for. */ constructor(component: InstructionComponent<TSettings, TOptions, TComponentOptions>); /** * @inheritdoc */ protected get InstructionOptions(): ObjectLiteralExpression; /** * @inheritdoc * * @param file * The {@link SourceFile `SourceFile`} to transform. * * @returns * The transformed file. */ protected Transform(file: SourceFile): Promise<SourceFile>; /** * Gets an {@link ObjectLiteralExpression `ObjectLiteralExpression`}-node. * * @returns * The newly created {@link ObjectLiteralExpression `ObjectLiteralExpression`}. */ protected GetObjectLiteral(): ObjectLiteralExpression; }