import { HttpStatusCodes } from "./httpStatusCodes.js"; //#region src/utils/responseData.d.ts type ErrorData = { code: string; title: string; message: string; } & object; type ResponseData = { message?: string; description?: string; success: boolean; status: HttpStatusCodes; data: T | null; error?: ErrorData | ErrorData[]; }; type ValidResponseStatus = HttpStatusCodes.OK_200 | HttpStatusCodes.CREATED_201 | HttpStatusCodes.ACCEPTED_202 | HttpStatusCodes.NON_AUTHORITATIVE_INFORMATION_203 | HttpStatusCodes.NO_CONTENT_204 | HttpStatusCodes.RESET_CONTENT_205 | HttpStatusCodes.PARTIAL_CONTENT_206 | HttpStatusCodes.MULTI_STATUS_207 | HttpStatusCodes.ALREADY_REPORTED_208 | HttpStatusCodes.IM_USED_226; type SuccessResponseArgs = { message?: string; description?: string; data: T; status?: ValidResponseStatus; error?: null; }; type ErrorResponseArgs = { error: ErrorData | ErrorData[]; status: HttpStatusCodes; data?: null; message?: null; description?: null; }; declare function formatResponse({ message, description, data, status }: SuccessResponseArgs): ResponseData; declare function formatResponse({ error, status }: ErrorResponseArgs): ResponseData; type PaginatedResponse = Omit, 'data'> & { data: T[] | null; page: number | null; page_size: number | null; total_pages: number | null; total_items: number | null; }; type SuccessPaginatedResponseArgs = { message?: string; description?: string; data: T[]; status?: ValidResponseStatus; page: number; pageSize: number; totalPages: number; totalItems: number; error?: null; }; type ErrorPaginatedResponseArgs = { error: ErrorData | ErrorData[]; status: HttpStatusCodes; message?: null; description?: null; data?: null; page?: null; pageSize?: null; totalPages?: null; totalItems?: null; }; declare function formatPaginatedResponse({ message, description, data, status, page, pageSize, totalPages, totalItems }: SuccessPaginatedResponseArgs): PaginatedResponse; declare function formatPaginatedResponse({ error, status }: ErrorPaginatedResponseArgs): PaginatedResponse; //#endregion export { PaginatedResponse, ResponseData, formatPaginatedResponse, formatResponse }; //# sourceMappingURL=responseData.d.ts.map