UNPKG

vike

Version:

The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.

65 lines (64 loc) 3.24 kB
export { createGlobalContextShared }; export { getGlobalContextSyncErrMsg }; export type { GlobalContextBase }; export type { GlobalContextBasePublic }; export type GlobalContextInternal = GlobalContextServerInternal | GlobalContextClientInternal; import type { PageFile } from './getPageFiles.js'; import type { PageConfigRuntime } from '../types/PageConfig.js'; import type { GlobalContextServerInternal } from '../node/runtime/globalContext.js'; import type { GlobalContextClientInternal } from '../client/runtime-client-routing/globalContext.js'; import { type Hook } from './hooks/getHook.js'; declare const getGlobalContextSyncErrMsg = "The global context isn't set yet, call getGlobalContextSync() later or use getGlobalContext() instead."; declare function createGlobalContextShared<GlobalContextAddendum extends object>(virtualFileExports: unknown, globalObject: { globalContext?: Record<string, unknown>; onCreateGlobalContextHooks?: Hook[]; }, addGlobalContext?: (globalContext: GlobalContextBase) => Promise<GlobalContextAddendum>): Promise<{ /** * Useful for distinguishing `globalContext` from other objects and narrowing down TypeScript unions. * * https://vike.dev/globalContext#typescript */ isGlobalContext: true; _isOriginalObject: true; _virtualFileExports: unknown; _pageFilesAll: PageFile[]; _pageConfigs: PageConfigRuntime[]; _pageConfigGlobal: import("../types/PageConfig.js").PageConfigGlobalRuntime; _allPageIds: string[]; _vikeConfigPublicGlobal: { config: import("../types/index.js").ConfigResolved; _source: import("./page-configs/resolveVikeConfigPublic.js").Source; _sources: import("./page-configs/resolveVikeConfigPublic.js").Sources; _from: import("./page-configs/resolveVikeConfigPublic.js").From; }; config: import("../types/index.js").ConfigResolved; pages: { [k: string]: import("./page-configs/resolveVikeConfigPublic.js").VikeConfigPublicPageEager; }; } & Awaited<GlobalContextAddendum>>; type GlobalContextBasePublic = Pick<GlobalContextBase, 'config' | 'pages' | 'isGlobalContext'>; type GlobalContextBase = ReturnType<typeof createGlobalContextBase>; declare function createGlobalContextBase(virtualFileExports: unknown): { /** * Useful for distinguishing `globalContext` from other objects and narrowing down TypeScript unions. * * https://vike.dev/globalContext#typescript */ isGlobalContext: true; _isOriginalObject: true; _virtualFileExports: unknown; _pageFilesAll: PageFile[]; _pageConfigs: PageConfigRuntime[]; _pageConfigGlobal: import("../types/PageConfig.js").PageConfigGlobalRuntime; _allPageIds: string[]; _vikeConfigPublicGlobal: { config: import("../types/index.js").ConfigResolved; _source: import("./page-configs/resolveVikeConfigPublic.js").Source; _sources: import("./page-configs/resolveVikeConfigPublic.js").Sources; _from: import("./page-configs/resolveVikeConfigPublic.js").From; }; config: import("../types/index.js").ConfigResolved; pages: { [k: string]: import("./page-configs/resolveVikeConfigPublic.js").VikeConfigPublicPageEager; }; };