import { Store, Actions, ActionDirector } from '@ngxs/store'; import { Observable } from 'rxjs'; import { NgxsFirestoreModuleOptions } from './tokens'; import * as i0 from "@angular/core"; interface ActionTypeDef { type: string; new (...args: any): T; } export declare class NgxsFirestoreConnect { private store; private actions; private actionDirector; private options; private activeFirestoreConnections; private actionsPending; constructor(store: Store, actions: Actions, actionDirector: ActionDirector, options: NgxsFirestoreModuleOptions); /** * Connect a query that will dispatch a `StreamEmitted` action on each emission. * * @param actionType Action to connect with * @param opts.to Firestore Query to connect with * @param opts.trackBy used to allow multiple connections for a same action, and Disconnect them individually * @param opts.connectedActionFinishesOn complete connected action on first emit or stream completed * @param opts.cancelPrevious cancel previous connected action, * - false: will NOT cancel connected action, and subsequent dispatches will be skipped * - true : will cancel previous connected action, if used combined with trackBy will cancel stream with same id * - 'cancel-if-track-by-changed': will cancel previous connected action only when trackBy changed */ connect(actionType: ActionTypeDef, opts: { to: (action: T) => Observable; trackBy?: (action: T) => string; connectedActionFinishesOn?: 'FirstEmit' | 'StreamCompleted'; cancelPrevious?: boolean | 'cancel-if-track-by-changed'; }): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export {};