## Classes

- [APIError](classes/APIError.md)
- [BetterAuthApp](classes/BetterAuthApp.md)
- [CachingSecretProvider](classes/CachingSecretProvider.md)
- [CompositeSecretProvider](classes/CompositeSecretProvider.md)
- [ConfigurationApp](classes/ConfigurationApp.md)
- [ConsentApp](classes/ConsentApp.md)
- [DateOnly](classes/DateOnly.md)
- [EnvSecretProvider](classes/EnvSecretProvider.md)
- [GcpSecretProvider](classes/GcpSecretProvider.md)
- [OpenApiMiddlewareBuilder](classes/OpenApiMiddlewareBuilder.md)
- [RealtimeApp](classes/RealtimeApp.md)
- [TaskCancelledError](classes/TaskCancelledError.md)
- [TerrenoApp](classes/TerrenoApp.md)
- [VersionCheckPlugin](classes/VersionCheckPlugin.md)

## Interfaces

- [ActionContext](interfaces/ActionContext.md)
- [APIErrorConstructor](interfaces/APIErrorConstructor.md)
- [AsyncHandlerOptions](interfaces/AsyncHandlerOptions.md)
- [AuthOptions](interfaces/AuthOptions.md)
- [BackgroundTaskDocument](interfaces/BackgroundTaskDocument.md)
- [BackgroundTaskMethods](interfaces/BackgroundTaskMethods.md)
- [BackgroundTaskModel](interfaces/BackgroundTaskModel.md)
- [BackgroundTaskStatics](interfaces/BackgroundTaskStatics.md)
- [BaseUser](interfaces/BaseUser.md)
- [BetterAuthAppOptions](interfaces/BetterAuthAppOptions.md)
- [BetterAuthConfig](interfaces/BetterAuthConfig.md)
- [BetterAuthOAuthProvider](interfaces/BetterAuthOAuthProvider.md)
- [BetterAuthSession](interfaces/BetterAuthSession.md)
- [BetterAuthSessionData](interfaces/BetterAuthSessionData.md)
- [BetterAuthUser](interfaces/BetterAuthUser.md)
- [CachingSecretProviderOptions](interfaces/CachingSecretProviderOptions.md)
- [ChangeStreamConfig](interfaces/ChangeStreamConfig.md)
- [CollectionActionConfig](interfaces/CollectionActionConfig.md)
- [ConfigRegistration](interfaces/ConfigRegistration.md)
- [ConfigurationAppOptions](interfaces/ConfigurationAppOptions.md)
- [ConfigurationMetaResponse](interfaces/ConfigurationMetaResponse.md)
- [ConfigurationModel](interfaces/ConfigurationModel.md)
- [ConfigurationPermissions](interfaces/ConfigurationPermissions.md)
- [ConfigurationPluginOptions](interfaces/ConfigurationPluginOptions.md)
- [ConfigurationStatics](interfaces/ConfigurationStatics.md)
- [ConsentAppOptions](interfaces/ConsentAppOptions.md)
- [ConsentFormCheckbox](interfaces/ConsentFormCheckbox.md)
- [ConsentFormDefinition](interfaces/ConsentFormDefinition.md)
- [ConsentFormDocument](interfaces/ConsentFormDocument.md)
- [ConsentFormModel](interfaces/ConsentFormModel.md)
- [ConsentFormStatics](interfaces/ConsentFormStatics.md)
- [ConsentResponseDocument](interfaces/ConsentResponseDocument.md)
- [ConsentResponseMethods](interfaces/ConsentResponseMethods.md)
- [ConsentResponseModel](interfaces/ConsentResponseModel.md)
- [ConsentResponseStatics](interfaces/ConsentResponseStatics.md)
- [CreateBetterAuthOptions](interfaces/CreateBetterAuthOptions.md)
- [CreatedDeleted](interfaces/CreatedDeleted.md)
- [CreateFeatureFlaggedLoggerOptions](interfaces/CreateFeatureFlaggedLoggerOptions.md)
- [CreateScopedLoggerOptions](interfaces/CreateScopedLoggerOptions.md)
- [CreateValidatorOptions](interfaces/CreateValidatorOptions.md)
- [DocumentSubscription](interfaces/DocumentSubscription.md)
- [FindExactlyOnePlugin](interfaces/FindExactlyOnePlugin.md)
- [FindOneOrNonePlugin](interfaces/FindOneOrNonePlugin.md)
- [GcpSecretProviderOptions](interfaces/GcpSecretProviderOptions.md)
- [GenerateTokensOptions](interfaces/GenerateTokensOptions.md)
- [GitHubAuthOptions](interfaces/GitHubAuthOptions.md)
- [GitHubUserFields](interfaces/GitHubUserFields.md)
- [HasUpsert](interfaces/HasUpsert.md)
- [InstanceActionConfig](interfaces/InstanceActionConfig.md)
- [IsDeleted](interfaces/IsDeleted.md)
- [JSONArray](interfaces/JSONArray.md)
- [JSONObject](interfaces/JSONObject.md)
- [JwtSessionPayload](interfaces/JwtSessionPayload.md)
- [LogContextFields](interfaces/LogContextFields.md)
- [LoggingOptions](interfaces/LoggingOptions.md)
- [ModelRouterOptions](interfaces/ModelRouterOptions.md)
- [ModelRouterRegistration](interfaces/ModelRouterRegistration.md)
- [ModelRouterValidationOptions](interfaces/ModelRouterValidationOptions.md)
- [MongoClientLike](interfaces/MongoClientLike.md)
- [OpenApiBuildResult](interfaces/OpenApiBuildResult.md)
- [OpenApiMiddleware](interfaces/OpenApiMiddleware.md)
- [OpenApiParameter](interfaces/OpenApiParameter.md)
- [OpenApiResponse](interfaces/OpenApiResponse.md)
- [OpenApiSchema](interfaces/OpenApiSchema.md)
- [OpenApiSchemaProperty](interfaces/OpenApiSchemaProperty.md)
- [OpenApiValidatorConfig](interfaces/OpenApiValidatorConfig.md)
- [PopulatePath](interfaces/PopulatePath.md)
- [QuerySubscription](interfaces/QuerySubscription.md)
- [QueryValidatorOptions](interfaces/QueryValidatorOptions.md)
- [RealtimeAppOptions](interfaces/RealtimeAppOptions.md)
- [RealtimeConfig](interfaces/RealtimeConfig.md)
- [RealtimeEvent](interfaces/RealtimeEvent.md)
- [RealtimeRegistryEntry](interfaces/RealtimeRegistryEntry.md)
- [RealtimeSocketLike](interfaces/RealtimeSocketLike.md)
- [RequestBodyValidatorOptions](interfaces/RequestBodyValidatorOptions.md)
- [RequestContext](interfaces/RequestContext.md)
- [RESTPermissions](interfaces/RESTPermissions.md)
- [ScopedLogger](interfaces/ScopedLogger.md)
- [ScriptContext](interfaces/ScriptContext.md)
- [ScriptResult](interfaces/ScriptResult.md)
- [SecretFieldMeta](interfaces/SecretFieldMeta.md)
- [SecretProvider](interfaces/SecretProvider.md)
- [SyncConsentsOptions](interfaces/SyncConsentsOptions.md)
- [SyncConsentsResult](interfaces/SyncConsentsResult.md)
- [TerrenoAppOptions](interfaces/TerrenoAppOptions.md)
- [TerrenoPlugin](interfaces/TerrenoPlugin.md)
- [TerrenoRequestLogEntry](interfaces/TerrenoRequestLogEntry.md)
- [TerrenoTransformer](interfaces/TerrenoTransformer.md)
- [User](interfaces/User.md)
- [UserModel](interfaces/UserModel.md)
- [VersionCheckResponse](interfaces/VersionCheckResponse.md)
- [VersionConfigDocument](interfaces/VersionConfigDocument.md)
- [VersionConfigModel](interfaces/VersionConfigModel.md)
- [WrapScriptOptions](interfaces/WrapScriptOptions.md)

