import { Entity } from '@loopback/repository'; import { Knex } from 'knex'; import { QueryFilter } from '../../filter'; import { Orm } from '../../orm'; import { QuerySession } from '../../session'; import { EntityClass } from '../../types'; import { ColumnsResolver, JoinResolver, OrderResolver, WhereResolver } from './resolvers'; export declare class StatementResolver { readonly model: EntityClass; orm: Orm; readonly columns: ColumnsResolver; readonly join: JoinResolver; readonly where: WhereResolver; readonly order: OrderResolver; constructor(model: EntityClass, orm: Orm); resolveColumns(qb: Knex.QueryBuilder, filter: QueryFilter): void; resolveJoin(qb: Knex.QueryBuilder, filter: QueryFilter, session: QuerySession): void; resolveWhere(qb: Knex.QueryBuilder, filter: QueryFilter, session: QuerySession): void; resolveOrder(qb: Knex.QueryBuilder, filter: QueryFilter, session: QuerySession): void; } export declare class StatementResolvers { orm: Orm; protected items: Map; constructor(orm: Orm); get(model: EntityClass): StatementResolver; }