kysely
    Preparing search index...

    Type Alias AnyColumnWithTable<DB, TB>

    AnyColumnWithTable: { [T in TB]: `${T & string}.${keyof DB[T] & string}` }[TB]

    Given a database type and a union of table names in that db, returns a union type with all possible table.column combinations.

    Example:

    interface Person {
    id: number
    }

    interface Pet {
    name: string
    species: 'cat' | 'dog'
    }

    interface Movie {
    stars: number
    }

    interface Database {
    person: Person
    pet: Pet
    movie: Movie
    }

    type Columns = AnyColumnWithTable<Database, 'person' | 'pet'>

    // Columns == 'person.id' | 'pet.name' | 'pet.species'

    Type Parameters

    • DB
    • TB extends keyof DB