## Type Aliases

- [AddRoutes](type-aliases/AddRoutes.md)
- [AuthProvider](type-aliases/AuthProvider.md)
- [BetterAuthInstance](type-aliases/BetterAuthInstance.md)
- [ConfigType](type-aliases/ConfigType.md)
- [ConfigurationPostUpdateHook](type-aliases/ConfigurationPostUpdateHook.md)
- [ConfigurationPreUpdateHook](type-aliases/ConfigurationPreUpdateHook.md)
- [ConsentFormMethods](type-aliases/ConsentFormMethods.md)
- [ConsentFormType](type-aliases/ConsentFormType.md)
- [DeepPartial](type-aliases/DeepPartial.md)
- [GooseRESTOptions](type-aliases/GooseRESTOptions.md)
- [JSONPrimitive](type-aliases/JSONPrimitive.md)
- [JSONValue](type-aliases/JSONValue.md)
- [Paths](type-aliases/Paths.md)
- [PathValue](type-aliases/PathValue.md)
- [PermissionMethod](type-aliases/PermissionMethod.md)
- [RequestContextAttributes](type-aliases/RequestContextAttributes.md)
- [RESTMethod](type-aliases/RESTMethod.md)
- [ScriptRunner](type-aliases/ScriptRunner.md)
- [VersionCheckStatus](type-aliases/VersionCheckStatus.md)

## Variables

