/** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.dev/license */ import { JsonObject } from '@angular-devkit/core'; import { Collection, CollectionDescription, Engine, EngineHost, RuleFactory, Schematic, SchematicDescription, TypedSchematicContext } from '../src'; export interface FileSystemCollectionDescription { readonly name: string; readonly path: string; readonly version?: string; readonly schematics: { [name: string]: FileSystemSchematicDesc; }; readonly encapsulation?: boolean; } export interface FileSystemSchematicJsonDescription { readonly aliases?: string[]; readonly factory: string; readonly name: string; readonly collection: FileSystemCollectionDescription; readonly description: string; readonly schema?: string; readonly extends?: string; } export interface FileSystemSchematicDescription extends FileSystemSchematicJsonDescription { readonly path: string; readonly schemaJson?: JsonObject; readonly factoryFn: RuleFactory<{}>; } /** * Used to simplify typings. */ export declare type FileSystemEngine = Engine; export declare type FileSystemEngineHost = EngineHost; export declare type FileSystemCollection = Collection; export declare type FileSystemSchematic = Schematic; export declare type FileSystemCollectionDesc = CollectionDescription; export declare type FileSystemSchematicDesc = SchematicDescription; export declare type FileSystemSchematicContext = TypedSchematicContext;