UNPKG

express-crud-router

Version:

React Admin backend for Express. 1 line per resource! ORM agnostic.

35 lines (34 loc) 1.17 kB
import { RequestHandler, Request, Response } from 'express'; export declare type Get<R> = (conf: { filter: Record<string, any>; limit: number; offset: number; order: Array<[string, string]>; }, opts?: { req: Request; res: Response; }) => Promise<{ rows: R[]; count: number; }>; export interface GetListOptions<R> { filters: FiltersOption; additionalAttributes: Record<string, (record: R, context: { rows: R[]; req: Request; }) => any>; additionalAttributesConcurrency: number; } declare type FiltersOption = Record<string, (value: any) => any>; export declare const getMany: <R>(doGetFilteredList: Get<R>, options?: Partial<GetListOptions<R>> | undefined) => RequestHandler; export declare const parseQuery: (query: any, filtersOption: FiltersOption) => Promise<{ offset: any; limit: number; filter: Record<string, any>; order: [[string, string]]; }>; export declare const computeAdditionalAttributes: <R>(additionalAttributes: Record<string, (record: R, context: { rows: R[]; req: Request; }) => any>, concurrency: number, req: Request) => (records: R[]) => Promise<any[]>; export {};