///
import { MetaDescriptor, Params, useFetcher, type FetcherWithComponents } from '@remix-run/react';
import type { MetaType } from './typedjson';
export type TypedJsonFunction = (data: Data, init?: number | ResponseInit) => TypedJsonResponse;
export declare type TypedJsonResponse = Response & {
typedjson(): Promise;
typeddefer(): Promise;
};
export interface AppLoadContext {
[key: string]: unknown;
}
type AppData = any;
type DataFunction = (...args: any[]) => unknown;
type DataOrFunction = AppData | DataFunction;
export interface DataFunctionArgs {
request: Request;
context: AppLoadContext;
params: Params;
}
export type UseDataFunctionReturn = T extends (...args: any[]) => infer Output ? Awaited