- [ACTION\_NAME\_PATTERN](variables/ACTION_NAME_PATTERN.md)
- [BackgroundTask](variables/BackgroundTask.md)
- [Config](variables/Config.md)
- [ConsentForm](variables/ConsentForm.md)
- [ConsentResponse](variables/ConsentResponse.md)
- [gooseRestRouter](variables/gooseRestRouter.md)
- [logger](variables/logger.md)
- [MAX\_DOCUMENT\_SUBSCRIPTIONS](variables/MAX_DOCUMENT_SUBSCRIPTIONS.md)
- [MAX\_MODEL\_SUBSCRIPTIONS](variables/MAX_MODEL_SUBSCRIPTIONS.md)
- [MAX\_QUERY\_SUBSCRIPTIONS](variables/MAX_QUERY_SUBSCRIPTIONS.md)
- [Permissions](variables/Permissions.md)
- [REQUEST\_CONTEXT\_ATTRIBUTE\_NAMES](variables/REQUEST_CONTEXT_ATTRIBUTE_NAMES.md)
- [VersionConfig](variables/VersionConfig.md)
- [winstonLogger](variables/winstonLogger.md)

## Functions

- [addAuthRoutes](functions/addAuthRoutes.md)
- [addGitHubAuthRoutes](functions/addGitHubAuthRoutes.md)
- [addMeRoutes](functions/addMeRoutes.md)
- [addPopulateToQuery](functions/addPopulateToQuery.md)
- [addQuerySubscription](functions/addQuerySubscription.md)
- [AdminOwnerTransformer](functions/AdminOwnerTransformer.md)
- [apiErrorMiddleware](functions/apiErrorMiddleware.md)
- [apiFallthroughErrorMiddleware](functions/apiFallthroughErrorMiddleware.md)
- [apiUnauthorizedMiddleware](functions/apiUnauthorizedMiddleware.md)
- [applyRequestContextToSentry](functions/applyRequestContextToSentry.md)
- [assertNoActionCollisions](functions/assertNoActionCollisions.md)
- [asyncHandler](functions/asyncHandler.md)
- [authenticateMiddleware](functions/authenticateMiddleware.md)
- [baseUserPlugin](functions/baseUserPlugin.md)
- [buildQuerySchemaFromFields](functions/buildQuerySchemaFromFields.md)
- [checkModelsStrict](functions/checkModelsStrict.md)
- [checkPermissions](functions/checkPermissions.md)
- [clearQueryStore](functions/clearQueryStore.md)
- [clearRealtimeRegistry](functions/clearRealtimeRegistry.md)
- [computeQueryId](functions/computeQueryId.md)
- [configurationPlugin](functions/configurationPlugin.md)
- [configureOpenApiValidator](functions/configureOpenApiValidator.md)
- [createActionOpenApiMiddleware](functions/createActionOpenApiMiddleware.md)
- [createBetterAuth](functions/createBetterAuth.md)
- [createBetterAuthSessionMiddleware](functions/createBetterAuthSessionMiddleware.md)
- [createdUpdatedPlugin](functions/createdUpdatedPlugin.md)
- [createFeatureFlaggedLogger](functions/createFeatureFlaggedLogger.md)
- [createModelValidators](functions/createModelValidators.md)
- [createOpenApiBuilder](functions/createOpenApiBuilder.md)
- [createRouter](functions/createRouter.md)
- [createRouterWithAuth](functions/createRouterWithAuth.md)
- [createScopedLogger](functions/createScopedLogger.md)
- [createValidator](functions/createValidator.md)
- [cronjob](functions/cronjob.md)
- [defaultResponseHandler](functions/defaultResponseHandler.md)
- [defineCollectionAction](functions/defineCollectionAction.md)
- [defineInstanceAction](functions/defineInstanceAction.md)
- [envConfigurationPlugin](functions/envConfigurationPlugin.md)
- [errorMessage](functions/errorMessage.md)
- [errorsPlugin](functions/errorsPlugin.md)
- [errorStack](functions/errorStack.md)
- [findExactlyOne](functions/findExactlyOne.md)
- [findOneOrNone](functions/findOneOrNone.md)
- [findOneOrNoneFor](functions/findOneOrNoneFor.md)
- [findRegistryEntryByCollection](functions/findRegistryEntryByCollection.md)
- [findRegistryEntryByRoutePath](functions/findRegistryEntryByRoutePath.md)
- [firebaseJWTPlugin](functions/firebaseJWTPlugin.md)
- [fixMixedFields](functions/fixMixedFields.md)
- [flattenToDotPaths](functions/flattenToDotPaths.md)
- [formatLogContextSuffix](functions/formatLogContextSuffix.md)
- [generateTokens](functions/generateTokens.md)
- [getAPIErrorBody](functions/getAPIErrorBody.md)
- [getBetterAuthSession](functions/getBetterAuthSession.md)
- [getCurrentLogContext](functions/getCurrentLogContext.md)
- [getCurrentRequestContext](functions/getCurrentRequestContext.md)
- [getCurrentRequestContextAttributes](functions/getCurrentRequestContextAttributes.md)
- [getDisableExternalErrorTracking](functions/getDisableExternalErrorTracking.md)
- [getMongoClientFromMongoose](functions/getMongoClientFromMongoose.md)
- [getOpenApiSpecForModel](functions/getOpenApiSpecForModel.md)
- [getOpenApiValidatorConfig](functions/getOpenApiValidatorConfig.md)
- [getQuerySubscriptionsForCollection](functions/getQuerySubscriptionsForCollection.md)
- [getRealtimeRegistry](functions/getRealtimeRegistry.md)
- [getRequestContextFromAttributes](functions/getRequestContextFromAttributes.md)
- [getSchemaFromModel](functions/getSchemaFromModel.md)
- [getSessionIdFromJwtPayload](functions/getSessionIdFromJwtPayload.md)
- [githubUserPlugin](functions/githubUserPlugin.md)
- [hasBetterAuthSession](functions/hasBetterAuthSession.md)
- [installRealtimeSocketHandlers](functions/installRealtimeSocketHandlers.md)
- [isAPIError](functions/isAPIError.md)
- [isDeletedPlugin](functions/isDeletedPlugin.md)
- [isDisabledPlugin](functions/isDisabledPlugin.md)
- [isOpenApiValidatorConfigured](functions/isOpenApiValidatorConfigured.md)
- [isValidObjectId](functions/isValidObjectId.md)
- [jsonResponseRequestIdMiddleware](functions/jsonResponseRequestIdMiddleware.md)
- [logRequests](functions/logRequests.md)
- [matchesQuery](functions/matchesQuery.md)
- [modelRouter](functions/modelRouter.md)
- [mongooseErrorToAPIError](functions/mongooseErrorToAPIError.md)
- [mountBetterAuthRoutes](functions/mountBetterAuthRoutes.md)
- [openApiCompatMiddleware](functions/openApiCompatMiddleware.md)
- [openApiEtagMiddleware](functions/openApiEtagMiddleware.md)
- [OwnerQueryFilter](functions/OwnerQueryFilter.md)
- [patchAppUse](functions/patchAppUse.md)
- [permissionMiddleware](functions/permissionMiddleware.md)
- [registerActionRoutes](functions/registerActionRoutes.md)
- [registerRealtime](functions/registerRealtime.md)
- [removeAllSocketQueries](functions/removeAllSocketQueries.md)
- [removeQuerySubscription](functions/removeQuerySubscription.md)
- [requestContextMiddleware](functions/requestContextMiddleware.md)
- [resetOpenApiValidatorConfig](functions/resetOpenApiValidatorConfig.md)
- [runActionPermissions](functions/runActionPermissions.md)
- [runWithRequestContext](functions/runWithRequestContext.md)
- [runWithRequestContextAttributes](functions/runWithRequestContextAttributes.md)
- [sendToGoogleChat](functions/sendToGoogleChat.md)
- [sendToSlack](functions/sendToSlack.md)
- [sendToZoom](functions/sendToZoom.md)
- [sentryAppVersionMiddleware](functions/sentryAppVersionMiddleware.md)
- [serialize](functions/serialize.md)
- [setRequestContext](functions/setRequestContext.md)
- [setupAuth](functions/setupAuth.md)
- [setupBetterAuthUserSync](functions/setupBetterAuthUserSync.md)
- [setupEnvironment](functions/setupEnvironment.md)
- [setupGitHubAuth](functions/setupGitHubAuth.md)
- [setupLogging](functions/setupLogging.md)
- [signupUser](functions/signupUser.md)
- [startChangeStreamWatcher](functions/startChangeStreamWatcher.md)
- [stopChangeStreamWatcher](functions/stopChangeStreamWatcher.md)
- [syncBetterAuthUser](functions/syncBetterAuthUser.md)
- [syncConsents](functions/syncConsents.md)
- [timeout](functions/timeout.md)
- [transform](functions/transform.md)
- [unpopulate](functions/unpopulate.md)
- [updateRequestContextFromRequest](functions/updateRequestContextFromRequest.md)
- [upsertPlugin](functions/upsertPlugin.md)
- [validateActionRequest](functions/validateActionRequest.md)
- [validateModelRequestBody](functions/validateModelRequestBody.md)
- [validateQueryParams](functions/validateQueryParams.md)
- [validateRequestBody](functions/validateRequestBody.md)
- [validateResponseData](functions/validateResponseData.md)
- [wrapActionResponse](functions/wrapActionResponse.md)
- [wrapScript](functions/wrapScript.md)
