API Reference > imodeljs-frontend > Extensions > ExtensionAdmin ExtensionAdmin Class Beta Handles the loading of Extensions, and maintains a list of registered, currently loaded, and currently being downloaded extensions. Extensions are loaded asynchronously, leading to them being loaded in a different order than they are requested. To wait for a given extension, await the PendingExtension.promise Methods Name Description constructor(props?: ExtensionAdminProps): ExtensionAdmin addExtensionLoader(extensionLoader: ExtensionLoader): void Adds an ExtensionLoader to the list of extension loaders in use. addExtensionLoaderFront(extensionLoader: ExtensionLoader): void Adds an ExtensionLoader to the front of the list of extension loaders in use. loadExtension(extensionRoot: string, extensionVersion?: string, args?: string[]): Promise<undefined | Extension> Loads an Extension using one of the available ExtensionLoaders that are registered on the ExtensionAdmin. onInitialized(): void On view startup, viewManager.onViewOpen, ExtensionAdmin will be setup according to the provided ExtensionAdminProps. Beta register(extension: Extension): void Registers an Extension with the ExtensionAdmin. Properties Name Type Description onExtensionLoaded Readonly BeEvent<(extensionName: string) => void> Fired when an extension has finished loading and is ready to use. Defined in core/frontend/src/extension/ExtensionAdmin.ts Line 34 Last Updated: 12 June, 2024