import { ClientConnection } from '@sourcegraph/extensions-client-common/lib/messaging'; import * as React from 'react'; import * as GQL from './backend/graphqlschema'; import { ExtensionsEnvironmentProps } from './extensions/environment/ExtensionsEnvironment'; import { ExtensionAreaRoute } from './extensions/extension/ExtensionArea'; import { ExtensionAreaHeaderNavItem } from './extensions/extension/ExtensionAreaHeader'; import { ExtensionsAreaRoute } from './extensions/ExtensionsArea'; import { ExtensionsAreaHeaderActionButton } from './extensions/ExtensionsAreaHeader'; import { ConfigurationCascadeProps, ExtensionsControllerProps, ExtensionsProps } from './extensions/ExtensionsClientCommonContext'; import { LayoutProps } from './Layout'; import { RepoHeaderActionButton } from './repo/RepoHeader'; import { RepoRevContainerRoute } from './repo/RepoRevContainer'; import { SiteAdminAreaRoute } from './site-admin/SiteAdminArea'; import { SiteAdminSideBarGroups } from './site-admin/SiteAdminSidebar'; import { UserAccountAreaRoute } from './user/account/UserAccountArea'; import { UserAccountSidebarItems } from './user/account/UserAccountSidebar'; import { UserAreaRoute } from './user/area/UserArea'; import { UserAreaHeaderNavItem } from './user/area/UserAreaHeader'; export interface SourcegraphWebAppProps { extensionAreaRoutes: ReadonlyArray; extensionAreaHeaderNavItems: ReadonlyArray; extensionsAreaRoutes: ReadonlyArray; extensionsAreaHeaderActionButtons: ReadonlyArray; siteAdminAreaRoutes: ReadonlyArray; siteAdminSideBarGroups: SiteAdminSideBarGroups; siteAdminOverviewComponents: ReadonlyArray; userAreaHeaderNavItems: ReadonlyArray; userAreaRoutes: ReadonlyArray; userAccountSideBarItems: UserAccountSidebarItems; userAccountAreaRoutes: ReadonlyArray; repoRevContainerRoutes: ReadonlyArray; repoHeaderActionButtons: ReadonlyArray; } interface SourcegraphWebAppState extends ConfigurationCascadeProps, ExtensionsProps, ExtensionsEnvironmentProps, ExtensionsControllerProps { error?: Error; user?: GQL.IUser | null; viewerSubject: LayoutProps['viewerSubject']; /** * Whether the light theme is enabled or not */ isLightTheme: boolean; /** * Whether the user is on MainPage and therefore not logged in */ isMainPage: boolean; /** * The current search query in the navbar. */ navbarSearchQuery: string; /** Whether the help popover is shown. */ showHelpPopover: boolean; clientConnection: Promise; } /** * The root component */ export declare class SourcegraphWebApp extends React.Component { constructor(props: SourcegraphWebAppProps); private subscriptions; componentDidMount(): void; componentWillUnmount(): void; componentDidUpdate(): void; render(): React.ReactFragment | null; private onThemeChange; private onMainPage; private onNavbarQueryChange; private onHelpPopoverToggle; private onConfigurationCascadeChange; private onViewerConfiguredExtensionsChange; private extensionsOnVisibleTextDocumentsChange; } export {}; //# sourceMappingURL=SourcegraphWebApp.d.ts.map