UNPKG

bknd

Version:

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

79 lines (78 loc) 5.75 kB
import { ManyToManyRelation, type ManyToManyRelationConfig } from "./ManyToManyRelation"; import { ManyToOneRelation, type ManyToOneRelationConfig } from "./ManyToOneRelation"; import { OneToOneRelation, type OneToOneRelationConfig } from "./OneToOneRelation"; import { PolymorphicRelation, type PolymorphicRelationConfig } from "./PolymorphicRelation"; import { type RelationType, RelationTypes } from "./relation-types"; export * from "./EntityRelation"; export * from "./EntityRelationAnchor"; export * from "./RelationHelper"; export * from "./RelationMutator"; export * from "./RelationAccessor"; import { RelationField, type RelationFieldBaseConfig, type RelationFieldConfig, relationFieldConfigSchema } from "./RelationField"; export { OneToOneRelation, type OneToOneRelationConfig, ManyToOneRelation, type ManyToOneRelationConfig, ManyToManyRelation, type ManyToManyRelationConfig, PolymorphicRelation, type PolymorphicRelationConfig, RelationTypes, type RelationType, RelationField, relationFieldConfigSchema, type RelationFieldBaseConfig, type RelationFieldConfig, }; export declare const RelationClassMap: { readonly "1:1": { readonly schema: import("@sinclair/typebox").TObject<{ required: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>; mappedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; inversedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; sourceCardinality: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>; with_limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>; fieldConfig: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{ label: import("@sinclair/typebox").TString; }>>; }>; readonly cls: typeof OneToOneRelation; }; readonly "n:1": { readonly schema: import("@sinclair/typebox").TObject<{ required: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>; mappedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; inversedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; sourceCardinality: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>; with_limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>; fieldConfig: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{ label: import("@sinclair/typebox").TString; }>>; }>; readonly cls: typeof ManyToOneRelation; }; readonly "m:n": { readonly schema: import("@sinclair/typebox").TObject<{ required: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>; mappedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; inversedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; connectionTable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; connectionTableMappedName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; }>; readonly cls: typeof ManyToManyRelation; }; readonly poly: { readonly schema: import("@sinclair/typebox").TObject<{ required: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>; mappedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; inversedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; targetCardinality: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>; }>; readonly cls: typeof PolymorphicRelation; }; }; export declare const RelationFieldClassMap: { readonly relation: { readonly schema: import("@sinclair/typebox").TObject<{ default_value: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>; required: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>; description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; label: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; fillable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnsafe<"create" | "read" | "update" | "delete">>]>>; hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnsafe<"form" | "table" | "create" | "read" | "update" | "delete" | "submit">>]>>; virtual: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>; reference: import("@sinclair/typebox").TString; target: import("@sinclair/typebox").TString; target_field: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; target_field_type: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"text" | "integer">>; on_delete: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no action" | "restrict" | "cascade" | "set null" | "set default">>; }>; readonly field: typeof RelationField; }; };