import { Hono } from "hono"; import type { AuthModuleConfig } from "./routes"; import type { ResolvedAuthHooks } from "./auth-hooks"; import type { HonoEnv } from "../api/types"; import { z } from "zod"; import type { AuthResponsePayload, TransformAuthResponseContext } from "@rebasepro/types"; /** * Mount magic link routes onto the auth router. * * Follows the same delegation pattern as `mountMfaRoutes()` and `mountSessionRoutes()`. */ export declare function mountMagicLinkRoutes(deps: { router: Hono; config: AuthModuleConfig; ops: ResolvedAuthHooks; parseBody: (schema: z.ZodSchema, body: unknown) => T; buildAuthResponse: (user: { id: string; email: string; displayName?: string | null; photoUrl?: string | null; emailVerified?: boolean; isAnonymous?: boolean; metadata?: Record | null; }, roleIds: string[], accessToken: string, refreshToken: string, providerId: string) => unknown; createSessionAndTokens: (userId: string, userAgent: string, ipAddress: string) => Promise<{ roleIds: string[]; accessToken: string; refreshToken: string; }>; applyTransformHook: (response: AuthResponsePayload, method: TransformAuthResponseContext["method"], request: Request, userId: string) => Promise; }): void;