import React, { Component } from 'react'; import type { ADFEntity } from '@atlaskit/adf-utils/types'; import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model'; import type { EditorView } from '@atlaskit/editor-prosemirror/view'; import type { EventDispatcher } from '../event-dispatcher'; import type { ExtensionHandlers, ReferenceEntity } from '../extensions'; import { ProviderFactory } from '../provider-factory'; import type { ProsemirrorGetPosHandler } from '../react-node-view'; import type { EditorAppearance } from '../types'; import type { ExtensionsPluginInjectionAPI, MacroInteractionDesignFeatureFlags } from './types'; export interface Props { editorAppearance?: EditorAppearance; editorView: EditorView; eventDispatcher?: EventDispatcher; extensionHandlers: ExtensionHandlers; getPos: ProsemirrorGetPosHandler; handleContentDOMRef: (node: HTMLElement | null) => void; macroInteractionDesignFeatureFlags?: MacroInteractionDesignFeatureFlags; node: PMNode; pluginInjectionApi: ExtensionsPluginInjectionAPI; providerFactory?: ProviderFactory; references?: ReferenceEntity[]; rendererExtensionHandlers?: ExtensionHandlers; showLivePagesBodiedMacrosRendererView?: (node: ADFEntity) => boolean; showUpdatedLivePages1PBodiedExtensionUI?: (node: ADFEntity) => boolean; } export declare class Extension extends Component { static displayName: string; private providerFactory; constructor(props: Props); componentWillUnmount(): void; private renderWithProvider; render(): React.JSX.Element; }