import { FirestoreQuery } from '@nu-art/firebase'; import { DB_BaseObject, DB_Object, DBDef, IndexKeys, Metadata, PreDB } from '@nu-art/ts-common'; import { ApiDefResolver, BodyApi, QueryApi } from '../types.js'; import { ResponseError } from '@nu-art/ts-common/core/exceptions/types'; /** * !! Workaround !! * * there is a typescript bug... should be able to use * * upsert: BodyApi>, * patch: BodyApi> * * but something about the type resolution goes wrong and instead of seeing Type, it resolves to Type> which makes no sense */ export type ApiStruct_DBApiGenV2 = { v1: { query: BodyApi, FirestoreQuery | undefined | {}>; queryUnique: QueryApi, string>; upsert: BodyApi>; upsertAll: BodyApi[]>; patch: BodyApi>; delete: QueryApi; deleteQuery: BodyApi>; deleteAll: QueryApi; metadata: QueryApi>; }; }; export type ApiStruct_DBApiGenIDBV2 = { v1: { query: BodyApi>; queryUnique: QueryApi, string | IndexKeys>; upsert: BodyApi>; upsertAll: BodyApi[]>; patch: BodyApi & Partial>; delete: QueryApi; deleteQuery: BodyApi>; deleteAll: QueryApi; metadata: QueryApi>; }; }; export declare const DBApiDefGeneratorV2: (dbDef: DBDef, version?: string) => ApiDefResolver>; export declare const DBApiDefGeneratorIDBV2: (dbDef: DBDef, version?: string) => ApiDefResolver>;