better-auth
Version:
The most comprehensive authentication framework for TypeScript.
1 lines • 842 B
Source Map (JSON)
{"version":3,"file":"infer-plugin.mjs","names":[],"sources":["../../../src/client/plugins/infer-plugin.ts"],"sourcesContent":["import type {\n\tBetterAuthClientPlugin,\n\tBetterAuthOptions,\n} from \"@better-auth/core\";\n\nexport const InferServerPlugin = <\n\tAuthOrOption extends\n\t\t| BetterAuthOptions\n\t\t| {\n\t\t\t\toptions: BetterAuthOptions;\n\t\t },\n\tID extends string,\n>() => {\n\ttype Option = AuthOrOption extends { options: infer O } ? O : AuthOrOption;\n\ttype Plugin =\n\t\tOption[\"plugins\"] extends Array<infer P>\n\t\t\t? P extends {\n\t\t\t\t\tid: ID;\n\t\t\t\t}\n\t\t\t\t? P\n\t\t\t\t: never\n\t\t\t: never;\n\treturn {\n\t\tid: \"infer-server-plugin\",\n\t\t$InferServerPlugin: {} as Plugin,\n\t} satisfies BetterAuthClientPlugin;\n};\n"],"mappings":";AAKA,MAAa,0BAON;AAUN,QAAO;EACN,IAAI;EACJ,oBAAoB,EAAE;EACtB"}