import type { HttpQueryMethod, InferRouteBody, InferRouteOptions, InferRouteOutput } from '@aydee-app/eden'; import type { AnyElysia, RouteSchema } from 'elysia'; export type InferTreatyQueryIO = T extends { _routes: infer TSchema extends Record; } ? InferTreatyQueryIOMapping : 'Please install Elysia before using Eden'; export type InferTreatyQueryIOMapping, TPath extends any[] = []> = { [K in keyof TSchema]: TSchema[K] extends RouteSchema ? { input: K extends HttpQueryMethod ? InferRouteOptions> : [ InferRouteBody>, InferRouteOptions> ]; output: InferRouteOutput; } : InferTreatyQueryIOMapping; }; export type InferTreatyQueryInput = T extends { _routes: infer TSchema extends Record; } ? InferTreatyQueryInputMapping : 'Please install Elysia before using Eden'; export type InferTreatyQueryInputMapping, TPath extends any[] = []> = { [K in keyof TSchema]: TSchema[K] extends RouteSchema ? K extends HttpQueryMethod ? InferRouteOptions> : [ InferRouteBody>, InferRouteOptions> ] : InferTreatyQueryInputMapping; }; export type InferTreatyQueryOutput = T extends { _routes: infer TSchema extends Record; } ? InferTreatyQueryOutputMapping : 'Please install Elysia before using Eden'; export type InferTreatyQueryOutputMapping, TPath extends any[] = []> = { [K in keyof TSchema]: TSchema[K] extends RouteSchema ? InferRouteOutput : InferTreatyQueryOutputMapping; }; //# sourceMappingURL=infer.d.ts.map