@elsikora/nestjs-crud-automator
Version:
A library for automating the creation of CRUD operations in NestJS.
19 lines (18 loc) • 1.52 kB
TypeScript
import { IApiBaseEntity } from '../../../interface/api-base-entity.interface';
import { IApiControllerProperties } from '../../../interface/decorator/api';
import { TApiRequestTransformer } from '../../../type/api-request-transformer.type';
import { TApiControllerTransformDataData, TApiControllerTransformDataObjectToTransform } from '../../../type/utility';
import { EApiControllerRequestTarget, EApiControllerResponseTarget } from '../../../enum/decorator/api';
/**
* Transforms data between request/response objects and entity objects.
* Handles both static and dynamic transformations for body, query, parameters, and response data.
* @template E - The entity type.
* @param {object | undefined} targets - Target-specific transformer configuration.
* @param {IApiControllerProperties<E>} properties - Controller configuration properties
* @param {TApiControllerTransformDataObjectToTransform<E>} objectToTransform - The object to apply transformations to
* @param {TApiControllerTransformDataData} data - Data sources to use for transformations including headers, IP address, and authentication
* @returns {void}
*/
export declare function ApiControllerTransformData<E extends IApiBaseEntity>(targets: Partial<Record<EApiControllerRequestTarget | EApiControllerResponseTarget, {
transformers?: Array<TApiRequestTransformer<E>>;
}>> | undefined, properties: IApiControllerProperties<E>, objectToTransform: TApiControllerTransformDataObjectToTransform<E>, data: TApiControllerTransformDataData): void;