@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
26 lines (25 loc) • 1.23 kB
TypeScript
import { WebComponentBundleManifest } from "../../models";
export interface IWebComponentInstance {
}
export interface IManifestMap {
[manifestId: string]: IConnectedWebComponent;
}
export interface IProxyOmniaServiceManifestMap {
[omniaServiceId: string]: IManifestMap;
}
export interface IWebComponentRegistrationHandler {
(webComponentManifest: WebComponentBundleManifest): void;
}
export interface IConnectedWebComponent {
setRegistrationHandler: (registrationHandler: IWebComponentRegistrationHandler) => void;
addElementInstanceHandler: (instanceHandler: IWebComponentInstance, htmlElement: HTMLElement) => IWebComponentInstanceContext;
getManifest: () => WebComponentBundleManifest;
}
export interface IWebComponentInstanceContext {
getManifest: () => WebComponentBundleManifest;
}
export declare class InternalWebComponentBootstrapper {
static registerElement: (omniaServiceId: string, manifestId: string, registrationHandler: IWebComponentRegistrationHandler) => void;
static registerElementInstance(omniaServiceId: string, manifestId: string, instanceHandler: IWebComponentInstance, htmlElement: HTMLElement): IWebComponentInstanceContext;
private static getProxyForCaller;
}