UNPKG

cs-element

Version:

Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support

97 lines 3.51 kB
import { IBlueprintBuilder, IBlueprint, BlueprintType, BlueprintCategory, BlueprintParameter, BlueprintParameterGroup, BlueprintMetadata, BlueprintGenerationContext, BlueprintGenerationResult } from '../types/blueprint-interfaces'; /** * Построитель шаблонов для удобного создания Blueprint */ export declare class BlueprintBuilder implements IBlueprintBuilder { private basicInfo?; private version; private metadata; private parameterGroups; private generator?; /** * Установка базовой информации */ setBasicInfo(info: { id: string; name: string; description: string; type: BlueprintType; category: BlueprintCategory; }): IBlueprintBuilder; /** * Установка версии */ setVersion(version: string): IBlueprintBuilder; /** * Добавление группы параметров */ addParameterGroup(group: BlueprintParameterGroup): IBlueprintBuilder; /** * Добавление параметра */ addParameter(parameter: BlueprintParameter, groupId?: string): IBlueprintBuilder; /** * Добавление нескольких параметров */ addParameters(parameters: BlueprintParameter[], groupId?: string): IBlueprintBuilder; /** * Создание и добавление группы с параметрами */ addGroupWithParameters(groupInfo: Omit<BlueprintParameterGroup, 'parameters'>, parameters: BlueprintParameter[]): IBlueprintBuilder; /** * Установка метаданных */ setMetadata(metadata: BlueprintMetadata): IBlueprintBuilder; /** * Добавление тегов */ addTags(tags: string[]): IBlueprintBuilder; /** * Добавление примера использования */ addExample(example: { name: string; description: string; parameters: Record<string, any>; }): IBlueprintBuilder; /** * Установка автора */ setAuthor(author: string): IBlueprintBuilder; /** * Установка лицензии */ setLicense(license: string): IBlueprintBuilder; /** * Установка документации */ setDocumentation(documentation: string): IBlueprintBuilder; /** * Установка генератора */ setGenerator(generator: (context: BlueprintGenerationContext) => Promise<BlueprintGenerationResult>): IBlueprintBuilder; /** * Построение шаблона */ build(): IBlueprint; /** * Валидация конфигурации */ validate(): { valid: boolean; errors: string[]; }; /** * Сброс построителя */ reset(): IBlueprintBuilder; /** * Клонирование существующего шаблона для модификации */ static fromBlueprint(blueprint: IBlueprint): BlueprintBuilder; /** * Создание быстрого шаблона с минимальными настройками */ static quickBlueprint(id: string, name: string, description: string, type: BlueprintType, category: BlueprintCategory, generator: (context: BlueprintGenerationContext) => Promise<BlueprintGenerationResult>): IBlueprint; } //# sourceMappingURL=BlueprintBuilder.d.ts.map