import { ay as LinkDescriptor, av as MetaDescriptor, aM as ServerDataFrom, aN as ClientDataFrom, aO as Func, aP as Equal, aQ as Pretty } from '../../route-data-Cq_b5feC.mjs'; import { A as AppLoadContext } from '../../data-CQbyyGzl.mjs'; import 'react'; type IsDefined = Equal extends true ? false : true; type RouteModule = { meta?: Func; links?: Func; headers?: Func; loader?: Func; clientLoader?: Func; action?: Func; clientAction?: Func; HydrateFallback?: unknown; default?: unknown; ErrorBoundary?: unknown; [key: string]: unknown; }; type LinkDescriptors = LinkDescriptor[]; type RouteInfo = { parents: RouteInfo[]; module: RouteModule; id: unknown; file: string; path: string; params: unknown; loaderData: unknown; actionData: unknown; }; type MetaMatch = Pretty & { pathname: string; meta: MetaDescriptor[]; data: T["loaderData"]; handle?: unknown; error?: unknown; }>; type MetaMatches = T extends [infer F extends RouteInfo, ...infer R extends RouteInfo[]] ? [MetaMatch, ...MetaMatches] : Array | undefined>; type CreateMetaArgs = { location: Location; params: T["params"]; data: T["loaderData"]; error?: unknown; matches: MetaMatches<[...T["parents"], T]>; }; type MetaDescriptors = MetaDescriptor[]; type HeadersArgs = { loaderHeaders: Headers; parentHeaders: Headers; actionHeaders: Headers; errorHeaders: Headers | undefined; }; type IsHydrate = ClientLoader extends { hydrate: true; } ? true : ClientLoader extends { hydrate: false; } ? false : false; type CreateLoaderData = _CreateLoaderData, ClientDataFrom, IsHydrate, T extends { HydrateFallback: Func; } ? true : false>; type _CreateLoaderData = [ HasHydrateFallback, ClientLoaderHydrate ] extends [true, true] ? IsDefined extends true ? ClientLoaderData : undefined : [ IsDefined, IsDefined ] extends [true, true] ? ServerLoaderData | ClientLoaderData : IsDefined extends true ? ClientLoaderData : IsDefined extends true ? ServerLoaderData : undefined; type CreateActionData = _CreateActionData, ClientDataFrom>; type _CreateActionData = Awaited<[ IsDefined, IsDefined ] extends [true, true] ? ServerActionData | ClientActionData : IsDefined extends true ? ClientActionData : IsDefined extends true ? ServerActionData : undefined>; type ClientDataFunctionArgs = { request: Request; params: T["params"]; }; type ServerDataFunctionArgs = ClientDataFunctionArgs & { context: AppLoadContext; }; type CreateServerLoaderArgs = ServerDataFunctionArgs; type CreateClientLoaderArgs = ClientDataFunctionArgs & { serverLoader: () => Promise>; }; type CreateServerActionArgs = ServerDataFunctionArgs; type CreateClientActionArgs = ClientDataFunctionArgs & { serverAction: () => Promise>; }; type CreateHydrateFallbackProps = { params: T["params"]; }; type Match = Pretty & { pathname: string; data: T["loaderData"]; handle: unknown; }>; type Matches = T extends [infer F extends RouteInfo, ...infer R extends RouteInfo[]] ? [Match, ...Matches] : Array | undefined>; type CreateComponentProps = { params: T["params"]; loaderData: T["loaderData"]; actionData?: T["actionData"]; matches: Matches<[...T["parents"], T]>; }; type CreateErrorBoundaryProps = { params: T["params"]; error: unknown; loaderData?: T["loaderData"]; actionData?: T["actionData"]; }; export type { CreateActionData, CreateClientActionArgs, CreateClientLoaderArgs, CreateComponentProps, CreateErrorBoundaryProps, CreateHydrateFallbackProps, CreateLoaderData, CreateMetaArgs, CreateServerActionArgs, CreateServerLoaderArgs, HeadersArgs, LinkDescriptors, MetaDescriptors };