/**
 * Sets up email / password authentication
 */
export declare const authEmailPasswordGenerator: import("@baseplate-dev/sync").GeneratorBundleCreator<{
    adminRoles: string[];
    devWebDomainPort: number;
}, {
    paths: import("@baseplate-dev/sync").GeneratorTask<{
        localAuthCoreAuthEmailPasswordPaths: import("@baseplate-dev/sync").ProviderExport<import("./generated/template-paths.js").LocalAuthCoreAuthEmailPasswordPaths>;
    }, {
        appModule: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/fastify-generators").AppModuleProvider>;
    }, undefined>;
    imports: import("@baseplate-dev/sync").GeneratorTask<{
        authEmailPasswordImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            authenticateUserWithEmailAndPassword: {};
            cleanupExpiredPasswordResetTokens: {};
            completePasswordReset: {};
            createUserWithEmailAndPassword: {};
            PASSWORD_MAX_LENGTH: {};
            PASSWORD_MIN_LENGTH: {};
            PASSWORD_RESET_TOKEN_EXPIRY_SEC: {};
            registerUserWithEmailAndPassword: {};
            requestPasswordReset: {};
            validatePasswordResetToken: {};
        }>>;
    }, {
        paths: import("@baseplate-dev/sync").ProviderType<import("./generated/template-paths.js").LocalAuthCoreAuthEmailPasswordPaths>;
    }, undefined>;
    renderers: import("@baseplate-dev/sync").GeneratorTask<{
        localAuthCoreAuthEmailPasswordRenderers: import("@baseplate-dev/sync").ProviderExport<import("./generated/template-renderers.js").LocalAuthCoreAuthEmailPasswordRenderers>;
    }, {
        authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            cleanupExpiredAuthVerifications: {};
            createAuthVerification: {};
            userSessionPayload: {};
            validateAuthVerification: {};
        }>>;
        configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            config: {};
        }>>;
        emailModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            EmailAdapter: {
                isTypeOnly: true;
            };
            EmailAttachment: {
                isTypeOnly: true;
            };
            EmailRawOptions: {
                isTypeOnly: true;
            };
            EmailSendOptions: {
                isTypeOnly: true;
            };
            sendEmail: {};
            sendEmailQueue: {};
            sendRawEmail: {};
            TransformedEmailMessage: {
                isTypeOnly: true;
            };
        }>>;
        errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            BadRequestError: {};
            ForbiddenError: {};
            handleZodRequestValidationError: {};
            HttpError: {};
            InternalServerError: {};
            logError: {};
            NotFoundError: {};
            TooManyRequestsError: {};
            UnauthorizedError: {};
        }>>;
        passwordHasherServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            createPasswordHash: {};
            verifyPasswordHash: {};
        }>>;
        paths: import("@baseplate-dev/sync").ProviderType<import("./generated/template-paths.js").LocalAuthCoreAuthEmailPasswordPaths>;
        pothosImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            builder: {};
        }>>;
        prismaGeneratedImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            PrismaClient: {};
            Prisma: {};
            '*': {};
            $Enums: {};
        }>>;
        prismaImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            prisma: {};
        }>>;
        rateLimitImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            createRateLimiter: {};
            memoizeRateLimiter: {};
            RateLimiter: {
                isTypeOnly: true;
            };
            RateLimiterConfig: {
                isTypeOnly: true;
            };
            RateLimitResult: {
                isTypeOnly: true;
            };
        }>>;
        requestServiceContextImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            createContextFromRequest: {};
            RequestServiceContext: {
                isTypeOnly: true;
            };
        }>>;
        typescriptFile: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").TypescriptFileProvider>;
        userSessionServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            userSessionService: {};
        }>>;
        userSessionTypesImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
            UserSessionPayload: {
                isTypeOnly: true;
            };
            UserSessionService: {
                isTypeOnly: true;
            };
        }>>;
    }, undefined>;
    config: import("@baseplate-dev/sync").GeneratorTask<undefined, {
        provider: import("@baseplate-dev/sync").ProviderType<Omit<import("@baseplate-dev/utils").FieldMap<{
            configFields: import("@baseplate-dev/utils").MapContainer<string, import("@baseplate-dev/fastify-generators").ConfigServiceField>;
        }>, "getValues">>;
    }, undefined>;
    appModule: import("@baseplate-dev/sync").GeneratorTask<any, {
        paths: import("@baseplate-dev/sync").ProviderType<import("./generated/template-paths.js").LocalAuthCoreAuthEmailPasswordPaths>;
        appModule: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/fastify-generators").AppModuleProvider>;
    }, any>;
    main: import("@baseplate-dev/sync").GeneratorTask<any, {
        renderers: import("@baseplate-dev/sync").ProviderType<import("./generated/template-renderers.js").LocalAuthCoreAuthEmailPasswordRenderers>;
        transactionalLibConfig: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/plugin-email").TransactionalLibConfigProvider>;
        userObjectType: import("@baseplate-dev/sync").ProviderDependency<import("@baseplate-dev/fastify-generators").PothosTypeOutputProvider>;
    }, any>;
}>;
//# sourceMappingURL=auth-email-password.generator.d.ts.map