chore: simplify type (#7618)

This commit is contained in:
Alex Yang
2026-01-26 10:47:03 -08:00
committed by GitHub
parent b3cce69ad1
commit f0ff4534c9

View File

@@ -1,7 +1,6 @@
import type { BetterAuthOptions, BetterAuthPlugin } from "@better-auth/core";
import type { Session, User } from "@better-auth/core/db";
import type { InferFieldsFromOptions, InferFieldsFromPlugins } from "../db";
import type { Auth } from "./auth";
import type { StripEmptyObjects, UnionToIntersection } from "./helper";
export type AdditionalUserFieldsInput<Options extends BetterAuthOptions> =
@@ -20,28 +19,13 @@ export type AdditionalSessionFieldsOutput<Options extends BetterAuthOptions> =
InferFieldsFromPlugins<Options, "session", "output"> &
InferFieldsFromOptions<Options, "session", "output">;
export type InferUser<O extends BetterAuthOptions | Auth> = UnionToIntersection<
StripEmptyObjects<
User &
(O extends BetterAuthOptions
? AdditionalUserFieldsOutput<O>
: O extends Auth
? AdditionalUserFieldsOutput<O["options"]>
: {})
>
export type InferUser<O extends BetterAuthOptions> = UnionToIntersection<
StripEmptyObjects<User & AdditionalUserFieldsOutput<O>>
>;
export type InferSession<O extends BetterAuthOptions | Auth> =
UnionToIntersection<
StripEmptyObjects<
Session &
(O extends BetterAuthOptions
? AdditionalSessionFieldsOutput<O>
: O extends Auth
? AdditionalSessionFieldsOutput<O["options"]>
: {})
>
>;
export type InferSession<O extends BetterAuthOptions> = UnionToIntersection<
StripEmptyObjects<Session & AdditionalSessionFieldsOutput<O>>
>;
export type InferPluginTypes<O extends BetterAuthOptions> =
O["plugins"] extends Array<infer P>