import { C as ImpossibleTravelResult, D as SecurityVerdict, E as SecurityOptions, O as StaleUserResult, S as CredentialStuffingResult, T as SecurityEventType, _ as LocationDataContext, a as DashOptionsInternal, b as sentinel, c as EndpointOptions, d as InfraPluginConnectionOptionsInternal, f as KvOptions, g as LocationData, h as KvRetryOptionsResolved, i as DashOptions, k as ThresholdConfig, l as InfraEndpointContext, m as KvRetryOptions, n as ApiOptions, o as DashOptionsResolved, p as KvOptionsResolved, r as ApiOptionsResolved, s as Endpoint, t as APIError, u as InfraPluginConnectionOptions, v as SentinelOptions, w as SecurityEvent, x as CompromisedPasswordResult, y as SentinelOptionsInternal } from "./types-Ddk4r5x9.mjs"; import { EMAIL_TEMPLATES, EmailConfig, EmailTemplateId, EmailTemplateVariables, SendBulkEmailsOptions, SendBulkEmailsResult, SendEmailOptions, SendEmailResult, createEmailSender, sendBulkEmails, sendEmail } from "./email.mjs"; import { Account, AuthContext, GenericEndpointContext, Session, User } from "better-auth"; import z from "zod"; import { DBFieldAttribute } from "better-auth/db"; import { Invitation, Member, Organization, Team, TeamMember } from "better-auth/plugins"; import "better-auth/types"; export type * from "better-call"; //#region src/pow.d.ts /** * Proof of Work Challenge System - Client Side * * Client-side PoW solver and encoding utilities. * Server-side challenge generation and verification moved to Infra API. */ interface PoWChallenge { /** Random nonce for this challenge */ nonce: string; /** Number of leading zero bits required */ difficulty: number; /** Timestamp when challenge was created */ timestamp: number; /** Challenge expiry time in seconds */ ttl: number; } interface PoWSolution { /** The nonce from the challenge */ nonce: string; /** The counter value that produces valid hash */ counter: number; } /** Default difficulty in bits (18 = ~500ms solve time) */ declare const DEFAULT_DIFFICULTY = 18; /** Challenge TTL in seconds */ declare const CHALLENGE_TTL = 60; /** * Solve a PoW challenge (browser-compatible) * This function is designed to run in a browser environment */ declare function solvePoWChallenge(challenge: PoWChallenge): Promise; /** * Decode a base64-encoded challenge string (browser-compatible) */ declare function decodePoWChallenge(encoded: string): PoWChallenge | null; /** * Encode a solution string (browser-compatible) */ declare function encodePoWSolution(solution: PoWSolution): string; /** * Verify a PoW solution locally (for testing purposes) */ declare function verifyPoWSolution(nonce: string, counter: number, difficulty: number): Promise; //#endregion //#region src/sms.d.ts /** * SMS sending module for @better-auth/infra * * This module provides SMS sending functionality for OTP verification codes * with template support similar to emails. */ /** * SMS template definitions with their required variables */ declare const SMS_TEMPLATES: { readonly "phone-verification": { readonly variables: { code: string; appName?: string; expirationMinutes?: string; }; }; readonly "two-factor": { readonly variables: { code: string; appName?: string; expirationMinutes?: string; }; }; readonly "sign-in-otp": { readonly variables: { code: string; appName?: string; expirationMinutes?: string; }; }; }; type SMSTemplateId = keyof typeof SMS_TEMPLATES; type SMSTemplateVariables = (typeof SMS_TEMPLATES)[T]["variables"]; interface SendSMSResult { success: boolean; messageId?: string; error?: string; } interface SMSConfig { apiKey?: string; apiUrl?: string; /** * Dash API HTTP client options. */ apiOptions?: { /** * Timeout for Dash SMS API HTTP requests (milliseconds). * @default 3000 */ timeout?: number; }; /** * Timeout for Dash SMS API HTTP requests (milliseconds). * @default 3000 * @deprecated Use `apiOptions.timeout` instead. */ apiTimeout?: number; } /** * Options for sending SMS */ interface SendSMSOptions { /** * Phone number to send to (E.164 format, e.g., +1234567890) */ to: string; /** * The OTP code to send */ code: string; /** * The SMS template to use (optional - defaults to generic verification message) */ template?: SMSTemplateId; /** * End-user IP for abuse limits when calling from Better Auth server-to-server. */ clientIp?: string; } /** * Create an SMS sender instance */ declare function createSMSSender(config?: SMSConfig): { send: (options: SendSMSOptions) => Promise; }; /** * Send an SMS with OTP code via Better Auth Infra. * * @example * ```ts * import { sendSMS } from "@better-auth/infra"; * * // For phone verification * await sendSMS({ * to: "+1234567890", * code: "123456", * template: "phone-verification", * }); * * // For two-factor authentication * await sendSMS({ * to: "+1234567890", * code: "123456", * template: "two-factor", * }); * * // Default (no template specified - uses generic message) * await sendSMS({ * to: "+1234567890", * code: "123456", * }); * ``` */ declare function sendSMS(options: SendSMSOptions, config?: SMSConfig): Promise; //#endregion //#region src/routes/auth/types.d.ts type DBField = { name: string; type?: DBFieldAttribute["type"]; required?: DBFieldAttribute["required"]; input?: DBFieldAttribute["input"]; unique?: DBFieldAttribute["unique"]; hasDefaultValue?: boolean; references?: DBFieldAttribute["references"]; returned?: DBFieldAttribute["returned"]; bigInt?: DBFieldAttribute["bigint"]; }; interface DashConfigResponse { version: string | null; socialProviders: string[]; emailAndPassword: unknown; plugins: Array<{ id: string; schema: unknown; version?: unknown; options: unknown; }>; organization: { sendInvitationEmailEnabled: boolean; additionalFields: DBField[]; }; user: { fields: DBField[]; additionalFields: DBField[]; deleteUserEnabled: boolean; modelName?: string; }; baseURL: unknown; basePath: string; emailVerification: { sendVerificationEmailEnabled: boolean; }; insights: Record; } interface DashValidateResponse { valid: boolean; } //#endregion //#region src/routes/common-types.d.ts /** * Shared JSON body shapes used by multiple `/dash/*` handlers. * * Naming: * - `Dash…Response` — full HTTP response body * - `Dash…Item` — array element or nested row * - `Dash…Summary` — minimal embedded shape where applicable */ interface DashSuccessResponse { success: boolean; } /** Endpoints that may omit `success` in the body */ interface DashMaybeSuccessResponse { success?: boolean; } /** Single `id` field (e.g. add-member, create-team) */ interface DashIdRow { id: string; } //#endregion //#region src/routes/directory-sync/types.d.ts /** * SCIM authorization scope supported by the managed directory workflow. * * Redeclared rather than imported from `@better-auth/scim`: this type is part * of the root package's public surface, and `@better-auth/scim` is an * optional peer the root entry must never reference (see * smoke/directory-sync-root-types). */ type DashSCIMScope = "scim.users.read" | "scim.users.write" | "scim.groups.read" | "scim.groups.write"; /** Public lifecycle state of a managed SCIM credential. */ type DashSCIMManagedCredentialStatus = "active" | "revoked" | "expired" | "decommissioned"; /** Public managed-catalog event emitted by the SCIM plugin. */ type DashSCIMManagedConnectionEventType = "connection.created" | "credential.issued" | "credential.rotated" | "credential.revoked" | "connection.decommissioning" | "connection.decommissioned"; /** Lifecycle state for one Infrastructure-owned directory-sync alias. */ type DirectorySyncConnectionStatus = "active" | "decommissioning" | "decommissioned"; type DirectorySyncMode = "legacy" | "managed" | "unavailable"; /** * Structural stand-in for the SCIM plugin instance. * Avoids `import("@better-auth/scim")` on the public type surface so consumers * without that package can still typecheck the root entry. */ type SCIMPlugin = { id?: string; options?: { providerOwnership?: { enabled?: boolean; }; managedConnections?: unknown; [key: string]: unknown; }; endpoints: Record; }; /** Public credential metadata. Raw bearer tokens are never included here. */ interface DashDirectoryCredential { credentialId: string; status: DashSCIMManagedCredentialStatus; scopes: readonly DashSCIMScope[]; expiresAt: string; createdAt: string; createdBy: string; lastUsedAt: string | null; revokedAt: string | null; revokedBy: string | null; } /** One bounded framework-managed SCIM audit event. */ interface DashDirectoryEvent { sequence: number; type: DashSCIMManagedConnectionEventType; actorId: string; credentialId: string | null; createdAt: string; } /** Atomic SSO provider and verified identity source paired to a directory. */ type DashDirectorySyncSSOPairing = { ssoProviderId: string; protocol: "oidc"; externalIdSource: { kind: "subject"; } | { kind: "verifiedIdTokenClaim"; name: string; }; } | { ssoProviderId: string; protocol: "saml"; externalIdSource: { kind: "nameId"; } | { kind: "attribute"; name: string; }; }; /** Infra alias plus the corresponding framework-managed SCIM state. */ interface DirectorySyncConnection { connectionId: string | null; organizationId: string; providerId: string; provisioningDomainId: string; status: DirectorySyncConnectionStatus; scimEndpoint: string; credentials: DashDirectoryCredential[]; createdAt: string; updatedAt: string; pairing: DashDirectorySyncSSOPairing | null; pairingEnforced: boolean; unpairedAt: string | null; unpairedBy: string | null; decommissionedAt: string | null; } type DashDirectoryItem = DirectorySyncConnection; /** Create returns a raw bearer token exactly once. */ interface DashDirectoryCreateResponse extends DirectorySyncConnection { connectionId: string; credential: DashDirectoryCredential; scimToken: string; } /** Rotation returns only the newly issued raw bearer token. */ interface DashDirectoryRotateCredentialResponse { connectionId: string; credential: DashDirectoryCredential; scimToken: string; scimEndpoint: string; } interface DashDirectoryEventsResponse { events: DashDirectoryEvent[]; total: number; limit: number; offset: number; } /** Legacy (pre-1.7) directory sync connection listed for an organization. */ interface LegacyDashDirectoryItem { organizationId: string; providerId: string; scimEndpoint: string; } /** Legacy create returns a one-time SCIM token. */ interface LegacyDashDirectoryCreateResponse { organizationId: string; providerId: string; scimEndpoint: string; scimToken: string; } interface DashDirectoryDeleteResponse { success: boolean; } interface DashDirectoryRegenerateTokenResponse { success: boolean; scimToken: string; scimEndpoint: string; } //#endregion //#region src/events/constants.d.ts declare const EVENT_TYPES: { readonly USER_CREATED: "user_created"; readonly USER_SIGNED_IN: "user_signed_in"; readonly USER_SIGNED_OUT: "user_signed_out"; readonly USER_SIGN_IN_FAILED: "user_sign_in_failed"; readonly PASSWORD_RESET_REQUESTED: "password_reset_requested"; readonly PASSWORD_RESET_COMPLETED: "password_reset_completed"; readonly PASSWORD_CHANGED: "password_changed"; readonly EMAIL_VERIFICATION_SENT: "email_verification_sent"; readonly EMAIL_VERIFIED: "email_verified"; readonly EMAIL_CHANGED: "email_changed"; readonly PROFILE_UPDATED: "profile_updated"; readonly PROFILE_IMAGE_UPDATED: "profile_image_updated"; readonly SESSION_CREATED: "session_created"; readonly SESSION_REVOKED: "session_revoked"; readonly ALL_SESSIONS_REVOKED: "all_sessions_revoked"; readonly TWO_FACTOR_ENABLED: "two_factor_enabled"; readonly TWO_FACTOR_DISABLED: "two_factor_disabled"; readonly TWO_FACTOR_VERIFIED: "two_factor_verified"; readonly ACCOUNT_LINKED: "account_linked"; readonly ACCOUNT_UNLINKED: "account_unlinked"; readonly USER_BANNED: "user_banned"; readonly USER_UNBANNED: "user_unbanned"; readonly USER_DELETED: "user_deleted"; readonly USER_IMPERSONATED: "user_impersonated"; readonly USER_IMPERSONATED_STOPPED: "user_impersonated_stopped"; }; declare const ORGANIZATION_EVENT_TYPES: { readonly ORGANIZATION_CREATED: "organization_created"; readonly ORGANIZATION_UPDATED: "organization_updated"; readonly ORGANIZATION_MEMBER_ADDED: "organization_member_added"; readonly ORGANIZATION_MEMBER_REMOVED: "organization_member_removed"; readonly ORGANIZATION_MEMBER_ROLE_UPDATED: "organization_member_role_updated"; readonly ORGANIZATION_MEMBER_INVITED: "organization_member_invited"; readonly ORGANIZATION_MEMBER_INVITE_CANCELED: "organization_member_invite_canceled"; readonly ORGANIZATION_MEMBER_INVITE_ACCEPTED: "organization_member_invite_accepted"; readonly ORGANIZATION_MEMBER_INVITE_REJECTED: "organization_member_invite_rejected"; readonly ORGANIZATION_TEAM_CREATED: "organization_team_created"; readonly ORGANIZATION_TEAM_UPDATED: "organization_team_updated"; readonly ORGANIZATION_TEAM_DELETED: "organization_team_deleted"; readonly ORGANIZATION_TEAM_MEMBER_ADDED: "organization_team_member_added"; readonly ORGANIZATION_TEAM_MEMBER_REMOVED: "organization_team_member_removed"; }; /** All audit event type string constants (user + organization). */ declare const USER_EVENT_TYPES: { readonly ORGANIZATION_CREATED: "organization_created"; readonly ORGANIZATION_UPDATED: "organization_updated"; readonly ORGANIZATION_MEMBER_ADDED: "organization_member_added"; readonly ORGANIZATION_MEMBER_REMOVED: "organization_member_removed"; readonly ORGANIZATION_MEMBER_ROLE_UPDATED: "organization_member_role_updated"; readonly ORGANIZATION_MEMBER_INVITED: "organization_member_invited"; readonly ORGANIZATION_MEMBER_INVITE_CANCELED: "organization_member_invite_canceled"; readonly ORGANIZATION_MEMBER_INVITE_ACCEPTED: "organization_member_invite_accepted"; readonly ORGANIZATION_MEMBER_INVITE_REJECTED: "organization_member_invite_rejected"; readonly ORGANIZATION_TEAM_CREATED: "organization_team_created"; readonly ORGANIZATION_TEAM_UPDATED: "organization_team_updated"; readonly ORGANIZATION_TEAM_DELETED: "organization_team_deleted"; readonly ORGANIZATION_TEAM_MEMBER_ADDED: "organization_team_member_added"; readonly ORGANIZATION_TEAM_MEMBER_REMOVED: "organization_team_member_removed"; readonly USER_CREATED: "user_created"; readonly USER_SIGNED_IN: "user_signed_in"; readonly USER_SIGNED_OUT: "user_signed_out"; readonly USER_SIGN_IN_FAILED: "user_sign_in_failed"; readonly PASSWORD_RESET_REQUESTED: "password_reset_requested"; readonly PASSWORD_RESET_COMPLETED: "password_reset_completed"; readonly PASSWORD_CHANGED: "password_changed"; readonly EMAIL_VERIFICATION_SENT: "email_verification_sent"; readonly EMAIL_VERIFIED: "email_verified"; readonly EMAIL_CHANGED: "email_changed"; readonly PROFILE_UPDATED: "profile_updated"; readonly PROFILE_IMAGE_UPDATED: "profile_image_updated"; readonly SESSION_CREATED: "session_created"; readonly SESSION_REVOKED: "session_revoked"; readonly ALL_SESSIONS_REVOKED: "all_sessions_revoked"; readonly TWO_FACTOR_ENABLED: "two_factor_enabled"; readonly TWO_FACTOR_DISABLED: "two_factor_disabled"; readonly TWO_FACTOR_VERIFIED: "two_factor_verified"; readonly ACCOUNT_LINKED: "account_linked"; readonly ACCOUNT_UNLINKED: "account_unlinked"; readonly USER_BANNED: "user_banned"; readonly USER_UNBANNED: "user_unbanned"; readonly USER_DELETED: "user_deleted"; readonly USER_IMPERSONATED: "user_impersonated"; readonly USER_IMPERSONATED_STOPPED: "user_impersonated_stopped"; }; //#endregion //#region src/routes/events/types.d.ts /** * A single audit log event for the user */ interface UserEvent { /** The type of event (e.g., "user_signed_in", "password_changed") */ eventType: UserEventType | string; /** Additional data about the event */ eventData: Record; /** Unique key for the event (typically the user ID) */ eventKey: string; /** Project/organization ID */ projectId: string; /** When the event occurred */ createdAt: Date; /** When the event was last updated */ updatedAt: Date; /** How old the event is in minutes (if available) */ ageInMinutes?: number; /** Location information for the event */ location?: EventLocation; } /** * Response from the user events endpoint */ interface UserEventsResponse { /** Array of audit log events */ events: UserEvent[]; /** Total number of events matching the query */ total: number; /** Number of events returned in this response */ limit: number; /** Number of events skipped */ offset: number; } /** * Response fromthe user event types endpoint */ interface EventTypesResponse { user: typeof EVENT_TYPES; organization: typeof ORGANIZATION_EVENT_TYPES; all: typeof USER_EVENT_TYPES; } //#endregion //#region src/routes/events/index.d.ts type UserEventType = (typeof USER_EVENT_TYPES)[keyof typeof USER_EVENT_TYPES]; /** Location information associated with an event */ type EventLocation = LocationData; //#endregion //#region src/routes/execute-adapter/types.d.ts interface DashExecuteAdapterCountResponse { count: number; } interface DashExecuteAdapterFindManyResponse> { result: T[]; } interface DashExecuteAdapterFindOneResponse> { result: T | null; } interface DashExecuteAdapterMutationResponse> { result: T; } type DashExecuteAdapterResponse = DashExecuteAdapterFindOneResponse | DashExecuteAdapterFindManyResponse | DashExecuteAdapterMutationResponse | DashExecuteAdapterCountResponse; //#endregion //#region src/routes/invitations/types.d.ts interface DashCompleteInvitationResponse { success?: boolean; redirectUrl?: string; message?: string; error?: string; user?: unknown; } //#endregion //#region src/routes/organizations/types.d.ts declare const ORGANIZATION_USER_PREVIEW_SELECT: readonly ["id", "name", "email", "image"]; type OrganizationUserPreview = Pick; type DashOrganizationUpdateResponse = Organization; /** Mirrors joined `user` row fields exposed on dash org APIs. Omitted when the user has no email (e.g. phone-only). */ type DashOrganizationMemberUser = { id: string; name: string; email?: string; image: string | null; }; type DashOrganizationDetailResponse = Organization & { memberCount: number; members?: DashOrganizationMemberUser[]; }; interface DashOrganizationListResponse { organizations: DashOrganizationDetailResponse[]; total: number; offset: number; limit: number; } type DashOrganizationMember = Member & { user?: DashOrganizationMemberUser | null; }; type DashOrganizationMemberListItem = Member & { user: DashOrganizationMemberUser; invitedBy?: DashOrganizationMemberUser | null; }; type DashOrganizationMemberListResponse = DashOrganizationMemberListItem[]; interface DashCreateOrganizationBody { name: string; slug: string; logo?: string; defaultTeamName?: string; } interface DashCreateOrganizationResponse extends Organization { members: DashOrganizationMember[]; } type DashOrganizationInvitationItem = Invitation & { user: DashOrganizationMemberUser | null; }; type DashOrganizationInvitationListResponse = DashOrganizationInvitationItem[]; type DashInviteMemberResponse = Invitation; interface DashOrganizationOptionsResponse { teamsEnabled: boolean; } type DashExportOrganizationsResponse = string; type DashOrganizationAddMemberResponse = Member; type DashOrganizationUpdateMemberRoleResponse = Pick; interface DashCheckUserByEmailResponse { exists: boolean; user: DashOrganizationMemberUser | null; isAlreadyMember: boolean; } type DashOrganizationInvitationStatusItem = Pick; interface DashOrganizationDeleteManyResponse { success: boolean; deletedOrgIds: string[]; skippedOrgIds: string[]; } type DashTeam = Pick; type DashOrganizationTeamItem = Team & { memberCount: number; }; type DashOrganizationTeamListResponse = DashOrganizationTeamItem[]; type DashCreateTeamResponse = Team; type DashUpdateTeamResponse = DashCreateTeamResponse; type DashTeamMember = TeamMember; type DashAddTeamMemberResponse = DashTeamMember; type DashTeamMemberListResponse = Array; //#endregion //#region src/routes/sessions/types.d.ts interface DashSessionRevokeManyResponse { success: boolean; revokedCount: number; } //#endregion //#region src/routes/sso/types.d.ts /** Minimal provider fields returned on create/update and nested in responses. */ interface DashSsoProviderSummary { id: string; providerId: string; domain: string; } /** Full provider row from list and related endpoints. */ interface DashSsoProviderItem extends DashSsoProviderSummary { organizationId: string; issuer?: string; userId?: string | null; createdAt?: string | Date; updatedAt?: string | Date; oidcConfig?: unknown; samlConfig?: unknown; domainVerified?: boolean; domainVerificationToken?: string | null; } interface DashSsoCreateProviderResponse { success: boolean; provider: DashSsoProviderSummary; domainVerification?: { txtRecordName: string; verificationToken: string | null; }; } interface DashSsoDeleteResponse { success: boolean; message?: string; } interface DashSsoUpdateProviderResponse { success: boolean; provider: DashSsoProviderSummary; } interface DashSsoVerificationTokenResponse { success: boolean; providerId: string; domain: string; verificationToken: string; txtRecordName: string; existingToken?: boolean; } interface DashSsoMarkDomainVerifiedResponse { success: boolean; domainVerified: boolean; message: string; } interface DashSsoVerifyDomainResponse { verified: boolean; message?: string; } //#endregion //#region src/routes/two-factor/types.d.ts interface DashTwoFactorEnableResponse { success: boolean; totpURI: string; secret: string; backupCodes: string[]; } interface DashTwoFactorTotpViewResponse { totpURI: string; } interface DashTwoFactorBackupCodesResponse { backupCodes: string[]; } type DashTwoFactorStatus = "disabled" | "pending" | "enabled"; //#endregion //#region src/routes/users/types.d.ts type DashUser = User & { banned?: boolean; banReason?: string | null; banExpires?: number | null; }; interface DashUserListResponse { users: DashUser[]; total: number; offset: number; limit: number; onlineUsers: number; activityTrackingEnabled: boolean; } type DashUserDetailsResponse = DashUser & { account?: Account[]; session?: Omit[]; lastActiveAt?: string | Date | null; city?: string | null; country?: string | null; countryCode?: string | null; twoFactorStatus?: DashTwoFactorStatus; }; type DashUserOrganization = Pick & { role: string; teams: Team[]; }; interface DashUserOrganizationsResponse { organizations: DashUserOrganization[]; } type DashCreateUserResponse = DashUser; type DashUpdateUserResponse = DashUser; /** One period of sign-up stats; null when the underlying query failed. */ interface DashUserStatsSignUpPeriod { signUps: number | null; /** Omitted when current or previous-period query failed (avoids misleading deltas). */ percentage: number | null; } /** One period of active-user stats; null when the underlying query failed. */ interface DashUserStatsActivePeriod { active: number | null; percentage: number | null; } interface DashUserStatsResponse { daily: DashUserStatsSignUpPeriod; weekly: DashUserStatsSignUpPeriod; monthly: DashUserStatsSignUpPeriod; total: number | null; activeUsers: { daily: DashUserStatsActivePeriod; weekly: DashUserStatsActivePeriod; monthly: DashUserStatsActivePeriod; }; /** Set when any stat query failed; some fields may be null. */ degraded?: boolean; } interface DashUserGraphPoint { date: string | Date; label: string; totalUsers: number; newUsers: number; activeUsers: number; } interface DashUserGraphDataResponse { period: string; data: DashUserGraphPoint[]; } interface DashUserRetention { n: number; label: string; cohortStart: string; cohortEnd: string; activeStart: string; activeEnd: string; cohortSize: number; retained: number; retentionRate: number; } interface DashUserRetentionDataResponse { period: string; data: DashUserRetention[]; } interface DashBanManyResponse { success: boolean; bannedUserIds: string[]; skippedUserIds: string[]; } interface DashDeleteManyUsersResponse { success: boolean; deletedUserIds: string[]; skippedUserIds: string[]; } interface DashSendManyVerificationEmailsResponse { success: boolean; sentEmailUserIds: string[]; skippedEmailUserIds: string[]; } interface DashCheckUserExistsResponse { exists: boolean; userId: string | null; } //#endregion //#region src/validation/email.d.ts /** * Normalize an email address for comparison/deduplication * - Lowercase the entire email * - Remove dots from Gmail-like providers (they ignore dots) * - Remove plus addressing (user+tag@domain → user@domain) * - Normalize googlemail.com to gmail.com * * @param email - Raw email to normalize * @param context - Auth context */ declare function normalizeEmail(email: string, context: AuthContext): string; //#endregion //#region src/index.d.ts declare const dash: (options?: O) => { id: "dash"; options: DashOptionsResolved; version: string; init(ctx: import("better-auth").AuthContext): { options: { databaseHooks: { user: { create: { after(user: { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; update: { after(user: { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; delete: { after(user: { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; }; session: { create: { before(session: { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise<{ data: { loginMethod: string | null; }; } | undefined>; after(session: { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; delete: { after(session: { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; }; account: { create: { after(account: { id: string; createdAt: Date; updatedAt: Date; providerId: string; accountId: string; userId: string; accessToken?: string | null | undefined; refreshToken?: string | null | undefined; idToken?: string | null | undefined; accessTokenExpiresAt?: Date | null | undefined; refreshTokenExpiresAt?: Date | null | undefined; scope?: string | null | undefined; password?: string | null | undefined; }, _ctx: GenericEndpointContext | null): Promise; }; update: { after(account: { id: string; createdAt: Date; updatedAt: Date; providerId: string; accountId: string; userId: string; accessToken?: string | null | undefined; refreshToken?: string | null | undefined; idToken?: string | null | undefined; accessTokenExpiresAt?: Date | null | undefined; refreshTokenExpiresAt?: Date | null | undefined; scope?: string | null | undefined; password?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; delete: { after(account: { id: string; createdAt: Date; updatedAt: Date; providerId: string; accountId: string; userId: string; accessToken?: string | null | undefined; refreshToken?: string | null | undefined; idToken?: string | null | undefined; accessTokenExpiresAt?: Date | null | undefined; refreshTokenExpiresAt?: Date | null | undefined; scope?: string | null | undefined; password?: string | null | undefined; } & Record, _ctx: GenericEndpointContext | null): Promise; }; }; verification: { create: { after(verification: { id: string; createdAt: Date; updatedAt: Date; value: string; expiresAt: Date; identifier: string; } & Record, _ctx: GenericEndpointContext | null): Promise; }; delete: { after(verification: { id: string; createdAt: Date; updatedAt: Date; value: string; expiresAt: Date; identifier: string; } & Record, ctx: GenericEndpointContext | null): Promise; }; }; }; session: { storeSessionInDatabase: boolean; }; }; }; hooks: { before: { matcher: (ctx: import("better-auth").HookEndpointContext) => boolean; handler: (inputContext: import("better-call").MiddlewareInputContext) => Promise; }[]; after: { matcher: (ctx: import("better-auth").HookEndpointContext) => boolean; handler: (inputContext: import("better-call").MiddlewareInputContext) => Promise; }[]; }; endpoints: { getDashConfig: import("better-call").StrictEndpoint<"/dash/config", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashConfigResponse>; getDashValidate: import("better-call").StrictEndpoint<"/dash/validate", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: import("jose").JWTPayload; }>)[]; }, DashValidateResponse>; getDashUsers: import("better-call").StrictEndpoint<"/dash/list-users", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; sortBy: import("zod").ZodOptional; sortOrder: import("zod").ZodOptional>; where: import("zod").ZodOptional>>; countWhere: import("zod").ZodOptional>>; }, import("zod/v4/core").$strip>>; }, DashUserListResponse>; exportDashUsers: import("better-call").StrictEndpoint<"/dash/export-users", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; sortBy: import("zod").ZodOptional; sortOrder: import("zod").ZodOptional>; where: import("zod").ZodOptional>>; countWhere: import("zod").ZodOptional>>; }, import("zod/v4/core").$strip>>; }, Response>; createDashUser: import("better-call").StrictEndpoint<"/dash/create-user", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId?: string | undefined; organizationRole?: string | undefined; }; }>)[]; body: import("zod").ZodObject<{ name: import("zod").ZodString; email: import("zod").ZodEmail; image: import("zod").ZodOptional; password: import("zod").ZodOptional; generatePassword: import("zod").ZodOptional; emailVerified: import("zod").ZodOptional; sendVerificationEmail: import("zod").ZodOptional; sendOrganizationInvite: import("zod").ZodOptional; organizationRole: import("zod").ZodOptional; organizationId: import("zod").ZodOptional; }, import("zod/v4/core").$catchall>; }, { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; } & { banned?: boolean; banReason?: string | null; banExpires?: number | null; }>; deleteDashUser: import("better-call").StrictEndpoint<"/dash/delete-user", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, void>; deleteManyDashUsers: import("better-call").StrictEndpoint<"/dash/delete-many-users", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userIds: string[]; }; }>)[]; }, DashDeleteManyUsersResponse>; listDashOrganizations: import("better-call").StrictEndpoint<"/dash/list-organizations", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; sortBy: import("zod").ZodOptional>; sortOrder: import("zod").ZodOptional>; filterMembers: import("zod").ZodOptional>; search: import("zod").ZodOptional; startDate: import("zod").ZodOptional>]>>; endDate: import("zod").ZodOptional>]>>; }, import("zod/v4/core").$strip>>; }, DashOrganizationListResponse>; exportDashOrganizations: import("better-call").StrictEndpoint<"/dash/export-organizations", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; sortBy: import("zod").ZodOptional; sortOrder: import("zod").ZodOptional>; where: import("zod").ZodOptional>>; }, import("zod/v4/core").$strip>>; }, Response>; getDashOrganization: import("better-call").StrictEndpoint<"/dash/organization/:id", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashOrganizationDetailResponse>; listDashOrganizationMembers: import("better-call").StrictEndpoint<"/dash/organization/:id/members", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashOrganizationMemberListResponse>; listDashOrganizationInvitations: import("better-call").StrictEndpoint<"/dash/organization/:id/invitations", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashOrganizationInvitationListResponse>; listDashOrganizationTeams: import("better-call").StrictEndpoint<"/dash/organization/:id/teams", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashOrganizationTeamListResponse>; listDashOrganizationSsoProviders: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-providers", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; }, DashSsoProviderItem[]>; createDashSsoProvider: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-provider/create", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; domain: import("zod").ZodString; protocol: import("zod").ZodEnum<{ SAML: "SAML"; OIDC: "OIDC"; }>; userId: import("zod").ZodString; samlConfig: import("zod").ZodOptional; metadataUrl: import("zod").ZodOptional; }, import("zod/v4/core").$strip>>; entryPoint: import("zod").ZodOptional; cert: import("zod").ZodOptional; entityId: import("zod").ZodOptional; wantAssertionsSigned: import("zod").ZodOptional; mapping: import("zod").ZodOptional; email: import("zod").ZodOptional; emailVerified: import("zod").ZodOptional; name: import("zod").ZodOptional; firstName: import("zod").ZodOptional; lastName: import("zod").ZodOptional; extraFields: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>; }, import("zod/v4/core").$strip>>; oidcConfig: import("zod").ZodOptional; discoveryUrl: import("zod").ZodOptional; issuer: import("zod").ZodOptional; discoveryEndpoint: import("zod").ZodOptional; authorizationEndpoint: import("zod").ZodOptional; tokenEndpoint: import("zod").ZodOptional; jwksEndpoint: import("zod").ZodOptional; userInfoEndpoint: import("zod").ZodOptional; tokenEndpointAuthentication: import("zod").ZodOptional>; mapping: import("zod").ZodOptional; email: import("zod").ZodOptional; emailVerified: import("zod").ZodOptional; name: import("zod").ZodOptional; image: import("zod").ZodOptional; extraFields: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>; }, import("zod/v4/core").$strip>>; }, import("zod/v4/core").$strip>; }, DashSsoCreateProviderResponse>; updateDashSsoProvider: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-provider/update", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; domain: import("zod").ZodString; protocol: import("zod").ZodEnum<{ SAML: "SAML"; OIDC: "OIDC"; }>; samlConfig: import("zod").ZodOptional; metadataUrl: import("zod").ZodOptional; }, import("zod/v4/core").$strip>>; entryPoint: import("zod").ZodOptional; cert: import("zod").ZodOptional; entityId: import("zod").ZodOptional; wantAssertionsSigned: import("zod").ZodOptional; mapping: import("zod").ZodOptional; email: import("zod").ZodOptional; emailVerified: import("zod").ZodOptional; name: import("zod").ZodOptional; firstName: import("zod").ZodOptional; lastName: import("zod").ZodOptional; extraFields: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>; }, import("zod/v4/core").$strip>>; oidcConfig: import("zod").ZodOptional; discoveryUrl: import("zod").ZodOptional; issuer: import("zod").ZodOptional; discoveryEndpoint: import("zod").ZodOptional; authorizationEndpoint: import("zod").ZodOptional; tokenEndpoint: import("zod").ZodOptional; jwksEndpoint: import("zod").ZodOptional; userInfoEndpoint: import("zod").ZodOptional; tokenEndpointAuthentication: import("zod").ZodOptional>; mapping: import("zod").ZodOptional; email: import("zod").ZodOptional; emailVerified: import("zod").ZodOptional; name: import("zod").ZodOptional; image: import("zod").ZodOptional; extraFields: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>; }, import("zod/v4/core").$strip>>; }, import("zod/v4/core").$strip>; }, DashSsoUpdateProviderResponse>; requestDashSsoVerificationToken: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-provider/request-verification-token", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSsoVerificationTokenResponse>; verifyDashSsoProviderDomain: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-provider/verify-domain", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSsoVerifyDomainResponse>; deleteDashSsoProvider: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-provider/delete", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSsoDeleteResponse>; markDashSsoProviderDomainVerified: import("better-call").StrictEndpoint<"/dash/organization/:id/sso-provider/mark-domain-verified", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; verified: import("zod").ZodLiteral; }, import("zod/v4/core").$strip>; }, DashSsoMarkDomainVerifiedResponse>; listDashTeamMembers: import("better-call").StrictEndpoint<"/dash/organization/:orgId/teams/:teamId/members", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashTeamMemberListResponse>; createDashOrganization: import("better-call").StrictEndpoint<"/dash/organization/create", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; skipDefaultTeam: boolean; }; }>)[]; body: import("zod").ZodObject<{ name: import("zod").ZodString; slug: import("zod").ZodString; logo: import("zod").ZodOptional; defaultTeamName: import("zod").ZodOptional; }, import("zod/v4/core").$catchall>; }, DashCreateOrganizationResponse>; deleteDashOrganization: import("better-call").StrictEndpoint<"/dash/organization/delete", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ organizationId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; deleteManyDashOrganizations: import("better-call").StrictEndpoint<"/dash/organization/delete-many", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationIds: string[]; }; }>)[]; }, DashOrganizationDeleteManyResponse>; getDashOrganizationOptions: import("better-call").StrictEndpoint<"/dash/organization/options", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashOrganizationOptionsResponse>; getDashUser: import("better-call").StrictEndpoint<"/dash/user", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; sessionOnly?: boolean | undefined; accountOnly?: boolean | undefined; }; }>)[]; query: import("zod").ZodOptional>]>>; }, import("zod/v4/core").$strip>>; }, DashUserDetailsResponse>; getDashUserOrganizations: import("better-call").StrictEndpoint<"/dash/user-organizations", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashUserOrganizationsResponse>; updateDashUser: import("better-call").StrictEndpoint<"/dash/update-user", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; body: import("zod").ZodObject<{ name: import("zod").ZodOptional>; email: import("zod").ZodOptional; image: import("zod").ZodOptional>; emailVerified: import("zod").ZodOptional; }, import("zod/v4/core").$catchall>; }, { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; } & { banned?: boolean; banReason?: string | null; banExpires?: number | null; }>; setDashPassword: import("better-call").StrictEndpoint<"/dash/set-password", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; body: import("zod").ZodObject<{ password: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; unlinkDashAccount: import("better-call").StrictEndpoint<"/dash/unlink-account", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; accountId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; dashRevokeSession: import("better-call").StrictEndpoint<"/dash/sessions/revoke", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; metadata: { allowedMediaTypes: string[]; }; }, DashSuccessResponse>; dashRevokeAllSessions: import("better-call").StrictEndpoint<"/dash/sessions/revoke-all", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; body: import("zod").ZodObject<{ userId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; dashRevokeManySessions: import("better-call").StrictEndpoint<"/dash/sessions/revoke-many", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userIds: string[]; }; }>)[]; }, DashSessionRevokeManyResponse>; dashImpersonateUser: import("better-call").StrictEndpoint<"/dash/impersonate-user", { method: "GET"; query: import("zod").ZodObject<{ impersonation_token: import("zod").ZodString; }, import("zod/v4/core").$strip>; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; redirectUrl: string; impersonatedBy?: string | undefined; }; }>)[]; }, never>; updateDashOrganization: import("better-call").StrictEndpoint<"/dash/organization/update", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ logo: import("zod").ZodOptional, import("zod").ZodTransform>, import("zod").ZodLiteral<"">]>>; name: import("zod").ZodOptional; slug: import("zod").ZodOptional; metadata: import("zod").ZodOptional; }, import("zod/v4/core").$catchall>; }, { id: string; name: string; slug: string; createdAt: Date; logo?: string | null | undefined; metadata?: any; }>; createDashTeam: import("better-call").StrictEndpoint<"/dash/organization/create-team", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ name: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, { id: string; name: string; organizationId: string; createdAt: Date; updatedAt?: Date | undefined; }>; updateDashTeam: import("better-call").StrictEndpoint<"/dash/organization/update-team", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ teamId: import("zod").ZodString; name: import("zod").ZodOptional; }, import("zod/v4/core").$strip>; }, { id: string; name: string; organizationId: string; createdAt: Date; updatedAt?: Date | undefined; }>; deleteDashTeam: import("better-call").StrictEndpoint<"/dash/organization/delete-team", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ teamId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; addDashTeamMember: import("better-call").StrictEndpoint<"/dash/organization/add-team-member", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ teamId: import("zod").ZodString; userId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, { id: string; teamId: string; userId: string; createdAt: Date; }>; removeDashTeamMember: import("better-call").StrictEndpoint<"/dash/organization/remove-team-member", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ teamId: import("zod").ZodString; userId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; addDashMember: import("better-call").StrictEndpoint<"/dash/organization/add-member", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ userId: import("zod").ZodString; role: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, { id: string; organizationId: string; userId: string; role: string; createdAt: Date; }>; removeDashMember: import("better-call").StrictEndpoint<"/dash/organization/remove-member", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ memberId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; updateDashMemberRole: import("better-call").StrictEndpoint<"/dash/organization/update-member-role", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ memberId: import("zod").ZodString; role: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashOrganizationUpdateMemberRoleResponse>; inviteDashMember: import("better-call").StrictEndpoint<"/dash/organization/invite-member", { method: "POST"; body: import("zod").ZodObject<{ email: import("zod").ZodString; role: import("zod").ZodString; invitedBy: import("zod").ZodString; }, import("zod/v4/core").$strip>; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; invitedBy: string; }; }>)[]; }, { id: string; organizationId: string; email: string; role: string; status: "pending" | "accepted" | "rejected" | "canceled"; inviterId: string; expiresAt: Date; createdAt: Date; teamId?: string | null | undefined; }>; cancelDashInvitation: import("better-call").StrictEndpoint<"/dash/organization/cancel-invitation", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; invitationId: string; }; }>)[]; body: import("zod").ZodObject<{ invitationId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; resendDashInvitation: import("better-call").StrictEndpoint<"/dash/organization/resend-invitation", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; invitationId: string; }; }>)[]; body: import("zod").ZodObject<{ invitationId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; dashCheckUserByEmail: import("better-call").StrictEndpoint<"/dash/organization/check-user-by-email", { method: "POST"; body: import("zod").ZodObject<{ email: import("zod").ZodString; }, import("zod/v4/core").$strip>; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; }, DashCheckUserByEmailResponse>; dashGetUserStats: import("better-call").StrictEndpoint<"/dash/user-stats", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DashUserStatsResponse>; dashGetUserGraphData: import("better-call").StrictEndpoint<"/dash/user-graph-data", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; query: import("zod").ZodObject<{ period: import("zod").ZodDefault>; }, import("zod/v4/core").$strip>; }, DashUserGraphDataResponse>; dashGetUserRetentionData: import("better-call").StrictEndpoint<"/dash/user-retention-data", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; query: import("zod").ZodObject<{ period: import("zod").ZodDefault>; }, import("zod/v4/core").$strip>; }, DashUserRetentionDataResponse>; dashBanUser: import("better-call").StrictEndpoint<"/dash/ban-user", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; body: import("zod").ZodObject<{ banReason: import("zod").ZodOptional; banExpires: import("zod").ZodOptional; deleteAllSessions: import("zod").ZodDefault>; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; dashBanManyUsers: import("better-call").StrictEndpoint<"/dash/ban-many-users", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userIds: string[]; }; }>)[]; body: import("zod").ZodObject<{ banReason: import("zod").ZodOptional; banExpires: import("zod").ZodOptional; deleteAllSessions: import("zod").ZodDefault>; }, import("zod/v4/core").$strip>; }, DashBanManyResponse>; dashUnbanUser: import("better-call").StrictEndpoint<"/dash/unban-user", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashSuccessResponse>; dashSendVerificationEmail: import("better-call").StrictEndpoint<"/dash/send-verification-email", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; body: import("zod").ZodObject<{ callbackUrl: import("zod").ZodPipe, import("zod").ZodTransform>; }, import("zod/v4/core").$strip>; }, DashSuccessResponse>; dashSendManyVerificationEmails: import("better-call").StrictEndpoint<"/dash/send-many-verification-emails", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userIds: string[]; }; }>)[]; body: import("zod").ZodObject<{ callbackUrl: import("zod").ZodPipe, import("zod").ZodTransform>; }, import("zod/v4/core").$strip>; }, DashSendManyVerificationEmailsResponse>; dashSendResetPasswordEmail: import("better-call").StrictEndpoint<"/dash/send-reset-password-email", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; body: import("zod").ZodObject<{ callbackUrl: import("zod").ZodPipe, import("zod").ZodTransform>; }, import("zod/v4/core").$strip>; }, never>; dashEnableTwoFactor: import("better-call").StrictEndpoint<"/dash/enable-two-factor", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashTwoFactorEnableResponse>; dashCompleteTwoFactorSetup: import("better-call").StrictEndpoint<"/dash/complete-two-factor-setup", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashSuccessResponse>; dashViewTwoFactorTotpUri: import("better-call").StrictEndpoint<"/dash/view-two-factor-totp-uri", { method: "POST"; metadata: { scope: "http"; }; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashTwoFactorTotpViewResponse>; dashViewBackupCodes: import("better-call").StrictEndpoint<"/dash/view-backup-codes", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashTwoFactorBackupCodesResponse>; dashDisableTwoFactor: import("better-call").StrictEndpoint<"/dash/disable-two-factor", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashSuccessResponse>; dashGenerateBackupCodes: import("better-call").StrictEndpoint<"/dash/generate-backup-codes", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { userId: string; }; }>)[]; }, DashTwoFactorBackupCodesResponse>; getUserEvents: import("better-call").StrictEndpoint<"/events/list", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ session: { session: Record & { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; }; user: Record & { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }; }; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; eventType: import("zod").ZodOptional; }, import("zod/v4/core").$strip>>; }, UserEventsResponse>; getAuditLogs: import("better-call").StrictEndpoint<"/events/audit-logs", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ session: { session: Record & { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; }; user: Record & { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }; }; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; userId: import("zod").ZodOptional; organizationId: import("zod").ZodOptional; identifier: import("zod").ZodOptional; eventType: import("zod").ZodOptional; }, import("zod/v4/core").$strip>>; }, UserEventsResponse>; getAllAuditLogs: import("better-call").StrictEndpoint<"/events/all-audit-logs", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ session: { session: Record & { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; }; user: Record & { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }; }; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; userId: import("zod").ZodOptional; organizationId: import("zod").ZodOptional; eventType: import("zod").ZodOptional; identifier: import("zod").ZodOptional; }, import("zod/v4/core").$strip>>; }, UserEventsResponse>; getEventTypes: import("better-call").StrictEndpoint<"/events/types", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ session: { session: Record & { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; }; user: Record & { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }; }; }>)[]; }, EventTypesResponse>; dashAcceptInvitation: import("better-call").StrictEndpoint<"/dash/accept-invitation", { method: "GET"; query: import("zod").ZodObject<{ token: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, { status: ("OK" | "CREATED" | "ACCEPTED" | "NO_CONTENT" | "MULTIPLE_CHOICES" | "MOVED_PERMANENTLY" | "FOUND" | "SEE_OTHER" | "NOT_MODIFIED" | "TEMPORARY_REDIRECT" | "BAD_REQUEST" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "PROXY_AUTHENTICATION_REQUIRED" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "LENGTH_REQUIRED" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "URI_TOO_LONG" | "UNSUPPORTED_MEDIA_TYPE" | "RANGE_NOT_SATISFIABLE" | "EXPECTATION_FAILED" | "I'M_A_TEAPOT" | "MISDIRECTED_REQUEST" | "UNPROCESSABLE_ENTITY" | "LOCKED" | "FAILED_DEPENDENCY" | "TOO_EARLY" | "UPGRADE_REQUIRED" | "PRECONDITION_REQUIRED" | "TOO_MANY_REQUESTS" | "REQUEST_HEADER_FIELDS_TOO_LARGE" | "UNAVAILABLE_FOR_LEGAL_REASONS" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "HTTP_VERSION_NOT_SUPPORTED" | "VARIANT_ALSO_NEGOTIATES" | "INSUFFICIENT_STORAGE" | "LOOP_DETECTED" | "NOT_EXTENDED" | "NETWORK_AUTHENTICATION_REQUIRED") | import("better-call").Status; body: ({ message?: string; code?: string; cause?: unknown; } & Record) | undefined; headers: HeadersInit; statusCode: number; name: string; message: string; stack?: string; cause?: unknown; }>; dashCompleteInvitation: import("better-call").StrictEndpoint<"/dash/complete-invitation", { method: "POST"; body: import("zod").ZodObject<{ token: import("zod").ZodString; password: import("zod").ZodOptional; }, import("zod/v4/core").$strip>; }, DashCompleteInvitationResponse>; dashCompleteInvitationHandoff: import("better-call").StrictEndpoint<"/dash/complete-invitation-handoff", { method: "GET"; query: import("zod").ZodObject<{ handoff: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, { status: ("OK" | "CREATED" | "ACCEPTED" | "NO_CONTENT" | "MULTIPLE_CHOICES" | "MOVED_PERMANENTLY" | "FOUND" | "SEE_OTHER" | "NOT_MODIFIED" | "TEMPORARY_REDIRECT" | "BAD_REQUEST" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "PROXY_AUTHENTICATION_REQUIRED" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "LENGTH_REQUIRED" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "URI_TOO_LONG" | "UNSUPPORTED_MEDIA_TYPE" | "RANGE_NOT_SATISFIABLE" | "EXPECTATION_FAILED" | "I'M_A_TEAPOT" | "MISDIRECTED_REQUEST" | "UNPROCESSABLE_ENTITY" | "LOCKED" | "FAILED_DEPENDENCY" | "TOO_EARLY" | "UPGRADE_REQUIRED" | "PRECONDITION_REQUIRED" | "TOO_MANY_REQUESTS" | "REQUEST_HEADER_FIELDS_TOO_LARGE" | "UNAVAILABLE_FOR_LEGAL_REASONS" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "HTTP_VERSION_NOT_SUPPORTED" | "VARIANT_ALSO_NEGOTIATES" | "INSUFFICIENT_STORAGE" | "LOOP_DETECTED" | "NOT_EXTENDED" | "NETWORK_AUTHENTICATION_REQUIRED") | import("better-call").Status; body: ({ message?: string; code?: string; cause?: unknown; } & Record) | undefined; headers: HeadersInit; statusCode: number; name: string; message: string; stack?: string; cause?: unknown; }>; dashCompleteInvitationSocial: import("better-call").StrictEndpoint<"/dash/complete-invitation-social", { method: "GET"; query: import("zod").ZodObject<{ token: import("zod").ZodString; }, import("zod/v4/core").$strip>; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ session: { session: Record & { id: string; createdAt: Date; updatedAt: Date; userId: string; expiresAt: Date; token: string; ipAddress?: string | null | undefined; userAgent?: string | null | undefined; }; user: Record & { id: string; createdAt: Date; updatedAt: Date; email: string; emailVerified: boolean; name: string; image?: string | null | undefined; }; }; }>)[]; }, { status: ("OK" | "CREATED" | "ACCEPTED" | "NO_CONTENT" | "MULTIPLE_CHOICES" | "MOVED_PERMANENTLY" | "FOUND" | "SEE_OTHER" | "NOT_MODIFIED" | "TEMPORARY_REDIRECT" | "BAD_REQUEST" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "PROXY_AUTHENTICATION_REQUIRED" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "LENGTH_REQUIRED" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "URI_TOO_LONG" | "UNSUPPORTED_MEDIA_TYPE" | "RANGE_NOT_SATISFIABLE" | "EXPECTATION_FAILED" | "I'M_A_TEAPOT" | "MISDIRECTED_REQUEST" | "UNPROCESSABLE_ENTITY" | "LOCKED" | "FAILED_DEPENDENCY" | "TOO_EARLY" | "UPGRADE_REQUIRED" | "PRECONDITION_REQUIRED" | "TOO_MANY_REQUESTS" | "REQUEST_HEADER_FIELDS_TOO_LARGE" | "UNAVAILABLE_FOR_LEGAL_REASONS" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "HTTP_VERSION_NOT_SUPPORTED" | "VARIANT_ALSO_NEGOTIATES" | "INSUFFICIENT_STORAGE" | "LOOP_DETECTED" | "NOT_EXTENDED" | "NETWORK_AUTHENTICATION_REQUIRED") | import("better-call").Status; body: ({ message?: string; code?: string; cause?: unknown; } & Record) | undefined; headers: HeadersInit; statusCode: number; name: string; message: string; stack?: string; cause?: unknown; }>; dashCheckUserExists: import("better-call").StrictEndpoint<"/dash/check-user-exists", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; body: import("zod").ZodObject<{ email: import("zod").ZodEmail; }, import("zod/v4/core").$strip>; }, DashCheckUserExistsResponse>; listDashOrganizationDirectories: import("better-call").StrictEndpoint<"/dash/organization/:id/directories", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; }, DirectorySyncConnection[] | LegacyDashDirectoryItem[]>; createDashOrganizationDirectory: import("better-call").StrictEndpoint<"/dash/organization/directory/create", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; ownerUserId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, LegacyDashDirectoryCreateResponse>; deleteDashOrganizationDirectory: import("better-call").StrictEndpoint<"/dash/organization/directory/delete", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashDirectoryDeleteResponse>; regenerateDashDirectoryToken: import("better-call").StrictEndpoint<"/dash/organization/directory/regenerate-token", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { organizationId: string; }; }>)[]; body: import("zod").ZodObject<{ providerId: import("zod").ZodString; }, import("zod/v4/core").$strip>; }, DashDirectoryRegenerateTokenResponse>; getDashManagedOrganizationDirectory: import("better-call").StrictEndpoint<"/dash/organization/:id/directories/:providerId", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; }, DirectorySyncConnection>; createDashManagedOrganizationDirectory: import("better-call").StrictEndpoint<"/dash/organization/:id/directories", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; body: import("zod").ZodObject<{ scopes: import("zod").ZodOptional>>; expiresAt: import("zod").ZodOptional>; providerId: import("zod").ZodString; pairing: import("zod").ZodOptional; externalIdSource: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{ kind: import("zod").ZodLiteral<"subject">; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ kind: import("zod").ZodLiteral<"verifiedIdTokenClaim">; name: import("zod").ZodString; }, import("zod/v4/core").$strip>], "kind">; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ ssoProviderId: import("zod").ZodString; protocol: import("zod").ZodLiteral<"saml">; externalIdSource: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{ kind: import("zod").ZodLiteral<"nameId">; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ kind: import("zod").ZodLiteral<"attribute">; name: import("zod").ZodString; }, import("zod/v4/core").$strip>], "kind">; }, import("zod/v4/core").$strip>], "protocol">>; }, import("zod/v4/core").$strip>; metadata: { noStore: boolean; }; }, DashDirectoryCreateResponse>; rotateDashManagedDirectoryCredential: import("better-call").StrictEndpoint<"/dash/organization/:id/directories/:providerId/credentials/rotate", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; body: import("zod").ZodObject<{ scopes: import("zod").ZodOptional>>; expiresAt: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>; metadata: { noStore: boolean; }; }, DashDirectoryRotateCredentialResponse>; revokeDashManagedDirectoryCredential: import("better-call").StrictEndpoint<"/dash/organization/:id/directories/:providerId/credentials/:credentialId/revoke", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; body: import("zod").ZodObject<{}, import("zod/v4/core").$strip>; }, DirectorySyncConnection>; listDashManagedDirectoryEvents: import("better-call").StrictEndpoint<"/dash/organization/:id/directories/:providerId/events", { method: "GET"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; query: import("zod").ZodOptional>]>>; offset: import("zod").ZodOptional>]>>; sortDirection: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>; }, DashDirectoryEventsResponse>; decommissionDashManagedOrganizationDirectory: import("better-call").StrictEndpoint<"/dash/organization/:id/directories/:providerId/decommission", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; body: import("zod").ZodObject<{}, import("zod/v4/core").$strip>; }, DirectorySyncConnection>; unpairDashManagedOrganizationDirectory: import("better-call").StrictEndpoint<"/dash/organization/:id/directories/:providerId/unpair", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: { purpose: "directory-sync-management"; organizationId: string; actorId: string; setupOperationId?: string | undefined; }; }>)[]; body: import("zod").ZodObject<{}, import("zod/v4/core").$strip>; }, DirectorySyncConnection>; dashExecuteAdapter: import("better-call").StrictEndpoint<"/dash/execute-adapter", { method: "POST"; use: ((inputContext: import("better-call").MiddlewareInputContext) => Promise<{ payload: Record; }>)[]; body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{ action: import("zod").ZodLiteral<"findOne">; model: import("zod").ZodString; where: import("zod").ZodOptional>; connector: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>>; select: import("zod").ZodOptional>; join: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ action: import("zod").ZodLiteral<"findMany">; model: import("zod").ZodString; where: import("zod").ZodOptional>; connector: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>>; limit: import("zod").ZodOptional; offset: import("zod").ZodOptional; sortBy: import("zod").ZodOptional; }, import("zod/v4/core").$strip>>; join: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ action: import("zod").ZodLiteral<"create">; model: import("zod").ZodString; data: import("zod").ZodRecord; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ action: import("zod").ZodLiteral<"update">; model: import("zod").ZodString; where: import("zod").ZodArray>; connector: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>; update: import("zod").ZodRecord; }, import("zod/v4/core").$strip>, import("zod").ZodObject<{ action: import("zod").ZodLiteral<"count">; model: import("zod").ZodString; where: import("zod").ZodOptional>; connector: import("zod").ZodOptional>; }, import("zod/v4/core").$strip>>>; }, import("zod/v4/core").$strip>], "action">; }, DashExecuteAdapterResponse>; }; schema: (O extends { activityTracking: { enabled: true; }; } ? { user: { fields: { lastActiveAt: { type: "date"; required: false; }; }; }; } : {}) & (O extends { managedDirectorySync: { enabled: true; }; } ? { directorySyncConnection: { fields: Record; }; directorySyncMembershipProvenance: { fields: Record; }; } : {}); }; //#endregion export { type APIError, type ApiOptions, type ApiOptionsResolved, CHALLENGE_TTL, type CompromisedPasswordResult, type CredentialStuffingResult, type DBField, DEFAULT_DIFFICULTY, type DashAddTeamMemberResponse, type DashBanManyResponse, type DashCheckUserByEmailResponse, type DashCheckUserExistsResponse, type DashCompleteInvitationResponse, type DashConfigResponse, type DashCreateOrganizationBody, type DashCreateOrganizationResponse, type DashCreateTeamResponse, type DashCreateUserResponse, type DashDeleteManyUsersResponse, type DashDirectoryCreateResponse, type DashDirectoryCredential, type DashDirectoryDeleteResponse, type DashDirectoryEvent, type DashDirectoryEventsResponse, type DashDirectoryItem, type DashDirectoryRegenerateTokenResponse, type DashDirectoryRotateCredentialResponse, type DashDirectorySyncSSOPairing, type DashExecuteAdapterCountResponse, type DashExecuteAdapterFindManyResponse, type DashExecuteAdapterFindOneResponse, type DashExecuteAdapterMutationResponse, type DashExecuteAdapterResponse, type DashExportOrganizationsResponse, type DashIdRow, type DashInviteMemberResponse, type DashMaybeSuccessResponse, type DashOptions, type DashOptionsInternal, type DashOptionsResolved, type DashOrganizationAddMemberResponse, type DashOrganizationDeleteManyResponse, type DashOrganizationDetailResponse, type DashOrganizationInvitationItem, type DashOrganizationInvitationListResponse, type DashOrganizationInvitationStatusItem, type DashOrganizationListResponse, type DashOrganizationMember, type DashOrganizationMemberListItem, type DashOrganizationMemberListResponse, type DashOrganizationMemberUser, type DashOrganizationOptionsResponse, type DashOrganizationTeamItem, type DashOrganizationTeamListResponse, type DashOrganizationUpdateMemberRoleResponse, type DashOrganizationUpdateResponse, type DashSCIMManagedConnectionEventType, type DashSCIMManagedCredentialStatus, type DashSCIMScope, type DashSendManyVerificationEmailsResponse, type DashSessionRevokeManyResponse, type DashSsoCreateProviderResponse, type DashSsoDeleteResponse, type DashSsoMarkDomainVerifiedResponse, type DashSsoProviderItem, type DashSsoProviderSummary, type DashSsoUpdateProviderResponse, type DashSsoVerificationTokenResponse, type DashSsoVerifyDomainResponse, type DashSuccessResponse, type DashTeam, type DashTeamMember, type DashTeamMemberListResponse, type DashTwoFactorBackupCodesResponse, type DashTwoFactorEnableResponse, type DashTwoFactorStatus, type DashTwoFactorTotpViewResponse, type DashUpdateTeamResponse, type DashUpdateUserResponse, type DashUserDetailsResponse, type DashUserGraphDataResponse, type DashUserListResponse, type DashUserOrganizationsResponse, type DashUserRetentionDataResponse, type DashUserStatsActivePeriod, type DashUserStatsResponse, type DashUserStatsSignUpPeriod, type DashValidateResponse, type DirectorySyncConnection, type DirectorySyncConnectionStatus, type DirectorySyncMode, EMAIL_TEMPLATES, type EmailConfig, type EmailTemplateId, type EmailTemplateVariables, type Endpoint, type EndpointOptions, type EventLocation, type EventTypesResponse, type ImpossibleTravelResult, type InfraEndpointContext, type InfraPluginConnectionOptions, type InfraPluginConnectionOptionsInternal, type KvOptions, type KvOptionsResolved, type KvRetryOptions, type KvRetryOptionsResolved, type LegacyDashDirectoryCreateResponse, type LegacyDashDirectoryItem, type LocationData, type LocationDataContext, type ORGANIZATION_USER_PREVIEW_SELECT, type OrganizationUserPreview, type PoWChallenge, type PoWSolution, type SCIMPlugin, type SMSConfig, type SMSTemplateId, type SMSTemplateVariables, SMS_TEMPLATES, type SecurityEvent, type SecurityEventType, type SecurityOptions, type SecurityVerdict, type SendBulkEmailsOptions, type SendBulkEmailsResult, type SendEmailOptions, type SendEmailResult, type SendSMSOptions, type SendSMSResult, type SentinelOptions, type SentinelOptionsInternal, type StaleUserResult, type ThresholdConfig, USER_EVENT_TYPES, type UserEvent, type UserEventType, type UserEventsResponse, createEmailSender, createSMSSender, dash, decodePoWChallenge, encodePoWSolution, normalizeEmail, sendBulkEmails, sendEmail, sendSMS, sentinel, solvePoWChallenge, verifyPoWSolution };