@manuth/generator-wsc-package
Version:
A Generator for WoltLab Suite Core Packages.
76 lines (75 loc) • 2.72 kB
TypeScript
/// <reference types="yeoman-generator" />
import { ComponentCollection, FileMappingCollectionEditor, GeneratorOptions, IComponentCollection, IFileMapping, ObjectCollectionEditor } from "@manuth/extended-yo-generator";
import { ITSProjectSettings } from "@manuth/generator-ts-project";
import { InstructionComponent } from "../../Components/InstructionComponent.js";
import { IWoltLabSettings } from "../../Settings/IWoltLabSettings.js";
import { WoltLabGenerator } from "../../WoltLabGenerator.js";
import { EntryPointFileMapping } from "./FileMappings/EntryPointFileMapping.js";
import { WoltLabPackageFileMapping } from "./FileMappings/WoltLabPackageFileMapping.js";
/**
* Provides the functionality to generate WoltLab-packages.
*
* @template TSettings
* The type of the generator-settings.
*
* @template TOptions
* The type of the generator-options.
*/
export declare class WoltLabPackageGenerator<TSettings extends IWoltLabSettings = IWoltLabSettings, TOptions extends GeneratorOptions = GeneratorOptions> extends WoltLabGenerator<TSettings, TOptions> {
/**
* @inheritdoc
*/
get TemplateRoot(): string;
/**
* Gets all {@see InstructionComponent `InstructionComponent<TSettings, TOptions, TComponentOptions>`} provided by this generator.
*/
get InstructionComponents(): Array<InstructionComponent<TSettings, TOptions, any>>;
/**
* Gets a collection containing all {@see InstructionComponent `InstructionComponent<TSettings, TOptions, TComponentOptions>`} provided by this generator.
*/
get InstructionComponentCollection(): ObjectCollectionEditor<InstructionComponent<TSettings, TOptions, any>>;
/**
* @inheritdoc
*/
get Components(): IComponentCollection<TSettings, TOptions>;
/**
* @inheritdoc
*/
protected get BaseComponents(): ComponentCollection<ITSProjectSettings, GeneratorOptions>;
/**
* @inheritdoc
*/
protected get BaseFileMappings(): FileMappingCollectionEditor;
/**
* Gets the file-mapping for the woltlab-package.
*/
get WoltLabPackageFileMapping(): WoltLabPackageFileMapping<TSettings, TOptions>;
/**
* Gets the file-mapping for the entry-point file.
*/
get EntryPointFileMapping(): EntryPointFileMapping<TSettings, TOptions>;
/**
* @inheritdoc
*/
get FileMappings(): Array<IFileMapping<TSettings, TOptions>>;
/**
* @inheritdoc
*/
prompting(): Promise<void>;
/**
* @inheritdoc
*/
writing(): Promise<void>;
/**
* @inheritdoc
*/
install(): Promise<void>;
/**
* @inheritdoc
*/
cleanup(): Promise<void>;
/**
* @inheritdoc
*/
end(): Promise<void>;
}