muddle/decorators/Astro.ts
2026-10-23 09:12:49 -04:00

17 lines
391 B
TypeScript

import { Route, type RouteOptions } from "./Route.ts";
export interface AstroOptions extends RouteOptions {
partial?: boolean;
action?: boolean;
}
/** Declares an Astro-compatible endpoint. */
export function Astro(
path: string,
options: AstroOptions = {},
): MethodDecorator {
return Route(path, {
...options,
method: options.action ? "POST" : (options.method ?? "GET"),
});
}