import * as H from 'history'; import * as React from 'react'; import { ServerCapabilities } from 'vscode-languageserver/lib/main'; import { AbsoluteRepoFile, PositionSpec } from '../..'; import { HoverMerged, ModeSpec } from '../../../backend/features'; import * as GQL from '../../../backend/graphqlschema'; import { ConfigurationCascadeProps, ExtensionsControllerProps, ExtensionsProps } from '../../../extensions/ExtensionsClientCommonContext'; import { ErrorLike } from '../../../util/errors'; import { RepoHeaderContributionsLifecycleProps } from '../../RepoHeader'; interface Props extends AbsoluteRepoFile, Partial, ModeSpec, RepoHeaderContributionsLifecycleProps, ConfigurationCascadeProps, ExtensionsProps, ExtensionsControllerProps { location: H.Location; history: H.History; repoID: GQL.ID; repoPath: string; commitID: string; isLightTheme: boolean; user: GQL.IUser | null; } export declare type BlobPanelTabID = 'info' | 'def' | 'references' | 'references:external' | 'discussions' | 'impl' | 'history'; declare const LOADING: 'loading'; interface State { /** The language server capabilities information. */ serverCapabilitiesOrError?: ServerCapabilities | ErrorLike; /** The hover information for the subject. */ hoverOrError?: HoverMerged | ErrorLike | typeof LOADING; } /** * A panel on the blob page that displays contextual information. */ export declare class BlobPanel extends React.PureComponent { state: State; private componentUpdates; private locationsUpdates; private subscriptions; componentDidMount(): void; componentDidUpdate(): void; componentWillUnmount(): void; render(): JSX.Element | null; private onSelectLocation; private queryDefinition; private queryReferencesLocal; private queryReferencesExternal; private queryImplementation; } export {}; //# sourceMappingURL=BlobPanel.d.ts.map