import { ApiPath } from "../Extends"; import { LayoutTemplateRegistration } from "../Layout"; import { IMessageBusTopicSubscription } from "../Messaging"; export interface IInternalRegistrationLayoutTemplate extends IRegistrationLayoutTemplate { getAllLayoutTemplates: () => LayoutTemplateRegistration[]; onLayoutTemplateRegistrationChange: () => IMessageBusTopicSubscription; } export interface IRegistrationLayoutTemplate { registerLayoutTemplates: (items: LayoutTemplateRegistration | LayoutTemplateRegistration[]) => void; } export interface ILayoutCanvasApi { registration: Promise; } declare module "./UxApi" { interface IOmniaUxApi { layoutCanvas: ILayoutCanvasApi; } interface IOmniaUxExtendApiManifest { layoutCanvas: { registration: ApiPath; }; } }