import * as H from 'history'; import * as React from 'react'; import { Observable } from 'rxjs'; import { AbsoluteRepoFile, ParsedRepoURI } from '..'; import { ModeSpec } from '../../backend/features'; import * as GQL from '../../backend/graphqlschema'; import { ExtensionsDocumentsProps } from '../../extensions/environment/ExtensionsEnvironment'; import { ConfigurationCascadeProps, ExtensionsControllerProps, ExtensionsProps } from '../../extensions/ExtensionsClientCommonContext'; import { ErrorLike } from '../../util/errors'; import { RepoHeaderContributionsLifecycleProps } from '../RepoHeader'; export declare function fetchBlobCacheKey(parsed: ParsedRepoURI & { isLightTheme: boolean; disableTimeout: boolean; }): string; export declare const fetchBlob: (params: { repoPath: string; commitID: string; filePath: string; isLightTheme: boolean; disableTimeout: boolean; }, force?: boolean | undefined) => Observable; interface Props extends AbsoluteRepoFile, ModeSpec, RepoHeaderContributionsLifecycleProps, ConfigurationCascadeProps, ExtensionsProps, ExtensionsDocumentsProps, ExtensionsControllerProps { location: H.Location; history: H.History; isLightTheme: boolean; repoID: GQL.ID; user: GQL.IUser | null; } interface State { wrapCode: boolean; /** * The blob data or error that happened. * undefined while loading. */ blobOrError?: GQL.IGitBlob | ErrorLike; } export declare class BlobPage extends React.PureComponent { private propsUpdates; private extendHighlightingTimeoutClicks; private subscriptions; constructor(props: Props); private logViewEvent; componentDidMount(): void; componentWillReceiveProps(newProps: Props): void; componentWillUnmount(): void; render(): React.ReactNode; private onDidUpdateLineWrap; private onExtendHighlightingTimeoutClick; private getPageTitle; } export {}; //# sourceMappingURL=BlobPage.d.ts.map