import { BaseComponent } from '@microsoft/sp-component-base'; import type ExtensionContext from './ExtensionContext'; /** * @internal */ export interface IAdditionalInitParameters { } /** * The base class for all client-side extensions. * * @public */ export default abstract class BaseExtension extends BaseComponent { /** * {@inheritDoc @microsoft/sp-component-base#BaseComponent.context} */ protected readonly context: ExtensionContext; private _initPromise; private _properties; /** @internal */ constructor(); /** * @internal */ _init(context: ExtensionContext, propertiesJson: string | undefined, additionalInitParameters: IAdditionalInitParameters | undefined): Promise; /** * This method can be overriden by different extension types (e.g. app customizers) to do specific initialization. * virtual * @internal */ protected _initializeExtensionType(): void; /** * Extension properties is a JavaScript object that are passed in by the application that initializes the extension. * * @remarks * Properties can be used in the extension code to define configurable behaviors. The application has control over * what properties to provide to an instance of the extension, however the most common way would be to have it * stored on the server as JSON and pass it as is to the extension on initialization. * * @readonly */ protected get properties(): TProperties; /** * This event method is called when the client-side extension is first activated on the page. * virtual */ protected onInit(): Promise; private _deserializeProperties; } //# sourceMappingURL=BaseExtension.d.ts.map