import { AppInstanceTabSettings, VersionedLayoutDefinition, AppLayoutTabSettings, AppNamingPolicyTabSettings, AppTemplateTabSettings, ElementRenderer, GuidValue, IAppManagementInstanceConfigurationApi, IAppManagementInstanceHandler, IAppManagementUsageApi } from "@omnia/fx-models"; import { OmniaUxLocalization } from "@omnia/fx/ux"; import { Ref } from "vue"; import { AppManagementLocalization } from "../core"; export interface IAppManagementInstanceApi extends IAppManagementInstanceConfigurationApi { readonly appDefinitionId: GuidValue; readonly appInstanceTabSettings: AppInstanceTabSettings; readonly appTemplateTabSettings: AppTemplateTabSettings; readonly appLayoutTabSettings: AppLayoutTabSettings; readonly appNamingPolicyTabSettings: AppNamingPolicyTabSettings; readonly tabs: ElementRenderer[]; readonly headerVisibility: Ref; readonly uxColCols: number; readonly events: { onLayoutEditorOpened: (cb: () => void) => void; onLayoutEditorClosed: (cb: () => void) => void; }; } export interface IInternalAppManagementUsageApi extends IAppManagementUsageApi { getHandler: (appDefinitionId: GuidValue) => Promise IAppManagementInstanceHandler>; } export declare class AppManagementInstanceApi implements IAppManagementInstanceApi, IAppManagementInstanceConfigurationApi { readonly instanceId: GuidValue; appDefinitionId: GuidValue; appInstanceTabSettings: AppInstanceTabSettings; appTemplateTabSettings: AppTemplateTabSettings; appLayoutTabSettings: AppLayoutTabSettings; appNamingPolicyTabSettings: AppNamingPolicyTabSettings; tabs: ElementRenderer[]; headerVisibility: Ref; uxColColsRef: Ref; allowProvisioning: Ref; get uxColCols(): number; get canProvision(): boolean; omniaLoc: OmniaUxLocalization; loc: AppManagementLocalization.ILocalize; onLayoutEditorOpenedHook: () => void; onLayoutEditorClosedHook: () => void; constructor(appDefinitionId: GuidValue); setProvisioningCability: (allowProvisioning: boolean) => this; addAppInstanceTab: (settings: AppInstanceTabSettings) => this; addAppTemplateTab: (settings: AppTemplateTabSettings) => this; addAppLayoutTab: (settings: AppLayoutTabSettings) => this; addNamingPolicyTab: (settings: AppNamingPolicyTabSettings) => this; addCustomTab: (elementRenderer: ElementRenderer) => this; getAppInstanceTabSettings: () => AppInstanceTabSettings; getAppTemplateTabSettings: () => AppTemplateTabSettings; getAppLayoutTabSettings: () => AppLayoutTabSettings; getNamingPolicyTabSettings: () => AppNamingPolicyTabSettings; getTabs: () => ElementRenderer[]; sortTabs: () => void; events: { onLayoutEditorOpened: (cb: () => void) => void; onLayoutEditorClosed: (cb: () => void) => void; }; render: () => import("vue").VNode; dispose: () => void; }