UNPKG

@enspirit/emb

Version:

A replacement for our Makefile-for-monorepos

25 lines (24 loc) 1.23 kB
import { ResourceInfo } from '../../../index.js'; import { Writable } from 'node:stream'; import { IOperation } from '../../../operations/types.js'; import { ResourceBuildContext } from '../ResourceFactory.js'; import { IResourceBuilder } from '../types.js'; export declare abstract class AbstractResourceBuilder<I, O, R> implements IResourceBuilder<I, O, R> { protected context: ResourceBuildContext<I>; constructor(context: ResourceBuildContext<I>); abstract _build(resource: ResourceInfo<I>, out?: Writable): Promise<{ input: I; operation: IOperation<I, O>; }>; build(resource: ResourceInfo<I>, out?: Writable): Promise<{ input: I; operation: IOperation<I, O>; }>; abstract _mustBuild?(resource: ResourceInfo<I>): Promise<R | undefined> | undefined; mustBuild(resource: ResourceInfo<I>): Promise<R | undefined>; _publish?(resource: ResourceInfo<I>, out?: Writable): Promise<void>; publish?(resource: ResourceInfo<I>, out?: Writable): Promise<void>; abstract _commit(resource: ResourceInfo<I>, output: O, reason: R): Promise<void>; commit(resource: ResourceInfo<I>, output: O, reason: R): Promise<void>; abstract getReference(): Promise<string>; }