import type { FastifyRequest, FastifyReply } from 'fastify'; import type { Kysely } from 'kysely'; import type { ResolvedModel } from '../schema/types.js'; import type { SchemaRegistry } from '../schema/registry.js'; import type { HookRegistry } from './registry.js'; import type { ServiceRegistry } from '../services/registry.js'; import type { EventBus } from '../events/bus.js'; import type { ModelOps } from '../model-api/types.js'; interface WithHooksContext { model: ResolvedModel; registry: SchemaRegistry; db: Kysely; ops: ModelOps; hookRegistry: HookRegistry; serviceRegistry?: ServiceRegistry; eventBus?: EventBus; config?: Record; } export declare function withHooksCreate(ctx: WithHooksContext): (request: FastifyRequest, reply: FastifyReply) => Promise; export declare function withHooksUpdate(ctx: WithHooksContext): (request: FastifyRequest, reply: FastifyReply) => Promise; export declare function withHooksDelete(ctx: WithHooksContext): (request: FastifyRequest, reply: FastifyReply) => Promise; export {}; //# sourceMappingURL=middleware.d.ts.map