@typeheim/orm-on-fire
Version:
Firestore ORM
20 lines (19 loc) • 1.21 kB
TypeScript
import { Collection } from './Collection';
import { FirestoreConnection } from '../Persistence/FirestoreConnection';
import { EntityType } from '../Contracts/EntityType';
import { CollectionReference } from '../Persistence/CollectionReference';
import * as types from '@firebase/firestore-types';
import { MetadataStorage } from '../Metadata/MetadataStorage';
import { NullCollection } from './NullCollection';
import DocumentReference = types.DocumentReference;
export declare class Factory {
protected connection: FirestoreConnection;
protected metadata: MetadataStorage;
constructor(connection: FirestoreConnection, metadata: MetadataStorage);
createNullCollection(): NullCollection<unknown>;
createGroupFor<Entity>(entity: EntityType<Entity>): Collection<Entity>;
createFor<Entity>(entity: EntityType<Entity>): Collection<Entity>;
createWithRef<Entity>(entity: EntityType<Entity>, docReference: DocumentReference): Collection<Entity>;
createFromBasePath<Entity>(entity: EntityType<Entity>, path: string): Collection<Entity>;
protected create<Entity>(entity: EntityType<Entity>, collectionRef: CollectionReference, metadata: any): Collection<Entity>;
}