import { HttpParams, HttpClient } from "@angular/common/http";
import { MessageService } from "primeng/api";
import { TranslateService } from "@ngx-translate/core";
import { SortMeta } from "primeng/api";
export declare class EntityService<T> {
    protected http: HttpClient;
    protected messageService: MessageService;
    protected entityUrl: string;
    protected actionsUrl: string;
    protected translate: TranslateService;
    constructor(http: HttpClient, messageService: MessageService, entityUrl: string, actionsUrl: string, translate: TranslateService);
    getListQueryParams(listParams: ListParams): HttpParams;
    private getBodyParams;
    defaultCatch(): import("rxjs").OperatorFunction<unknown, unknown>;
    list(listParams: ListParams): import("rxjs").Observable<unknown>;
    get(id: any): import("rxjs").Observable<unknown>;
    insert(entity: T): import("rxjs").Observable<unknown>;
    update(id: any, entity: T): import("rxjs").Observable<unknown>;
    delete(id: any): import("rxjs").Observable<unknown>;
    listCustomFilter(listParams: ListParams, action: string): import("rxjs").Observable<unknown>;
}
export interface ListParams {
    page?: number;
    size?: number;
    sort?: SortMeta[];
    filterQuery?: string;
    displayFields?: string[];
}
export interface BodyParams {
    offset?: number;
    size?: number;
    orderBy?: string;
    filter?: string;
    displayfields?: string;
}
