import type { TypedQueryBuilder } from '../query-builders/query-builder.js'; import type { AddAliasToSelection } from '../query-builders/select.types.js'; import type { ColumnsSelection, SQL } from '../sql/sql.js'; import type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from '../subquery.js'; import type { QueryBuilder } from './query-builders/query-builder.js'; export type SubqueryWithSelection = Subquery> & AddAliasToSelection; export type WithSubqueryWithSelection = WithSubquery> & AddAliasToSelection; export interface WithBuilder { (alias: TAlias): { as: { (qb: TypedQueryBuilder | ((qb: QueryBuilder) => TypedQueryBuilder)): WithSubqueryWithSelection; (qb: TypedQueryBuilder | ((qb: QueryBuilder) => TypedQueryBuilder)): WithSubqueryWithoutSelection; }; }; (alias: TAlias, selection: TSelection): { as: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection; }; } //# sourceMappingURL=subquery.d.ts.map