/// import Koa from 'koa'; import { Server } from 'http'; import { IProgram, ILogger, ISettingManager } from '@newbility/core'; export declare class Program implements IProgram { private readonly _app; private readonly _startup; constructor(startup: any); Main(): void; protected Initialize(): Promise; /** * 模块启动前 */ protected PreStartModule(): Promise | void; /** * 启动模块 * @param startup Startup * @returns */ protected StartModule(startup: any): Promise | void; /** * 模块启动后 */ protected PostStartModule(): Promise | void; /** * 服务启动后 */ protected OnServerStarted(): any; protected OnApplicationShutdown(): Promise; protected GetApp(): Koa; /** * 启动服务 */ protected StartServer(): void; protected InitSettingManager(): Promise | void; protected InitLogger(): Promise | void; protected InitSysModule(): Promise; protected GetLogger(): ILogger; protected GetSettingManager(): ISettingManager; protected GetPortSetting(): number; protected RegisterAppIns(): void; protected RegisterProcessEvent(logger?: ILogger): void; protected RegisterCompToHttpServer(httpServer: Server): void; }