/** * @typedef {import('./types.js').Handler} Handler * * @typedef {object} Hooks * @property {Handler|Handler[]} [all] * @property {Handler|Handler[]} [create] * @property {Handler|Handler[]} [update] * @property {Handler|Handler[]} [findById] * @property {Handler|Handler[]} [find] * @property {Handler|Handler[]} [search] * @property {Handler|Handler[]} [deleteById] * @property {Handler|Handler[]} [delete] */ /** * @typedef {object} SetupRestOptions * @property {import('../src/adapters/Adapter.js').Adapter} adapter * @property {import('veloze').BodyParserOptions} bodyParserOpts * @property {Hooks} preHooks * @property {Hooks} postHooks */ /** * @param {SetupRestOptions} options * @returns {Router} */ export function modelRouter(options: SetupRestOptions): Router; export type Handler = import("./types.js").Handler; export type Hooks = { all?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; create?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; update?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; findById?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; find?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; search?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; deleteById?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; delete?: import("veloze/types/types.js").Handler | import("veloze/types/types.js").Handler[] | undefined; }; export type SetupRestOptions = { adapter: import("../src/adapters/Adapter.js").Adapter; bodyParserOpts: import("veloze").BodyParserOptions; preHooks: Hooks; postHooks: Hooks; }; import { Router } from 'veloze';