expo-passkey
Version:
Passkey authentication for Expo apps with Better Auth integration
37 lines • 1.1 kB
JavaScript
/**
* @file Server-specific type definitions
* @module expo-passkey/types/server
*/
import { z } from "zod";
/**
* Database schema for the authPasskey model
*/
export const authPasskeySchema = z.object({
id: z.string(),
userId: z.string(),
credentialId: z.string(),
publicKey: z.string(),
counter: z.number().default(0),
platform: z.string(),
lastUsed: z.string(),
status: z.enum(["active", "revoked"]).default("active"),
createdAt: z.string(),
updatedAt: z.string(),
revokedAt: z.string().optional(),
revokedReason: z.string().optional(),
metadata: z.string().optional(),
aaguid: z.string().optional(),
});
/**
* Database schema for the passkeyChallenge model
*/
export const passkeyChallengeSchema = z.object({
id: z.string(),
userId: z.string(),
challenge: z.string(),
type: z.enum(["registration", "authentication"]),
createdAt: z.string(),
expiresAt: z.string(),
registrationOptions: z.string().optional(), // JSON string containing client registration preferences
});
//# sourceMappingURL=server.js.map