import { ClientConnection } from '@sourcegraph/extensions-client-common/lib/messaging'; import React from 'react'; import { RouteComponentProps } from 'react-router'; import * as GQL from './backend/graphqlschema'; import { ExtensionsDocumentsProps, 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 { 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 LayoutProps extends RouteComponentProps, ConfigurationCascadeProps, ExtensionsProps, ExtensionsEnvironmentProps, ExtensionsControllerProps, ExtensionsDocumentsProps { 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; user: GQL.IUser | null; /** * The subject GraphQL node ID of the viewer, which is used to look up the viewer's configuration settings. * This is either the site's GraphQL node ID (for anonymous users) or the authenticated user's GraphQL node ID. */ viewerSubject: Pick; clientConnection: Promise; isLightTheme: boolean; onThemeChange: () => void; onMainPage: (mainPage: boolean) => void; isMainPage: boolean; navbarSearchQuery: string; onNavbarQueryChange: (query: string) => void; showHelpPopover: boolean; onHelpPopoverToggle: (visible?: boolean) => void; children?: never; } export declare const Layout: React.SFC; //# sourceMappingURL=Layout.d.ts.map