UNPKG

@tanstack/virtual-file-routes

Version:

Modern and scalable routing for React applications

39 lines (33 loc) 1.32 kB
import type { VirtualRouteNode } from './types' // this is adapted from vite/src/node/config.ts export type ConfigFnObject<TConfig> = () => TConfig export type ConfigFnPromise<TConfig> = () => Promise<TConfig> export type ConfigFn<TConfig> = () => TConfig | Promise<TConfig> export type ConfigExport<TConfig> = | TConfig | Promise<TConfig> | ConfigFnObject<TConfig> | ConfigFnPromise<TConfig> | ConfigFn<TConfig> export type VirtualRouteSubtreeConfig = Array<VirtualRouteNode> /** * Type helper to make it easier to use __virtual.ts * accepts a direct {@link VirtualRouteSubtreeConfig} object, or a function that returns it. */ export function defineVirtualSubtreeConfig( config: VirtualRouteSubtreeConfig, ): VirtualRouteSubtreeConfig export function defineVirtualSubtreeConfig( config: Promise<VirtualRouteSubtreeConfig>, ): Promise<VirtualRouteSubtreeConfig> export function defineVirtualSubtreeConfig( config: ConfigFnObject<VirtualRouteSubtreeConfig>, ): ConfigFnObject<VirtualRouteSubtreeConfig> export function defineVirtualSubtreeConfig( config: ConfigExport<VirtualRouteSubtreeConfig>, ): ConfigExport<VirtualRouteSubtreeConfig> export function defineVirtualSubtreeConfig( config: ConfigExport<VirtualRouteSubtreeConfig>, ): ConfigExport<VirtualRouteSubtreeConfig> { return config }