import { DocumentByName, GenericQueryCtx, TableNamesInDataModel } from "convex/server"; //#region src/orm/query-context.d.ts type InferCtxDataModel> = TCtx extends GenericQueryCtx ? DataModel : never; type DocByCtx, TableName extends TableNamesInDataModel>> = DocumentByName, TableName>; type QueryCtxWithOptionalOrmQueryTable, TableName extends TableNamesInDataModel>> = TCtx & { orm?: { query?: { [K in TableName]?: { findFirst?: (...args: any[]) => unknown; } }; }; }; type QueryCtxWithOrmQueryTable, TableName extends TableNamesInDataModel>> = TCtx & { orm: { query: { [K in TableName]-?: { findFirst: (...args: any[]) => unknown; } }; }; }; type OrmQueryByCtx> = TCtx extends { orm: { query: infer TQuery; }; } ? TQuery : never; type OrmQueryEntryByCtx, TableName extends TableNamesInDataModel>> = TableName extends keyof OrmQueryByCtx ? NonNullable[TableName]> : never; type HasOrmFindFirstByCtx, TableName extends TableNamesInDataModel>> = [OrmQueryEntryByCtx] extends [never] ? false : OrmQueryEntryByCtx extends { findFirst: (...args: any[]) => unknown; } ? true : false; type QueryCtxWithPreferredOrmQueryTable, TableName extends TableNamesInDataModel>> = TCtx extends { orm: unknown; } ? HasOrmFindFirstByCtx extends true ? TCtx : never : TCtx; type OrmQueryRowByCtx, TableName extends TableNamesInDataModel>> = OrmQueryEntryByCtx extends { _: { baseResult: infer TResult; }; } ? TResult : never; type LookupByIdResultByCtx, TableName extends TableNamesInDataModel>> = (TCtx extends { orm: unknown; } ? OrmQueryRowByCtx : DocByCtx) | null; declare function getByIdWithOrmQueryFallback, TableName extends TableNamesInDataModel>>(ctx: QueryCtxWithPreferredOrmQueryTable, tableName: TableName, id: DocByCtx['_id']): Promise>; //#endregion export { QueryCtxWithPreferredOrmQueryTable as a, QueryCtxWithOrmQueryTable as i, LookupByIdResultByCtx as n, getByIdWithOrmQueryFallback as o, QueryCtxWithOptionalOrmQueryTable as r, DocByCtx as t };