collectionService<MODEL extends TModel<DTO>> method

TCollectionService<DTO, MODEL> collectionService<MODEL extends TModel<DTO>>({
  1. required TCollectionModelBuilderDef<DTO, MODEL> modelBuilder,
  2. TModelDocsBuilderDef<DTO, MODEL>? modelDocsBuilder,
  3. TCollectionApiBuilderDef<DTO, MODEL>? apiBuilder,
  4. TCollectionStreamBuilderDef<DTO, MODEL>? streamBuilder,
  5. TCollectionValueBuilderDef<DTO, MODEL>? initialValue,
  6. TCollectionValueBuilderDef<DTO, MODEL>? defaultValue,
  7. IFirestoreCacheService? firestoreCacheService,
  8. bool initialiseStream = true,
  9. TSortOption? initialSort,
  10. Set<TFilterInput<dynamic, TFilterOption, dynamic>>? initialFilters,
  11. List<Future> readyDeps(
    1. User user
    )?,
})

Implementation

TCollectionService<DTO, MODEL> collectionService<MODEL extends TModel<DTO>>({
  required TCollectionModelBuilderDef<DTO, MODEL> modelBuilder,
  TModelDocsBuilderDef<DTO, MODEL>? modelDocsBuilder,
  TCollectionApiBuilderDef<DTO, MODEL>? apiBuilder,
  TCollectionStreamBuilderDef<DTO, MODEL>? streamBuilder,
  TCollectionValueBuilderDef<DTO, MODEL>? initialValue,
  TCollectionValueBuilderDef<DTO, MODEL>? defaultValue,
  IFirestoreCacheService? firestoreCacheService,
  bool initialiseStream = true,
  TSortOption? initialSort,
  Set<TFilterInput>? initialFilters,
  List<Future> Function(User user)? readyDeps,
}) => TCollectionService<DTO, MODEL>(
  initialFilters: initialFilters,
  readyDeps: readyDeps,
  initialSort: initialSort,
  modelBuilder: modelBuilder,
  modelDocsBuilder: modelDocsBuilder,
  collection: this,
  firestoreCacheService: firestoreCacheService,
  apiBuilder: apiBuilder,
  defaultValue: defaultValue,
  initialValue: initialValue,
  streamBuilder: streamBuilder,
  initialiseStream: initialiseStream,
);