import { type Token } from '@frontmcp/di'; import { type EntryOwnerRef } from '../entries/base.entry'; import { type FlowName } from './flow.metadata'; export type HookStageType = 'stage' | 'will' | 'did' | 'around'; export type HookPriority = number; export interface HookOptions { priority?: HookPriority; filter?: (ctx: Ctx) => boolean | Promise; } export interface TokenHookMetadata { hooks: HookMetadata[]; } export interface HookMetadata extends HookOptions { type: HookStageType; flow: Name; stage: Stage; target: Token | null; method: string; static?: boolean; owner?: EntryOwnerRef; } //# sourceMappingURL=hook.metadata.d.ts.map