Type alias InferResult<C>

InferResult<C>: C extends Compilable<infer O>
    ? ResolveResult<O>
    : C extends CompiledQuery<infer O>
        ? ResolveResult<O>
        : never

A helper type that allows inferring a select/insert/update/delete query's result type from a query builder or compiled query.

Examples

Infer a query builder's result type:

import { InferResult } from 'kysely'

const query = db
.selectFrom('person')
.innerJoin('pet', 'pet.owner_id', 'person.id')
.select(['person.first_name', 'pet.name'])

type QueryResult = InferResult<typeof query> // { first_name: string; name: string; }[]

Infer a compiled query's result type:

import { InferResult } from 'kysely'

const compiledQuery = db
.insertInto('person')
.values({
first_name: 'Foo',
last_name: 'Barson',
gender: 'other',
age: 15,
})
.returningAll()
.compile()

type QueryResult = InferResult<typeof compiledQuery> // Selectable<Person>[]

Type Parameters

Generated using TypeDoc