diff --git a/packages/plugin-kit/example.ts b/packages/plugin-kit/example.ts index 58e9e135..5c164ade 100644 --- a/packages/plugin-kit/example.ts +++ b/packages/plugin-kit/example.ts @@ -1,4 +1,5 @@ import { z } from "zod"; +import { Hooks } from "./hooks"; import { Plugin, PluginConfigManager } from "./plugin"; import type { Manifest } from "./schema"; @@ -7,14 +8,16 @@ const myManifest: Manifest = { description: "A plugin for my app", version: "1.0.0", }; + const configManager = new PluginConfigManager( z.object({ apiKey: z.string(), }), ); + const myPlugin = new Plugin(myManifest, configManager); -myPlugin.registerHandler("request", (req) => { +myPlugin.registerHandler(Hooks.Response, (req) => { console.info("Request received:", req); return req; }); diff --git a/packages/plugin-kit/hooks.ts b/packages/plugin-kit/hooks.ts index 0be21039..10d6b232 100644 --- a/packages/plugin-kit/hooks.ts +++ b/packages/plugin-kit/hooks.ts @@ -1,4 +1,9 @@ +export enum Hooks { + Request = "request", + Response = "response", +} + export type ServerHooks = { - request: (request: Request) => Request; - response: (response: Response) => Response; + [Hooks.Request]: (request: Request) => Request; + [Hooks.Response]: (response: Response) => Response; };