UNPKG

@omnia/fx-models

Version:
50 lines (49 loc) 2.04 kB
import { AppInstance, AppTemplate, AppDefinition, GuidValue, AppInstanceCreateInfo } from '.'; export interface AppProvisioningStepRegistrationMsg { /** * The title of the app provisioning step */ info: AppProvisioningStepInfo; /** * This influence the order of the app provisioning steps displayed in Provisioning Template flow, be nice, use ordering with gap -100, 0, 100, 200 So other extensions etc can inject between Note: Users can still be able to change the order in Provisioning Template flow */ weight: number; } export interface AppProvisioningStepContext { stepId: GuidValue; stepTitle: string; appInstance: AppInstance; appTemplate: AppTemplate; appDefinition: AppDefinition; appInstanceSettingElementTag?: string; } export interface AppProvisioningStepInfo { id: GuidValue; title: string; elementToRender: string; appDefinitionId: GuidValue; isFeature: boolean; } export interface IAppProvisioningStepComponent { context: AppProvisioningStepContext; registerOnGoToNext: (onGoToNext: () => Promise<boolean>) => void; registerOnGoToPrev: (onGoToPrev: () => Promise<boolean>) => void; } export interface AppProvisioningHandler { /** * Register callback to run right before app instance provisioning flow is triggered */ onBeforeCreateAppInstance: (appInstance: AppInstance, appInstanceCreateInfo: AppInstanceCreateInfo) => Promise<AppInstanceCreateInfo>; /** * Manifest Id for the approval blade for the app definition in Omnia Admin */ adminApprovalBladeManifestId?: GuidValue; /** * Get override setting component tag name */ getAppInstanceSettingElementTag?: (appInstance: AppInstance, appTemplate: AppTemplate) => string; } export declare const AppProvisioningEnterprisePropertiesStepId = "9330B10C-1473-475B-8AFA-AB03686058FA"; export declare const AppProvisioningDefaultSteps: AppProvisioningStepRegistrationMsg[];