UNPKG

bknd

Version:

Lightweight Firebase/Supabase alternative built to run anywhere — incl. Next.js, React Router, Astro, Cloudflare, Bun, Node, AWS Lambda & more.

136 lines (135 loc) 5.54 kB
import { s } from "bknd/utils"; import { Module } from "../../modules/Module"; export declare const serverConfigSchema: s.ObjectSchema<{ readonly cors: s.ObjectSchema<{ readonly origin: s.StringSchema<{ readonly default: "*"; }> & { readonly default: "*"; }; readonly allow_methods: s.ArraySchema<s.StringSchema<{ readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; }> & { readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; }, { readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; readonly uniqueItems: true; }> & { readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; readonly uniqueItems: true; }; readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, { readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"]; }> & { readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"]; }; readonly allow_credentials: s.Schema<{ readonly default: true; }, boolean, boolean> & { readonly default: true; }; }, s.Merge<s.IObjectOptions & { additionalProperties: false; }>>; readonly mcp: s.ObjectSchema<{ readonly enabled: s.Schema<{ readonly default: false; }, boolean, boolean> & { readonly default: false; }; readonly path: s.StringSchema<{ readonly default: "/api/system/mcp"; }> & { readonly default: "/api/system/mcp"; }; readonly logLevel: s.StringSchema<{ readonly enum: ("debug" | "error" | "info" | "critical" | "warning" | "emergency" | "alert" | "notice")[]; readonly default: "warning"; }> & { readonly enum: ("debug" | "error" | "info" | "critical" | "warning" | "emergency" | "alert" | "notice")[]; readonly default: "warning"; }; }, s.Merge<s.IObjectOptions & { additionalProperties: false; }>>; }, s.Merge<{ readonly description: "Server configuration"; } & { additionalProperties: false; }>>; export type AppServerConfig = s.Static<typeof serverConfigSchema>; export declare class AppServer extends Module<AppServerConfig> { getRestrictedPaths(): never[]; get client(): import("hono").Hono<import("../..").ServerEnv, import("hono/types").BlankSchema, "/">; getSchema(): s.ObjectSchema<{ readonly cors: s.ObjectSchema<{ readonly origin: s.StringSchema<{ readonly default: "*"; }> & { readonly default: "*"; }; readonly allow_methods: s.ArraySchema<s.StringSchema<{ readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; }> & { readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; }, { readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; readonly uniqueItems: true; }> & { readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"]; readonly uniqueItems: true; }; readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, { readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"]; }> & { readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"]; }; readonly allow_credentials: s.Schema<{ readonly default: true; }, boolean, boolean> & { readonly default: true; }; }, s.Merge<s.IObjectOptions & { additionalProperties: false; }>>; readonly mcp: s.ObjectSchema<{ readonly enabled: s.Schema<{ readonly default: false; }, boolean, boolean> & { readonly default: false; }; readonly path: s.StringSchema<{ readonly default: "/api/system/mcp"; }> & { readonly default: "/api/system/mcp"; }; readonly logLevel: s.StringSchema<{ readonly enum: ("debug" | "error" | "info" | "critical" | "warning" | "emergency" | "alert" | "notice")[]; readonly default: "warning"; }> & { readonly enum: ("debug" | "error" | "info" | "critical" | "warning" | "emergency" | "alert" | "notice")[]; readonly default: "warning"; }; }, s.Merge<s.IObjectOptions & { additionalProperties: false; }>>; }, s.Merge<{ readonly description: "Server configuration"; } & { additionalProperties: false; }>>; build(): Promise<void>; toJSON(secrets?: boolean): { mcp: { enabled: boolean; path: string; logLevel: "debug" | "error" | "info" | "critical" | "warning" | "emergency" | "alert" | "notice"; }; cors: { origin: string; allow_methods: ("GET" | "POST" | "PATCH" | "PUT" | "DELETE")[]; allow_headers: string[]; allow_credentials: boolean; }; }; }