1 | import "reflect-metadata";
|
2 | import { ContainerModule } from "inversify";
|
3 | import { RxDatabase, RxCollection } from "rxdb";
|
4 | import { NarwhalSchema } from "./data_engine/NarwhalSchema";
|
5 | import { INarwhalSchemaParams, ISystemContextComponent } from "./data_engine/schema_parser";
|
6 | import { ConcreteProxiedCollection } from "./data_engine/proxied_collection";
|
7 | export interface INarwhalNamespace {
|
8 | schema: {
|
9 | [schemaName: string]: INarwhalSchemaParams;
|
10 | };
|
11 | views?: {
|
12 | [viewName: string]: any;
|
13 | };
|
14 | }
|
15 | export declare type DataEngineDatabaseProdiver = (db?: DataEngineDatabase) => Promise<DataEngineDatabase>;
|
16 | export declare type DataEngineDatabase = RxDatabase;
|
17 | export declare class DataEngineDatabaseContainer {
|
18 | db: DataEngineDatabase;
|
19 | init(db?: RxDatabase): Promise<void>;
|
20 | }
|
21 | export declare class EmptyContext implements ISystemContextComponent {
|
22 | context(): {
|
23 | [key: string]: any;
|
24 | };
|
25 | }
|
26 | export interface INamespaceHandlerHook {
|
27 | handleNamespace(name: string, version: number, namespace: INarwhalNamespace): void;
|
28 | }
|
29 | export declare class NamespaceHandler {
|
30 | hooks: INamespaceHandlerHook[];
|
31 | addNamespace(namespace_name: string, namespace: INarwhalNamespace, version?: number): void;
|
32 | }
|
33 | export declare type ConcreteProxiedCollectionFactory = (schema: NarwhalSchema, collection: RxCollection) => ConcreteProxiedCollection;
|
34 | export declare const container_module_generator: (db?: RxDatabase<import("rxdb").CollectionsOfDatabase>) => ContainerModule;
|