import { Environment } from './Environment.js'; import { Startable } from './Startable.js'; import { Stoppable } from './Stoppable.js'; export interface LifeCycle { start(): Promise; stop(timeoutMs?: number): Promise; restart(reason: Error): Promise; isStopped(): boolean; } export declare abstract class LifeCycle implements Startable, Stoppable { private _environment; protected constructor(environment: Environment); environment(): Environment; beforeStart(): void; afterStop(): void; beforeRestart(reason: Error): void; afterRestart(reason: Error): void; beforeResume(reason: Error): void; beforeStop(): void | Promise; private stopWithTimeout; private id; } //# sourceMappingURL=LifeCycle.d.ts.map