import { GenericObject, IGetDocumentsOptions } from '../web/database/firestore/types'; export type TGetDocuments = (collection: string, options?: IGetDocumentsOptions) => Promise; export type TGetDocumentsCount = (collection: string, constraints?: IGetDocumentsOptions) => Promise; export type IGetDocument = (collection: string, documentId: string) => Promise; /** * @function ISetDocument * Set a document in a collection * @param {string} collection - The collection name * @param {string|GenericObject} arg2 - The documentId or form object; if form is provided, a document with random id will be created * @param {GenericObject} [form] - The form to set/update if documentId is provided * @returns {Promise} - The document data */ export type ISetDocument = (collection: string, arg2: string | GenericObject, form?: GenericObject) => Promise; export type IDeleteDocument = (collection: string, document: string) => Promise; export interface ICollectionRepositoryConstructor { name: string; schema: Partial; defaults: () => GenericObject; getDocuments: TGetDocuments; getDocumentsCount: TGetDocumentsCount; getDocument?: IGetDocument; setDocument?: ISetDocument; deleteDocument?: IDeleteDocument; } export interface IDocumentModelConstructor { collection: string; schema: Partial; defaults?: () => GenericObject; data?: GenericObject; getDocument: IGetDocument; setDocument: ISetDocument; deleteDocument: IDeleteDocument; } //# sourceMappingURL=types.d.ts.map