@enspirit/emb
Version:
A replacement for our Makefile-for-monorepos
13 lines (12 loc) • 658 B
TypeScript
import { Component, IResourceBuilder, Monorepo, ResourceInfo } from '../../index.js';
export type ResourceBuildContext<I> = {
config: ResourceInfo<I>;
component: Component;
monorepo: Monorepo;
};
export type ResourceBuilderConstructor<I, O, R> = new (context: ResourceBuildContext<I>) => IResourceBuilder<I, O, R>;
export declare class ResourceFactory {
protected static types: Record<string, ResourceBuilderConstructor<any, any, any>>;
static register<I, O, R>(type: string, constructor: ResourceBuilderConstructor<I, O, R>): void;
static factor<I, O, R>(type: string, context: ResourceBuildContext<I>): IResourceBuilder<I, O, R>;
}