import { HoverState } from '@sourcegraph/codeintellify'; import * as H from 'history'; import * as React from 'react'; import { Position } from 'vscode-languageserver-types'; import * as GQL from '../../backend/graphqlschema'; import { ExtensionsDocumentsProps } from '../../extensions/environment/ExtensionsEnvironment'; import { ExtensionsControllerProps } from '../../extensions/ExtensionsClientCommonContext'; import { ErrorLike } from '../../util/errors'; interface Props extends ExtensionsControllerProps, ExtensionsDocumentsProps { history: H.History; className: string; startLine: number; endLine: number; parentElement: string; overlayPortal?: HTMLElement; tooltipClass: string; defaultHoverPosition: Position; } interface State extends HoverState { /** * The blob data or error that happened. * undefined while loading. */ blobOrError?: GQL.IGitBlob | ErrorLike; target?: EventTarget; } export declare class CodeIntellifyBlob extends React.Component { /** Emits whenever the ref callback for the code element is called */ private codeViewElements; private nextCodeViewElement; /** Emits whenever the ref callback for the hover element is called */ private hoverOverlayElements; private nextOverlayElement; /** Emits whenever the ref callback for the demo file element is called */ private codeIntellifyBlobElements; private nextCodeIntellifyBlobElements; /** Emits when the go to definition button was clicked */ private goToDefinitionClicks; private nextGoToDefinitionClick; /** Emits when the close button was clicked */ private closeButtonClicks; private nextCloseButtonClick; private subscriptions; private componentUpdates; private target; constructor(props: Props); componentDidMount(): void; componentDidUpdate(): void; private getLSPTextDocumentPositionParams; render(): JSX.Element; /** * This function adjusts the position of the hoverOverlay so that it does not overflow on the right side * of the viewport. If a hoverOverlay will exceed the viewport, this function will adjust the position * so that it aligns the right side of the hover overlay with the right side of the target element. * */ private adjustHoverOverlayPosition; } export {}; //# sourceMappingURL=CodeIntellifyBlob.d.ts.map