@elsikora/nestjs-crud-automator
Version:
A library for automating the creation of CRUD operations in NestJS.
20 lines (19 loc) • 1.61 kB
TypeScript
import { IApiBaseEntity } from '../../interface/api-base-entity.interface';
import { IApiFunctionContext, IApiFunctionStepContext } from '../../interface/class/api/function';
import { IApiGetListResponseResult } from '../../interface/decorator/api';
import { TApiFunctionCreateProperties, TApiFunctionDeleteCriteria, TApiFunctionGetListProperties, TApiFunctionGetManyProperties, TApiFunctionGetProperties, TApiFunctionUpdateCriteria, TApiFunctionUpdateProperties } from '../../type/decorator/api/function';
/**
* Base class for services providing CRUD operations.
* @see {@link https://elsikora.com/docs/nestjs-crud-automator/api-reference/classes#apiservicebase | API Reference - ApiServiceBase}
* @see {@link https://elsikora.com/docs/nestjs-crud-automator/core-concepts/services | Core Concepts - Services}
*/
export declare class ApiServiceBase<E> {
create(properties: TApiFunctionCreateProperties<E>): Promise<E>;
delete(criteria: Array<TApiFunctionDeleteCriteria<E>> | TApiFunctionDeleteCriteria<E>): Promise<void>;
get(properties: TApiFunctionGetProperties<E>): Promise<E>;
getList(properties: TApiFunctionGetListProperties<E>): Promise<IApiGetListResponseResult<E>>;
getMany(properties: TApiFunctionGetManyProperties<E>): Promise<Array<E>>;
update(criteria: Array<TApiFunctionUpdateCriteria<E>> | TApiFunctionUpdateCriteria<E>, properties: TApiFunctionUpdateProperties<E>): Promise<E>;
protected getApiFunctionContext<T extends IApiBaseEntity>(): IApiFunctionContext<T>;
protected getApiFunctionStepContext<T extends IApiBaseEntity>(): IApiFunctionStepContext<T>;
}