import { Project, ItemFilter, Tag, ItemType, ModuleData, ProjectData, KeyIn, ProjectFileSystem, Item, ItemDetailInfoOptions } from '@sap/artifact-management-base-types'; import { ProjectInstance } from './ProjectInstance'; import ProjectApi from './ProjectApi'; import ItemWatcher from './ItemWatcher'; import AutoBuilder from './AutoBuilder'; import LocalFileSystemWatchManager from './LocalFileSystemWatchManager'; import { IChildLogger } from '@vscode-logging/types'; import MtaGeneratorSettings from '../mta-generator/MtaGeneratorSettings'; export default class ProjectImpl implements ProjectApi { private path; private cachedProjectInstance?; private watchClients; private watchManager?; private readModuleAsProject; private useHeadlessGenerator; constructor(path: string, readModuleAsProject?: boolean, useHeadlessGenerator?: boolean); autoBuild(logger?: IChildLogger): Promise; projectInstance(): ProjectInstance; /** * Read project, its modules and entities * */ read(logger?: IChildLogger, tag?: KeyIn): Promise; /** * Watch items * */ watchItems(filter?: ItemFilter, pattern?: string[], logger?: IChildLogger): Promise; startWatch(): LocalFileSystemWatchManager | undefined; stopWatch(obj: any): void; addWatchPattern(pattern: string, func: (event: string, file: string) => void): void; /** * Read project, its modules and entities * */ tryRead(): Promise; fs(): ProjectFileSystem; /** * Read entities provided by the project * * @param filter */ readItems(filter?: ItemFilter, logger?: IChildLogger): Promise; /** * Read entities with detail information provided by the project * * @param filter */ readDetailItems(filter?: ItemFilter, logger?: IChildLogger): Promise; /** * Read detail information for the required type and ref provided by the project * * @param type * @param ref */ getDetailInfo(type: KeyIn, ref: string, entityPath?: string, options?: ItemDetailInfoOptions, logger?: IChildLogger): Promise; prepareForRun(options?: string[] | undefined, logger?: IChildLogger): Promise; buildManifest(options?: MtaGeneratorSettings, logger?: IChildLogger): Promise; getManifest(options?: MtaGeneratorSettings, logger?: IChildLogger): Promise; build(options?: MtaGeneratorSettings, logger?: IChildLogger): Promise; getMtaExtension(params: { [key: string]: any; }): Promise; kymaDeploy(kymaNS?: string, tag?: string, dockerNS?: string): Promise; deploy(logger?: IChildLogger): Promise; getProjectInfo(logger?: IChildLogger): Promise; removeManifest(): Promise; enableSaas(): Promise; getModulesInfo(logger?: IChildLogger): Promise; /** * @deprecated Use getApplicationDeploymentSummary() instead */ getProjectOverviewURL(logger?: IChildLogger): Promise; getApplicationDeploymentSummary(logger?: IChildLogger): Promise<{ ProjectOverviewURL?: string; DeployedUTCTime?: string; ApplicationLogURL?: string; } | undefined>; invalidate_cachedLaunchURL(): Promise; getDataInfo(data: any, mainEntityName?: string, logger?: IChildLogger): Promise; updateXsuaaService(): Promise; private modifyCDSProfile; private modifyCDSProductionDB; private modifyRouterRoutes; private modifyLowcodeEventHandler; private modifyPackgeJSON; getServicesInfo(): Promise; getServiceEdmx(path: string, name: string): Promise; }