import { Approval, ApprovalContext, ApprovalStatus } from "eve/tools/approval"; //#region src/vercel-eve/v0/approval-types.d.ts /** * Eve 0.34 already exports `eve/tools/approval`, but only `Approval`, * `ApprovalContext`, and `ApprovalStatus`. The rest of the public names * (`ApprovalPolicy`, `ApprovalConfiguration`, response-time types) moved * onto that path in 0.45 when `eve/tools` stopped re-exporting them. * Derive them from `Approval` so the peer range `>=0.34.0 <1` stays honest. * * `Approval` has been `ApprovalPolicy | ApprovalConfiguration` since 0.34, * and the `{ request, response? }` shape is unchanged through 0.46. */ export type ApprovalPolicy> = Extract, (ctx: ApprovalContext) => unknown>; export type ApprovalConfiguration> = Exclude, ApprovalPolicy>; export type ApprovalResponsePolicy> = NonNullable["response"]>; export type ApprovalResponseContext> = Parameters>[0]; export type ApprovalResponseDecision = Awaited>; //#endregion export type { Approval, ApprovalContext, ApprovalStatus };