import Session from '../Services/Identity/Session';
import BaseService from './BaseService';
import { CommonOptions } from './RouteGenerator';
export type DELETE_RESPONSE = {
    success: boolean;
    rc: number;
};
export default class CrudService<T> extends BaseService<T> {
    Routes: {
        [key: string]: string;
    };
    constructor(session: Session, entityName: string, routePrefix?: string, routeSuffix?: string);
    get: (id: number | string, queryString?: any, commonOptions?: CommonOptions) => Promise<any>;
    getAll: (queryString?: any, commonOptions?: CommonOptions) => Promise<any>;
    create: (payload: any, commonOptions?: CommonOptions) => Promise<any>;
    update: (id: number | string, payload: any, commonOptions?: CommonOptions) => Promise<any>;
    delete: (id: number | string, queryString?: any, commonOptions?: CommonOptions) => Promise<DELETE_RESPONSE>;
    patch: (id: number | string, payload: {
        [key: string]: any;
    }[], commonOptions?: CommonOptions) => Promise<any>;
}
