import { HoverState } from '@sourcegraph/codeintellify'; import * as React from 'react'; import { RouteComponentProps } from 'react-router'; import * as GQL from '../../backend/graphqlschema'; import { ExtensionsDocumentsProps } from '../../extensions/environment/ExtensionsEnvironment'; import { ExtensionsControllerProps, ExtensionsProps } from '../../extensions/ExtensionsClientCommonContext'; import { RepoHeaderContributionsLifecycleProps } from '../RepoHeader'; interface Props extends RouteComponentProps<{ spec: string; }>, RepoHeaderContributionsLifecycleProps, ExtensionsProps, ExtensionsControllerProps, ExtensionsDocumentsProps { repo: GQL.IRepository; } interface State extends HoverState { error?: string; } /** * Properties passed to all page components in the repository compare area. */ export interface RepositoryCompareAreaPageProps extends ExtensionsProps { /** The repository being compared. */ repo: GQL.IRepository; /** The base of the comparison. */ base: { repoPath: string; repoID: GQL.ID; rev?: string | null; }; /** The head of the comparison. */ head: { repoPath: string; repoID: GQL.ID; rev?: string | null; }; /** The URL route prefix for the comparison. */ routePrefix: string; } /** * Renders pages related to a repository comparison. */ export declare class RepositoryCompareArea extends React.Component { private componentUpdates; /** Emits whenever the ref callback for the hover element is called */ private hoverOverlayElements; private nextOverlayElement; /** Emits whenever the ref callback for the hover element is called */ private repositoryCompareAreaElements; private nextRepositoryCompareAreaElement; /** 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 hoverifier; constructor(props: Props); private getLSPTextDocumentPositionParams; componentDidMount(): void; shouldComponentUpdate(nextProps: Readonly, nextState: Readonly): boolean; componentDidUpdate(): void; componentWillUnmount(): void; render(): JSX.Element | null; private onUpdateComparisonSpec; } export {}; //# sourceMappingURL=RepositoryCompareArea.d.ts.map