type GetResult<TContext> = Prettify<TContext["result"] extends object ? TContext["result"] : TContext["hasJoins"] extends true ? TContext["schema"] : TContext["schema"][TContext["fromSourceName"]]>;
type GetResult<TContext> = Prettify<TContext["result"] extends object ? TContext["result"] : TContext["hasJoins"] extends true ? TContext["schema"] : TContext["schema"][TContext["fromSourceName"]]>;
Defined in: packages/db/src/query/builder/types.ts:675
GetResult - Determines the final result type of a query
This type implements the logic for what a query returns based on its current state:
Priority Order:
Examples:
// Single table query:
from({ users }).where(...) // → User[]
// Join query without select:
from({ users }).leftJoin({ orders }, ...) // → { users: User, orders: Order | undefined }[]
// Query with select:
from({ users }).select({ id: users.id, name: users.name }) // → { id: number, name: string }[]
// Single table query:
from({ users }).where(...) // → User[]
// Join query without select:
from({ users }).leftJoin({ orders }, ...) // → { users: User, orders: Order | undefined }[]
// Query with select:
from({ users }).select({ id: users.id, name: users.name }) // → { id: number, name: string }[]
The Prettify wrapper ensures clean type display in IDEs by flattening complex intersection types into readable object types.
TContext extends Context