import { Observable } from 'kefir'; import { StoreSelectorCallback, StoreSelectorEffect, StoreState } from '../../types'; import { Collection } from '../collections/collection-utils'; import { createCachedSelector, SelectorTraceReporter } from '../selector-core/create-cached-selector'; import { SelectorFlushManagerSource } from '../selector-core/throttled-selector-options'; export { createCachedSelector }; export type StoreStreamingStateSource = { getStreamState(): Observable; }; type StreamingState = TStore extends StoreStreamingStateSource ? TState : StoreState; export type StreamingArgs = { [K in keyof ARGS]: ARGS[K] | Observable; }; export type StoreStreamingSelector = ((...args: StreamingArgs) => Observable) & { withStore: (store: StoreStreamingStateSource | Observable) => (...args: StreamingArgs) => Observable; select: StoreSelectorCallback; effect: StoreSelectorEffect; }; export type CreateStreamingSelector = , ARGS extends any[] = [], R = unknown>(store: TStore, selectorFunc: StoreSelectorCallback>) => StoreStreamingSelector>; export declare const createSelectorFromStreamState: (getStreamState: () => Observable, selectorFunc: StoreSelectorCallback, selectorFlushManagerOrFrequency?: SelectorFlushManagerSource, traceReporter?: SelectorTraceReporter) => StoreStreamingSelector; export declare const createSelector: CreateStreamingSelector; export declare const createCollectionItemSelector: = StoreStreamingStateSource>(store: TStore, collectionSelector: StoreSelectorCallback, any[], StreamingState>) => StoreStreamingSelector>; export declare const createCollectionItemsListSelector: boolean, TStore extends StoreStreamingStateSource = StoreStreamingStateSource>(store: TStore, collectionSelector: StoreSelectorCallback, any[], StreamingState>, itemFilter?: F) => StoreStreamingSelector>; //# sourceMappingURL=create-selector.d.ts.map