UNPKG

@zpg6-test-pkgs/better-auth

Version:

The most comprehensive authentication library for TypeScript.

236 lines (229 loc) 9.96 kB
import { B as BetterAuthOptions, T as TelemetryContext, J as TelemetryEvent, L as FieldAttribute, M as Models } from './shared/better-auth.8Ira7TFx.cjs'; export { Q as Account, a as Adapter, b as AdapterInstance, Y as AdapterSchemaCreation, P as AdditionalSessionFieldsInput, v as AdditionalSessionFieldsOutput, z as AdditionalUserFieldsInput, w as AdditionalUserFieldsOutput, p as Auth, q as AuthContext, h as AuthPluginSchema, i as BetterAuthPlugin, F as FilterActions, _ as FilteredAPI, G as GenericEndpointContext, H as HookEndpointContext, u as InferAPI, I as InferOptionSchema, j as InferPluginErrorCodes, D as InferPluginTypes, s as InferSession, $ as InferSessionAPI, r as InferUser, a5 as InternalLogger, a4 as LogHandlerParams, a0 as LogLevel, a3 as Logger, R as RateLimit, Z as SecondaryStorage, S as Session, U as User, V as Verification, W as Where, N as WithJsDoc, O as betterAuth, a6 as createLogger, X as init, a1 as levels, a7 as logger, a2 as shouldPublishLog } from './shared/better-auth.8Ira7TFx.cjs'; export { A as AtomListener, B as BetterAuthClientPlugin, C as ClientOptions, b as InferActions, h as InferAdditionalFromClient, a as InferClientAPI, c as InferErrorCodes, e as InferPluginsFromClient, f as InferSessionFromClient, g as InferUserFromClient, I as IsSignal, S as Store } from './shared/better-auth.ueSiK_dg.cjs'; export { H as HIDE_METADATA } from './shared/better-auth.DEHJp1rk.cjs'; export { g as generateState, p as parseState } from './shared/better-auth.CdAUVk4Q.cjs'; export * from 'better-call'; export * from 'zod/v4'; export * from 'zod/v4/core'; import { b as LiteralUnion } from './shared/better-auth.DTtXpZYr.cjs'; export { A as Awaitable, D as DeepPartial, E as Expand, H as HasRequiredKeys, d as LiteralNumber, L as LiteralString, O as OmitId, e as PreserveJSDoc, a as Prettify, P as PrettifyDeep, c as Primitive, R as RequiredKeysOf, S as StripEmptyObjects, U as UnionToIntersection, W as WithoutEmpty } from './shared/better-auth.DTtXpZYr.cjs'; export { O as OAuth2Tokens, a as OAuth2UserInfo, b as OAuthProvider, P as ProviderOptions } from './shared/better-auth.DtuOgks-.cjs'; import 'kysely'; import 'zod'; import 'better-sqlite3'; import 'bun:sqlite'; import '@better-fetch/fetch'; import 'nanostores'; import 'jose'; declare function capitalizeFirstLetter(str: string): string; declare const generateId: (size?: number) => string; declare class BetterAuthError extends Error { constructor(message: string, cause?: string); } declare class MissingDependencyError extends BetterAuthError { constructor(pkgName: string); } declare function createTelemetry(options: BetterAuthOptions, context?: TelemetryContext): Promise<{ publish: (event: TelemetryEvent) => Promise<void>; }>; declare function getTelemetryAuthConfig(options: BetterAuthOptions, context?: TelemetryContext): { database: string | undefined; adapter: string | undefined; emailVerification: { sendVerificationEmail: boolean; sendOnSignUp: boolean; sendOnSignIn: boolean; autoSignInAfterVerification: boolean; expiresIn: number | undefined; onEmailVerification: boolean; afterEmailVerification: boolean; }; emailAndPassword: { enabled: boolean; disableSignUp: boolean; requireEmailVerification: boolean; maxPasswordLength: number | undefined; minPasswordLength: number | undefined; sendResetPassword: boolean; resetPasswordTokenExpiresIn: number | undefined; onPasswordReset: boolean; password: { hash: boolean; verify: boolean; }; autoSignIn: boolean; revokeSessionsOnPasswordReset: boolean; }; socialProviders: ({ id?: undefined; mapProfileToUser?: undefined; disableDefaultScope?: undefined; disableIdTokenSignIn?: undefined; disableImplicitSignUp?: undefined; disableSignUp?: undefined; getUserInfo?: undefined; overrideUserInfoOnSignIn?: undefined; prompt?: undefined; verifyIdToken?: undefined; scope?: undefined; refreshAccessToken?: undefined; } | { id: string; mapProfileToUser: boolean; disableDefaultScope: boolean; disableIdTokenSignIn: boolean; disableImplicitSignUp: boolean | undefined; disableSignUp: boolean | undefined; getUserInfo: boolean; overrideUserInfoOnSignIn: boolean; prompt: "select_account" | "consent" | "login" | "none" | "select_account consent" | undefined; verifyIdToken: boolean; scope: string[] | undefined; refreshAccessToken: boolean; })[]; plugins: string[] | undefined; user: { modelName: string | undefined; fields: Partial<Record<"name" | "emailVerified" | "email" | "image" | "createdAt" | "updatedAt", string>> | undefined; additionalFields: { [key: string]: FieldAttribute; } | undefined; changeEmail: { enabled: boolean | undefined; sendChangeEmailVerification: boolean; }; }; verification: { modelName: string | undefined; disableCleanup: boolean | undefined; fields: Partial<Record<"expiresAt" | "createdAt" | "updatedAt" | "value" | "identifier", string>> | undefined; }; session: { modelName: string | undefined; additionalFields: { [key: string]: FieldAttribute; } | undefined; cookieCache: { enabled: boolean | undefined; maxAge: number | undefined; }; disableSessionRefresh: boolean | undefined; expiresIn: number | undefined; fields: Partial<Record<"token" | "userId" | "expiresAt" | "createdAt" | "updatedAt" | "ipAddress" | "userAgent", string>> | undefined; freshAge: number | undefined; preserveSessionInDatabase: boolean | undefined; storeSessionInDatabase: boolean | undefined; updateAge: number | undefined; }; account: { modelName: string | undefined; fields: Partial<Record<"scope" | "accessToken" | "refreshToken" | "accessTokenExpiresAt" | "refreshTokenExpiresAt" | "idToken" | "userId" | "createdAt" | "updatedAt" | "providerId" | "accountId" | "password", string>> | undefined; encryptOAuthTokens: boolean | undefined; updateAccountOnSignIn: boolean | undefined; accountLinking: { enabled: boolean | undefined; trustedProviders: LiteralUnion<"apple" | "discord" | "facebook" | "figma" | "github" | "microsoft" | "google" | "huggingface" | "slack" | "spotify" | "twitch" | "twitter" | "dropbox" | "kick" | "linear" | "linkedin" | "gitlab" | "tiktok" | "reddit" | "roblox" | "vk" | "zoom" | "notion" | "line" | "paypal" | "email-password", string>[] | undefined; updateUserInfoOnLink: boolean | undefined; allowUnlinkingAll: boolean | undefined; }; }; hooks: { after: boolean; before: boolean; }; secondaryStorage: boolean; advanced: { cookiePrefix: boolean; cookies: boolean; crossSubDomainCookies: { domain: boolean; enabled: boolean | undefined; additionalCookies: string[] | undefined; }; database: { useNumberId: boolean; generateId: false | ((options: { model: LiteralUnion<Models, string>; size?: number; }) => string | false) | undefined; defaultFindManyLimit: number | undefined; }; useSecureCookies: boolean | undefined; ipAddress: { disableIpTracking: boolean | undefined; ipAddressHeaders: string[] | undefined; }; disableCSRFCheck: boolean | undefined; cookieAttributes: { expires: Date | undefined; secure: boolean | undefined; sameSite: "none" | "lax" | "Strict" | "Lax" | "None" | "strict" | undefined; domain: boolean; path: string | undefined; httpOnly: boolean | undefined; }; }; trustedOrigins: number | undefined; rateLimit: { storage: "database" | "memory" | "secondary-storage" | undefined; modelName: string | undefined; window: number | undefined; customStorage: boolean; enabled: boolean | undefined; max: number | undefined; }; onAPIError: { errorURL: string | undefined; onError: boolean; throw: boolean | undefined; }; logger: { disabled: boolean | undefined; level: "error" | "info" | "warn" | "debug" | undefined; log: boolean; }; databaseHooks: { user: { create: { after: boolean; before: boolean; }; update: { after: boolean; before: boolean; }; }; session: { create: { after: boolean; before: boolean; }; update: { after: boolean; before: boolean; }; }; account: { create: { after: boolean; before: boolean; }; update: { after: boolean; before: boolean; }; }; verification: { create: { after: boolean; before: boolean; }; update: { after: boolean; before: boolean; }; }; }; }; export { BetterAuthError, BetterAuthOptions, LiteralUnion, MissingDependencyError, Models, TelemetryEvent, capitalizeFirstLetter, createTelemetry, generateId, getTelemetryAuthConfig };