import { createRuntimeApp, type RuntimeBkndConfig } from "bknd/adapter"; type TSvelteKit = { request: Request; }; export type SvelteKitBkndConfig = Pick, "adminOptions">; /** * Get bknd app instance * @param config - bknd configuration * @param args - environment variables (use $env/dynamic/private for universal runtime support) */ export async function getApp( config: SvelteKitBkndConfig = {} as SvelteKitBkndConfig, args: Env, ) { return await createRuntimeApp(config, args); } /** * Create request handler for hooks.server.ts * @param config - bknd configuration * @param args - environment variables (use $env/dynamic/private for universal runtime support) */ export function serve( config: SvelteKitBkndConfig = {} as SvelteKitBkndConfig, args: Env, ) { return async (fnArgs: TSvelteKit) => { return (await getApp(config, args)).fetch(fnArgs.request); }; }