Interface: TaprootAuthConfig
Defined in: server/auth/config.ts:117
Properties
account?
optional account?: {
accountLinking?: Pick<{
allowDifferentEmails?: boolean;
allowUnlinkingAll?: boolean;
disableImplicitLinking?: boolean;
enabled?: boolean;
requireLocalEmailVerified?: boolean;
trustedProviders?: | LiteralUnion<
| "line"
| "twitter"
| "facebook"
| "zoom"
| "linear"
| "github"
| "apple"
| "atlassian"
| "cloudflare"
| "cognito"
| "discord"
| "figma"
| "microsoft"
| "google"
| "huggingface"
| "slack"
| "spotify"
| "twitch"
| "dropbox"
| "kick"
| "linkedin"
| "gitlab"
| "tiktok"
| "reddit"
| "roblox"
| "salesforce"
| "vk"
| "notion"
| "kakao"
| "naver"
| "paybin"
| "paypal"
| "polar"
| "railway"
| "vercel"
| "wechat"
| "email-password", string>[]
| ((request?: Request) => Awaitable<LiteralUnion<
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ..., string>[]>);
updateUserInfoOnLink?: boolean;
}, "enabled">;
};Defined in: server/auth/config.ts:129
accountLinking?
optional accountLinking?: Pick<{
allowDifferentEmails?: boolean;
allowUnlinkingAll?: boolean;
disableImplicitLinking?: boolean;
enabled?: boolean;
requireLocalEmailVerified?: boolean;
trustedProviders?: | LiteralUnion<
| "line"
| "twitter"
| "facebook"
| "zoom"
| "linear"
| "github"
| "apple"
| "atlassian"
| "cloudflare"
| "cognito"
| "discord"
| "figma"
| "microsoft"
| "google"
| "huggingface"
| "slack"
| "spotify"
| "twitch"
| "dropbox"
| "kick"
| "linkedin"
| "gitlab"
| "tiktok"
| "reddit"
| "roblox"
| "salesforce"
| "vk"
| "notion"
| "kakao"
| "naver"
| "paybin"
| "paypal"
| "polar"
| "railway"
| "vercel"
| "wechat"
| "email-password", string>[]
| ((request?: Request) => Awaitable<LiteralUnion<
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ..., string>[]>);
updateUserInfoOnLink?: boolean;
}, "enabled">;admin?
optional admin?: AdminConfig;Defined in: server/auth/config.ts:151
authenticationPlugins?
optional authenticationPlugins?: readonly BetterAuthPlugin[];Defined in: server/auth/config.ts:136
Each supplied instance is declared by the application to provide login.
baseUrl
baseUrl: string;Defined in: server/auth/config.ts:120
bearer?
optional bearer?: BearerConfig;Defined in: server/auth/config.ts:153
db
db: PrismaClientLike<object>;Defined in: server/auth/config.ts:119
Structural boundary supports either generated Prisma client layout.
emailOtp?
optional emailOtp?: EmailOtpConfig;Defined in: server/auth/config.ts:142
emailPassword
emailPassword: EmailPasswordConfig;Defined in: server/auth/config.ts:140
enterpriseSso?
optional enterpriseSso?: EnterpriseSsoConfig;Defined in: server/auth/config.ts:147
jwt?
optional jwt?: JwtConfig;Defined in: server/auth/config.ts:152
magicLink?
optional magicLink?: MagicLinkConfig;Defined in: server/auth/config.ts:141
organization?
optional organization?: OrganizationConfig;Defined in: server/auth/config.ts:149
plugins?
optional plugins?: readonly BetterAuthPlugin[];Defined in: server/auth/config.ts:138
Utility plugins do not satisfy the login-method requirement.
secret
secret: string;Defined in: server/auth/config.ts:121
session?
optional session?: Pick<BetterAuthDBOptions<"session",
| "id"
| "createdAt"
| "updatedAt"
| "expiresAt"
| "userId"
| "token"
| "ipAddress"
| "userAgent"> & {
cookieCache?: {
enabled?: boolean;
maxAge?: number;
refreshCache?: | boolean
| {
updateAge?: number;
};
strategy?: "jwt" | "compact" | "jwe";
version?: | string
| ((session: {
createdAt: Date;
expiresAt: Date;
id: string;
ipAddress?: ... | ... | ...;
token: string;
updatedAt: Date;
userAgent?: ... | ... | ...;
userId: string;
} & Record<string, any>, user: {
createdAt: Date;
email: string;
emailVerified: boolean;
id: string;
image?: ... | ... | ...;
name: string;
updatedAt: Date;
} & Record<string, any>) => string)
| ((session: {
createdAt: Date;
expiresAt: Date;
id: string;
ipAddress?: ... | ... | ...;
token: string;
updatedAt: Date;
userAgent?: ... | ... | ...;
userId: string;
} & Record<string, any>, user: {
createdAt: Date;
email: string;
emailVerified: boolean;
id: string;
image?: ... | ... | ...;
name: string;
updatedAt: Date;
} & Record<string, any>) => Promise<string>);
};
deferSessionRefresh?: boolean;
disableSessionRefresh?: boolean;
expiresIn?: number;
freshAge?: number;
preserveSessionInDatabase?: boolean;
storeSessionInDatabase?: boolean;
updateAge?: number;
}, "expiresIn" | "disableSessionRefresh">;Defined in: server/auth/config.ts:125
socialProviders?
optional socialProviders?: Record<string, SocialProviderConfig>;Defined in: server/auth/config.ts:145
ssoProviders?
optional ssoProviders?: readonly SsoProvider[];Defined in: server/auth/config.ts:146
trustedOrigins?
optional trustedOrigins?:
| readonly string[]
| ((request?: Request) => Awaitable<(string | null | undefined)[]>);Defined in: server/auth/config.ts:122
username?
optional username?: UsernameConfig;Defined in: server/auth/config.ts:143