UNPKG

@omnia/tooling-composers

Version:

Provide tooling to work with manifest things.

35 lines (34 loc) 1.28 kB
import { ServiceOptions } from './models'; import { IWebAppServiceComposer } from './WebAppServiceComposer'; import { IWorkerServiceComposer } from './WorkerServiceComposer'; import { ICustomServiceComposer } from './CustomServiceComposer'; export interface IRegisterService { /** Specify service type for this omnia service project. E.g. A service could be a worker, doing simple async jobs, worker queues etc it can also be a webapp serving UI resources */ registerService: (serviceInfo: ServiceOptions) => IServiceComposer; } export interface IServiceComposer { /** * Register service to be of type web app */ AsWebApp: () => IWebAppServiceComposer; /** * Register service to be of type worker */ AsWorker: () => IWorkerServiceComposer; /** * Register service to be of custom type (to install helm) */ AsCustom: () => ICustomServiceComposer; } export declare class ServiceComposer implements IServiceComposer { private manifestId; private manifestName; private serviceInfo; constructor(manifestId: string, manifestName: string, serviceInfo: ServiceOptions); AsWebApp: () => IWebAppServiceComposer; AsWorker: () => IWorkerServiceComposer; AsCustom: () => ICustomServiceComposer; }