import type { SelectQueryBuilder } from '../query-builder/select-query-builder.js'; import type { ShallowRecord } from '../util/type-utils.js'; import type { ExtractTableAlias, From, FromTables, TableExpressionOrList } from './table-parser.js'; export type SelectFrom> = [TE] extends [keyof DB] ? SelectQueryBuilder, {}> : [ TE ] extends [`${infer T} as ${infer A}`] ? T extends keyof DB ? SelectQueryBuilder, TB | A, {}> : never : TE extends ReadonlyArray ? SelectQueryBuilder, FromTables, {}> : SelectQueryBuilder, FromTables, {}>;