// @ts-nocheck import { Models } from './models'; import type { Application } from 'express'; import type { NgZone } from '@angular/core'; import { DataSource } from 'firedev-typeorm/websql'; import type { Server } from 'http'; import type { BaseClass } from './base-classes/base-class'; export declare class EndpointContext { private originalConfig; private configFn; private static ngZone; static initNgZone(ngZone: NgZone): void; static findForTraget(classFnOrObject: any): EndpointContext; disabledRealtime: boolean; /** * check whether context is inited * (with init() function ) */ inited: boolean; private readonly localInstaceObjSymbol; /** * all instances of classes from context * key is class name */ readonly allClassesInstances: {}; private readonly classInstancesByNameObj; private readonly objWithClassesInstancesArr; readonly activeRoutes: { routePath: string; method: Models.Http.Rest.HttpMethod; }[]; private injectableTypesfromContexts; private allTypesfromContexts; expressApp: Application; serverTcpUdp: Server; databaseConfig?: Models.DatabaseConfig; private autoGeneratedConfig?; mode: Models.FrameworkMode; session?: Models.ISession; connection: DataSource; private entitiesTriggers; private realtime; get realtimeClient(): import("./realtime/realtime-client").RealtimeClient; get realtimeServer(): import("./realtime/realtime-server").RealtimeServer; /** * available after init() */ config: Models.ContextOptions; get logHttp(): boolean; get logRealtime(): boolean; get logFramework(): boolean; get logDb(): boolean; constructor(originalConfig: Models.ContextOptions, configFn: (env: any) => Models.ContextOptions); init(options?: { initFromRecrusiveContextResovle?: boolean; }): Promise; private getAutoGeneratedConfig; get ngZone(): any; startServer(): any; displayRoutes(app: any): void; get modeAllowsDatabaseCreation(): boolean; private cloneClassWithNewMetadata; private cloneClassesObjWithNewMetadata; private getRecrusiveClassesfromContextsObj; private getRecrusiveClassesfromContexts; getClassInstanceObjBy(classType: Models.ClassType): any; private getClassesInstancesArrBy; inject(ctor: new (...args: any[]) => T, options?: { localInstance?: boolean; contextClassInstance?: BaseClass; locaInstanceConstructorArgs?: ConstructorParameters; }): T; /** * alias for inject */ getInstanceBy(ctor: new (...args: any[]) => T): T; checkIfContextInitialized(): void; getClassFunBy(classType: Models.ClassType): any; isCLassType(classType: Models.ClassType, classFn: Function): boolean; /** * Only for injectable types * Only for classType: CONTROLLER, REPOSITORY, PROVIDER */ getClassFunByClassName(className: string): Function; getClassFunByClass(classFunction: Function): Function; getClassFunByArr(classType: Models.ClassType): Function[]; private createInstances; reinitControllers(): Promise; initClasses(): Promise; isActiveOn(classInstance: object): boolean; get uri(): URL; get isHttpServer(): boolean; /** * ipc/udp needs this */ get contextName(): string; get publicAssets(): { serverPath: string; locationOnDisk: string; }[]; get isProductionMode(): boolean; get remoteHost(): string; get host(): string; get orgin(): string; initSubscribers(): Promise; initEntities(): Promise; initDatabaseConnection(): Promise; initMetadata(): void; writeActiveRoutes(): void; get middlewares(): Models.MiddlewareType[]; private initMidleware; private initServer; /** * client can be browser or nodejs (when remote host) */ private initClient; }