import { AggregateQuery, AggregateResponse, Class, Filter, QueryService } from '@ptc-org/nestjs-query-core'; import { ResolverMethodOpts } from '../decorators'; import { AggregateArgsType } from '../types'; import { NamedEndpoint, ResolverClass, ServiceResolver } from './resolver.interface'; export interface AggregateResolverOpts extends ResolverMethodOpts, NamedEndpoint { AggregateDTOClass?: Class; enabled?: boolean; } export interface AggregateResolver> extends ServiceResolver { aggregate(filter: AggregateArgsType, aggregateQuery: AggregateQuery, authFilter?: Filter): Promise[]>; } /** * @internal * Mixin to add `aggregate` graphql endpoints. */ export declare const Aggregateable: >(DTOClass: Class, opts?: AggregateResolverOpts) => >>(BaseClass: B) => Class> & B; export declare const AggregateResolver: = QueryService>(DTOClass: Class, opts?: AggregateResolverOpts) => ResolverClass>;