UNPKG

@omnia/foundation

Version:

Provide omnia foundation typings and tooling work on client side for omnia extension

60 lines (59 loc) 3.52 kB
import { GlueEditChromeLocation, GlueEditChromeTopbarLocation } from './Enums'; import { IGlue } from '../../models'; export declare module Glue { var pageContext: IGlue.IGluePageContext; var baseUrl: string; var isGluePage: boolean; var defaultGlueLayoutId: string; function init(): void; function navigate(pageContext: IGlue.IGluePageContext): void; function getAbsoluteUrl(relativeUrl: string): string; function onProvideNavigationContext(callback: (url: string) => Promise<any>): void; function onGluePageMajorVersionChanged(callback: (url: string, version: number, pageContext: IGlue.IGluePageContext) => Promise<any>): void; function onRestoreGluePageMajorVersion(callback: (url: string, version: number, pageContext: IGlue.IGluePageContext) => Promise<any>): void; function onNavigate(callback: (navigationContext: IGlue.IGluePageContext) => void): void; function onQueryParameterChanged(callback: (url: string) => void): void; function getGluePageMajorVersion(pageContext: IGlue.IGluePageContext, version: number, versionCallback: (data: IGlue.IGlueResourceVersion) => void): void; function restoreGluePageMajorVersion(pageContext: IGlue.IGluePageContext, version: number, versionCallback: (data: IGlue.IGlueResourceVersion) => void): void; function addQueryParameter(paramName: string, paramValue: string): void; function getQueryParameter(paramName: string): string; function isShowingNavigationLoadingIndicator(): void; function showNavigationLoadingIndicator(): void; function hideNavigationLoadingIndicator(): void; function showNotificationInfo(message: string): void; function hideNotificationInfo(): void; module Callbacks { interface ICallbackItem { hash: string; callback: { (...args: any[]): any; }; } /** Registers a callback */ function add(id: string, callback: (...args: any[]) => void): void; /** Calls all registered callbacks with the specified parameters. */ function fire(id: string | RegExp, ...args: any[]): void; /** Removes all registered callbacks on the specified id */ function removeById(id: string | RegExp): void; /** Gets the callbacks registered on the specified id */ function getById(id: string): ICallbackItem[]; /** Gets all registered callbacks */ function getAll(): { [id: string]: ICallbackItem[]; }; function createDestroyResult(): { callbackDestroy: boolean; }; } module Layout { function getContext(): Promise<void>; function getGlueToolbarItems(location: GlueEditChromeLocation): Array<IGlue.IGlueToolbarItemMetadataExtend>; function getGlueTopbarItems(location: GlueEditChromeTopbarLocation): Array<IGlue.IGlueTopbarItemMetadataExtend>; function getPaneTabs(): Array<IGlue.IGluePaneTabMetadata>; function getPaneContents(): Array<IGlue.IGluePaneContentMetadataExtend>; } } export declare function GluePaneTab(meta: IGlue.IGluePaneTabMetadata): (target: any) => void; export declare function GluePaneContent(meta: IGlue.IGluePaneContentMetadata): (target: any) => void; export declare function GlueToolbarItem(meta: IGlue.IGlueToolbarItemMetadata): (target: any) => void; export declare function GlueTopbarItem(meta: IGlue.IGlueTopbarItemMetadata): (target: any) => void;