///
import { ConfigService } from '@nestjs/config';
import { AggregateRequest, AggregateResponse, QueryRequest, QueryResponse, StatusResponse } from '../dto';
export interface IResourceController {
find(id: string | number): Promise;
queryGet(config: ConfigService, sortParam?: string, filterParam?: string, queryDto?: QueryRequest): Promise>;
query(queryDto: QueryRequest, config: ConfigService): Promise>;
aggregateGet(aggregateParams: Record): Promise>;
aggregate(aggregateDto: AggregateRequest): Promise>;
create(createDto: C): Promise;
update(id: string | number, updateDto: U): Promise;
delete(id: string | number): Promise;
createBulk(createDtos: C[], config: ConfigService): Promise;
updateBulk(updateDtos: U[], config: ConfigService): Promise;
deleteBulk(ids: (string | number)[], config: ConfigService): Promise;
upload(id: string | number, files: Record): Promise>;
unlink(id: string | number, deleteDto: Record): Promise;
}