@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
60 lines (59 loc) • 3.97 kB
TypeScript
import { AppDefinition, AppInstance, AppInstanceActionProgressResult, AppInstanceContext, AppInstanceInputInfo, AppInstanceOutputInfo, AppInstanceQuery, AppInstanceRejectInfo, AppInstanceScopedQuery, AppInstancesResult, AppInstancesScopedQueryResult, AppTemplate, GuidValue, ApiResponse } from "../models";
interface RouteTable {
[pathOrAppInstanceId: string]: AppInstanceContext;
}
export declare class AppService {
private httpClient;
private omniaContext;
static routes: RouteTable;
getAppDefinitions: () => Promise<Array<AppDefinition>>;
getTenantAppTemplates: () => Promise<Array<AppTemplate>>;
getAppTemplates: (businessProfileId?: GuidValue) => Promise<Array<AppTemplate>>;
getAppTemplate: (appTemplateId: GuidValue) => Promise<AppTemplate>;
addOrUpdateAppTemplate: (appTemplate: AppTemplate) => Promise<AppTemplate>;
updateAppTemplates: (appTemplates: AppTemplate[]) => Promise<AppTemplate[]>;
removeAppTemplate: (appTemplateId: GuidValue) => Promise<void>;
getByAppTemplateIdAsync: (appTemplateId: GuidValue) => Promise<Array<AppInstance>>;
getProfileAppInstances: (appDefinitionId: GuidValue) => Promise<AppInstancesResult>;
/**
* This api can only be used by appropriate user for app instance administration
* @param appDefinitionId
* @param query
* @param showInPublicListingsOnly
*/
getProfileAppInstancesByQuery: (appDefinitionId: GuidValue, query: AppInstanceQuery) => Promise<AppInstancesResult>;
/**
* Query public app instances data. The api can be used by authorized user.
* @param appDefinitionId
* @param query
*/
getProfilePublicAppInstancesByScopedQuery: (appDefinitionId: GuidValue, businessProfileId: GuidValue, scopedQuery: AppInstanceScopedQuery) => Promise<AppInstancesScopedQueryResult>;
createAppInstance: (appTemplateId: GuidValue, inputInfo: AppInstanceInputInfo, contextParams: {
[name: string]: string;
}, businessProfileId?: GuidValue, useRouteProvisioning?: boolean) => Promise<AppInstance>;
ensureAppInstanceProvisioning: (appInstanceId: GuidValue, inputInfo?: AppInstanceInputInfo) => Promise<AppInstance>;
requestChangeProvisioning: (appInstanceId: GuidValue, inputInfo: AppInstanceInputInfo) => Promise<AppInstance>;
updateAppInstance: (appInstanceId: GuidValue, inputInfo: AppInstanceInputInfo, contextParams?: {
[name: string]: string;
}) => Promise<AppInstance>;
approveAppInstance: (appInstanceId: GuidValue, inputInfo: AppInstanceInputInfo, contextParams: {
[name: string]: string;
}) => Promise<AppInstance>;
rejectAppInstance: (appInstanceId: GuidValue, inputInfo: AppInstanceRejectInfo) => Promise<AppInstance>;
removeAppInstance: (appInstanceId: GuidValue) => Promise<AppInstance>;
getAppInstanceById: (appInstanceId: GuidValue) => Promise<AppInstance>;
getAppInstanceProgressByTransactionId: (transactionId: GuidValue) => Promise<AppInstanceActionProgressResult>;
getAppInstanceOutputInfosByAppInstanceIds: (appInstanceIds: Array<string>) => Promise<Array<AppInstanceOutputInfo>>;
getAppInstanceOutputInfosByAppDefinitionId: (appDefinitionId: GuidValue) => Promise<Array<AppInstanceOutputInfo>>;
followAppInstance: (appInstanceId: GuidValue) => Promise<void>;
unfollowAppInstance: (appInstanceId: GuidValue) => Promise<void>;
addOrUpdateLastVisited: (appInstanceId: GuidValue) => Promise<void>;
getAppContextByAppInstanceId: (appInstanceId: GuidValue) => Promise<AppInstanceContext>;
getAppContext: (appPath: string) => Promise<AppInstanceContext>;
updateAppInstanceProperties: (appInstanceId: GuidValue, inputInfo: AppInstanceInputInfo) => Promise<AppInstance>;
private buildContextParamsUrl;
private ensureRemoveAppInstnaceIdAndProfileId;
private loadAppManifest;
changeAppTemplate: (appInstance: AppInstance, appTemplateId: GuidValue) => Promise<ApiResponse<AppInstance>>;
}
export {};