Files
WRNexusJS/packages/captcha/src/providers/custom.ts
T
2026-07-25 13:38:18 +05:30

9 lines
478 B
TypeScript

import type { CaptchaProvider } from "../types.ts";
export function defineCaptchaProvider<T extends CaptchaProvider>(provider: T): T {
if (!provider.name) throw new TypeError("Custom CAPTCHA provider requires a stable name");
if (!provider.client?.responseField) throw new TypeError("Custom CAPTCHA provider requires client.responseField");
if (typeof provider.verify !== "function") throw new TypeError("Custom CAPTCHA provider requires verify()");
return provider;
}