import { entityKind } from "../../entity.cjs"; import type { MySqlDialectConfig } from "../dialect.cjs"; import { MySqlDialect } from "../dialect.cjs"; import type { WithBuilder } from "../subquery.cjs"; import { WithSubquery } from "../../subquery.cjs"; import { MySqlSelectBuilder } from "./select.cjs"; import type { SelectedFields } from "./select.types.cjs"; export declare class QueryBuilder { static readonly [entityKind]: string; private dialect; private dialectConfig; constructor(dialect?: MySqlDialect | MySqlDialectConfig); $with: WithBuilder; with(...queries: WithSubquery[]): { select: { (): MySqlSelectBuilder; (fields: TSelection): MySqlSelectBuilder; }; selectDistinct: { (): MySqlSelectBuilder; (fields: TSelection): MySqlSelectBuilder; }; }; select(): MySqlSelectBuilder; select(fields: TSelection): MySqlSelectBuilder; selectDistinct(): MySqlSelectBuilder; selectDistinct(fields: TSelection): MySqlSelectBuilder; private getDialect; }