svelte-guardian
Version:
Batteries included authentication for SvelteKit applications.
24 lines (23 loc) • 954 B
TypeScript
import type { Adapter } from '@auth/core/adapters';
export type DatabaseProviderType = 'prisma' | 'drizzle' | 'mongodb' | 'postgres' | 'mysql' | 'sqlite' | 'supabase' | 'custom';
export interface BaseDatabaseConfig {
type: DatabaseProviderType;
connectionString?: string;
ssl?: boolean;
}
export interface CustomAdapterConfig extends BaseDatabaseConfig {
type: 'custom';
adapter: Adapter;
}
export interface PrismaConfig extends BaseDatabaseConfig {
type: 'prisma';
client: any;
}
export interface DrizzleConfig extends BaseDatabaseConfig {
type: 'drizzle';
client: any;
schema?: any;
}
export type DatabaseConfig = PrismaConfig | DrizzleConfig | CustomAdapterConfig;
export declare const createDatabaseAdapter: (config: DatabaseConfig | undefined) => Promise<Adapter | null>;
export declare const getUserByCustomIdentifier: (config: DatabaseConfig, customField: stting, identifier: string) => Promise<{} | null>;