import { AwilixContainer } from 'awilix'; import type { Class } from 'type-fest'; import { DepsType, OnStartHooksResult, ServiceContext } from './interfaces/application.js'; export declare abstract class ApplicationHooks { private syncCommunicationClasses; abstract container?: AwilixContainer>; protected abstract asyncCommunicationClasses: Class[]; protected runOnStartHooks(): Promise; protected runOnStopHooks(): Promise; private isGrpcServiceOnInitHook; private allSettledHookTasks; private getOnInitOrder; private getOnDestroyOrder; }