import { Request } from 'express'; import { ApplicationInstall, IApplicationSettings } from '../Database/ApplicationInstall'; import { IApplication } from '../Base/IApplication'; import ApplicationInstallRepository from '../Database/ApplicationInstallRepository'; import ApplicationLoader from '../ApplicationLoader'; import { IApplicationArray } from '../Base/AApplication'; import { IFieldArray } from '../Model/Form/Field'; import WebhookManager from './WebhookManager'; export default class ApplicationManager { private _repository; private _loader; private _webhookManager; constructor(_repository: ApplicationInstallRepository, _loader: ApplicationLoader, _webhookManager: WebhookManager); getApplications(): IApplicationArray[]; getApplication(key: string): IApplication; getSynchronousActions(key: string): string[]; runSynchronousAction(key: string, method: string, request: Request): Promise; saveApplicationSettings(name: string, user: string, data: IApplicationSettings): Promise<{ [key: string]: unknown | IFieldArray[]; }>; saveApplicationPassword(name: string, user: string, password: string): Promise<{ [key: string]: unknown; }>; authorizationApplication(name: string, user: string, redirectUrl: string): Promise; saveAuthorizationToken(name: string, user: string, requestParams: { [key: string]: string; }): Promise; installApplication(name: string, user: string): Promise<{ [key: string]: unknown | boolean | IFieldArray[]; }>; uninstallApplication(name: string, user: string): Promise; detailApplication(name: string, user: string): Promise<{ [key: string]: unknown; }>; userApplications(user: string): Promise<{ [key: string]: unknown; }>; private _loadApplicationInstall; }