bknd
Version:
Lightweight Firebase/Supabase alternative built to run anywhere — incl. Next.js, React Router, Astro, Cloudflare, Bun, Node, AWS Lambda & more.
28 lines (27 loc) • 947 B
TypeScript
import type { App } from "../App";
import { type Context, type Env, Hono } from "hono";
import * as middlewares from "../modules/middlewares";
import type { SafeUser } from "../auth";
import type { EntityManager } from "../data";
import { s } from "../core/object/schema";
export type ServerEnv = Env & {
Variables: {
app: App;
auth?: {
resolved: boolean;
registered: boolean;
skip: boolean;
user?: SafeUser;
};
html?: string;
};
};
export declare class Controller {
protected middlewares: typeof middlewares;
protected create(): Hono<ServerEnv>;
static createServer(): Hono<ServerEnv>;
getController(): Hono<ServerEnv>;
protected isJsonRequest(c: Context<ServerEnv>): boolean;
protected notFound(c: Context<ServerEnv>): Response | Promise<Response>;
protected getEntitiesEnum(em: EntityManager<any>): s.TString<s.StringSchema>;
}