import type { HookParams, TraceOptions } from './types'; export declare enum HookRegister { BEFORE_CREATE = "BEFORE_CREATE", AFTER_CREATE = "AFTER_CREATE", BEFORE_READ = "BEFORE_READ", AFTER_READ = "AFTER_READ", BEFORE_UPDATE = "BEFORE_UPDATE", AFTER_UPDATE = "AFTER_UPDATE", BEFORE_DELETE = "BEFORE_DELETE", AFTER_DELETE = "AFTER_DELETE" } export type HookFunction = HookParams> = (params: P) => Promise

; export declare const hookManagerMap: Map>; export declare class HookManager { private hooks; registerHook

>(hookType: HookRegister, hook: HookFunction): void; runHooks

>(hookType: HookRegister, params: P, trace?: TraceOptions): Promise

; }