bknd
Version:
Lightweight Firebase/Supabase alternative built to run anywhere — incl. Next.js, React Router, Astro, Cloudflare, Bun, Node, AWS Lambda & more.
63 lines (62 loc) • 2.23 kB
TypeScript
import { type Static } from "../core/utils";
import * as tbbox from "@sinclair/typebox";
export declare const ADAPTERS: {
readonly s3: {
readonly cls: typeof import("../media").StorageS3Adapter;
readonly schema: tbbox.TObject<{
access_key: tbbox.TString;
secret_access_key: tbbox.TString;
url: tbbox.TString;
}>;
};
readonly cloudinary: {
readonly cls: typeof import("../media").StorageCloudinaryAdapter;
readonly schema: tbbox.TObject<{
cloud_name: tbbox.TString;
api_key: tbbox.TString;
api_secret: tbbox.TString;
upload_preset: tbbox.TOptional<tbbox.TString>;
}>;
};
};
export declare const registry: import("../core").Registry<{
cls: import("../core").Constructor<import("../media").StorageAdapter> & {
prototype: import("../media").StorageAdapter;
};
schema: tbbox.TObject;
}, Record<string, {
cls: import("../core").Constructor<import("../media").StorageAdapter> & {
prototype: import("../media").StorageAdapter;
};
schema: tbbox.TObject;
}>, import("../core/registry/Registry").RegisterFn<{
cls: import("../core").Constructor<import("../media").StorageAdapter> & {
prototype: import("../media").StorageAdapter;
};
schema: tbbox.TObject;
}>>;
export declare function buildMediaSchema(): tbbox.TObject<{
enabled: tbbox.TBoolean;
basepath: tbbox.TString;
entity_name: tbbox.TString;
storage: tbbox.TObject<{
body_max_size: tbbox.TOptional<tbbox.TNumber>;
}>;
adapter: tbbox.TOptional<tbbox.TUnion<tbbox.TObject<{
type: tbbox.TLiteral<string>;
config: tbbox.TObject<tbbox.TProperties>;
}>[]>>;
}>;
export declare const mediaConfigSchema: tbbox.TObject<{
enabled: tbbox.TBoolean;
basepath: tbbox.TString;
entity_name: tbbox.TString;
storage: tbbox.TObject<{
body_max_size: tbbox.TOptional<tbbox.TNumber>;
}>;
adapter: tbbox.TOptional<tbbox.TUnion<tbbox.TObject<{
type: tbbox.TLiteral<string>;
config: tbbox.TObject<tbbox.TProperties>;
}>[]>>;
}>;
export type TAppMediaConfig = Static<typeof mediaConfigSchema>;