import { QueryBuilderBaseContract } from "./query-builder-base-contract"; import { JoinQueryBuilder } from "./join-query-builder"; import { WhereBuilder } from "../where-builder"; import { JoinType } from "../enums/join-type"; import { MapperTable } from "../../mapper-table"; export interface QueryBuilderContract> extends QueryBuilderBaseContract { limit(limit: number): TQuery; join(typeTJoin: new () => TJoin, onWhereCallback: (where: WhereBuilder) => void, joinCallback: (joinQuery: JoinQueryBuilder) => void, mapperTable: MapperTable, type?: JoinType, alias?: string): TQuery; }