juliette
Version:
Reactive State Management Powered by RxJS
5 lines (4 loc) • 413 B
TypeScript
import { Selector } from './models';
export declare function composeSelectors<Selectors extends Selector<State, unknown>[], Slices extends {
[I in keyof Selectors]: Selectors[I] extends Selector<State, infer Slice> ? Slice : never;
}, Result, State = Selectors extends Selector<infer T, unknown>[] ? T : never>(selectors: [...Selectors], composer: (...slices: Slices) => Result): Selector<State, Result>;