This commit is contained in:
Yamozha
2021-04-02 02:24:13 +03:00
parent c23950b545
commit 7256d79e2c
31493 changed files with 3036630 additions and 0 deletions

617
node_modules/reselect/lib/index.d.ts generated vendored Normal file
View File

@ -0,0 +1,617 @@
export as namespace Reselect;
export type Selector<S, R> = (state: S) => R;
export type OutputSelector<S, R, C> = Selector<S, R> & {
resultFunc: C;
recomputations: () => number;
resetRecomputations: () => number;
}
export type ParametricSelector<S, P, R> = (state: S, props: P, ...args: any[]) => R;
export type OutputParametricSelector<S, P, R, C> = ParametricSelector<S, P, R> & {
resultFunc: C;
recomputations: () => number;
resetRecomputations: () => number;
}
/* one selector */
export function createSelector<S, R1, T>(
selector: Selector<S, R1>,
combiner: (res: R1) => T,
): OutputSelector<S, T, (res: R1) => T>;
export function createSelector<S, P, R1, T>(
selector: ParametricSelector<S, P, R1>,
combiner: (res: R1) => T,
): OutputParametricSelector<S, P, T, (res: R1) => T>;
/* two selectors */
export function createSelector<S, R1, R2, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
combiner: (res1: R1, res2: R2) => T,
): OutputSelector<S, T, (res1: R1, res2: R2) => T>;
export function createSelector<S, P, R1, R2, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
combiner: (res1: R1, res2: R2) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2) => T>;
/* three selectors */
export function createSelector<S, R1, R2, R3, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
combiner: (res1: R1, res2: R2, res3: R3) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3) => T>;
export function createSelector<S, P, R1, R2, R3, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
combiner: (res1: R1, res2: R2, res3: R3) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3) => T>;
/* four selectors */
export function createSelector<S, R1, R2, R3, R4, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4) => T>;
export function createSelector<S, P, R1, R2, R3, R4, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4) => T>;
/* five selectors */
export function createSelector<S, R1, R2, R3, R4, R5, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T>;
/* six selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T>;
/* seven selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
selector7: Selector<S, R7>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
selector7: ParametricSelector<S, P, R7>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T>;
/* eight selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
selector7: Selector<S, R7>,
selector8: Selector<S, R8>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
selector7: ParametricSelector<S, P, R7>,
selector8: ParametricSelector<S, P, R8>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T>;
/* nine selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
selector7: Selector<S, R7>,
selector8: Selector<S, R8>,
selector9: Selector<S, R9>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
selector7: ParametricSelector<S, P, R7>,
selector8: ParametricSelector<S, P, R8>,
selector9: ParametricSelector<S, P, R9>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T>;
/* ten selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
selector7: Selector<S, R7>,
selector8: Selector<S, R8>,
selector9: Selector<S, R9>,
selector10: Selector<S, R10>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
selector7: ParametricSelector<S, P, R7>,
selector8: ParametricSelector<S, P, R8>,
selector9: ParametricSelector<S, P, R9>,
selector10: ParametricSelector<S, P, R10>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T>;
/* eleven selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
selector7: Selector<S, R7>,
selector8: Selector<S, R8>,
selector9: Selector<S, R9>,
selector10: Selector<S, R10>,
selector11: Selector<S, R11>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
selector7: ParametricSelector<S, P, R7>,
selector8: ParametricSelector<S, P, R8>,
selector9: ParametricSelector<S, P, R9>,
selector10: ParametricSelector<S, P, R10>,
selector11: ParametricSelector<S, P, R11>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T>;
/* twelve selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, T>(
selector1: Selector<S, R1>,
selector2: Selector<S, R2>,
selector3: Selector<S, R3>,
selector4: Selector<S, R4>,
selector5: Selector<S, R5>,
selector6: Selector<S, R6>,
selector7: Selector<S, R7>,
selector8: Selector<S, R8>,
selector9: Selector<S, R9>,
selector10: Selector<S, R10>,
selector11: Selector<S, R11>,
selector12: Selector<S, R12>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, T>(
selector1: ParametricSelector<S, P, R1>,
selector2: ParametricSelector<S, P, R2>,
selector3: ParametricSelector<S, P, R3>,
selector4: ParametricSelector<S, P, R4>,
selector5: ParametricSelector<S, P, R5>,
selector6: ParametricSelector<S, P, R6>,
selector7: ParametricSelector<S, P, R7>,
selector8: ParametricSelector<S, P, R8>,
selector9: ParametricSelector<S, P, R9>,
selector10: ParametricSelector<S, P, R10>,
selector11: ParametricSelector<S, P, R11>,
selector12: ParametricSelector<S, P, R12>,
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T>;
/* array argument */
/* one selector */
export function createSelector<S, R1, T>(
selectors: [Selector<S, R1>],
combiner: (res: R1) => T,
): OutputSelector<S, T, (res: R1) => T>;
export function createSelector<S, P, R1, T>(
selectors: [ParametricSelector<S, P, R1>],
combiner: (res: R1) => T,
): OutputParametricSelector<S, P, T, (res: R1) => T>;
/* two selectors */
export function createSelector<S, R1, R2, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>],
combiner: (res1: R1, res2: R2) => T,
): OutputSelector<S, T, (res1: R1, res2: R2) => T>;
export function createSelector<S, P, R1, R2, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>],
combiner: (res1: R1, res2: R2) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2) => T>;
/* three selectors */
export function createSelector<S, R1, R2, R3, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>],
combiner: (res1: R1, res2: R2, res3: R3) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3) => T>;
export function createSelector<S, P, R1, R2, R3, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>],
combiner: (res1: R1, res2: R2, res3: R3) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3) => T>;
/* four selectors */
export function createSelector<S, R1, R2, R3, R4, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4) => T>;
export function createSelector<S, P, R1, R2, R3, R4, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4) => T>;
/* five selectors */
export function createSelector<S, R1, R2, R3, R4, R5, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5) => T>;
/* six selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6) => T>;
/* seven selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>,
Selector<S, R7>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>,
ParametricSelector<S, P, R7>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7) => T>;
/* eight selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>,
Selector<S, R7>,
Selector<S, R8>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>,
ParametricSelector<S, P, R7>,
ParametricSelector<S, P, R8>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8) => T>;
/* nine selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>,
Selector<S, R7>,
Selector<S, R8>,
Selector<S, R9>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>,
ParametricSelector<S, P, R7>,
ParametricSelector<S, P, R8>,
ParametricSelector<S, P, R9>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9) => T>;
/* ten selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>,
Selector<S, R7>,
Selector<S, R8>,
Selector<S, R9>,
Selector<S, R10>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>,
ParametricSelector<S, P, R7>,
ParametricSelector<S, P, R8>,
ParametricSelector<S, P, R9>,
ParametricSelector<S, P, R10>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10) => T>;
/* eleven selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>,
Selector<S, R7>,
Selector<S, R8>,
Selector<S, R9>,
Selector<S, R10>,
Selector<S, R11>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>,
ParametricSelector<S, P, R7>,
ParametricSelector<S, P, R8>,
ParametricSelector<S, P, R9>,
ParametricSelector<S, P, R10>,
ParametricSelector<S, P, R11>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11) => T>;
/* twelve selectors */
export function createSelector<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, T>(
selectors: [Selector<S, R1>,
Selector<S, R2>,
Selector<S, R3>,
Selector<S, R4>,
Selector<S, R5>,
Selector<S, R6>,
Selector<S, R7>,
Selector<S, R8>,
Selector<S, R9>,
Selector<S, R10>,
Selector<S, R11>,
Selector<S, R12>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T,
): OutputSelector<S, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T>;
export function createSelector<S, P, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, T>(
selectors: [ParametricSelector<S, P, R1>,
ParametricSelector<S, P, R2>,
ParametricSelector<S, P, R3>,
ParametricSelector<S, P, R4>,
ParametricSelector<S, P, R5>,
ParametricSelector<S, P, R6>,
ParametricSelector<S, P, R7>,
ParametricSelector<S, P, R8>,
ParametricSelector<S, P, R9>,
ParametricSelector<S, P, R10>,
ParametricSelector<S, P, R11>,
ParametricSelector<S, P, R12>],
combiner: (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T,
): OutputParametricSelector<S, P, T, (res1: R1, res2: R2, res3: R3, res4: R4, res5: R5, res6: R6,
res7: R7, res8: R8, res9: R9, res10: R10, res11: R11, res12: R12) => T>;
export function defaultMemoize<F extends Function>(
func: F, equalityCheck?: <T>(a: T, b: T, index: number) => boolean,
): F;
export function createSelectorCreator(
memoize: <F extends Function>(func: F) => F,
): typeof createSelector;
export function createSelectorCreator<O1>(
memoize: <F extends Function>(func: F,
option1: O1) => F,
option1: O1,
): typeof createSelector;
export function createSelectorCreator<O1, O2>(
memoize: <F extends Function>(func: F,
option1: O1,
option2: O2) => F,
option1: O1,
option2: O2,
): typeof createSelector;
export function createSelectorCreator<O1, O2, O3>(
memoize: <F extends Function>(func: F,
option1: O1,
option2: O2,
option3: O3,
...rest: any[]) => F,
option1: O1,
option2: O2,
option3: O3,
...rest: any[],
): typeof createSelector;
export function createStructuredSelector<S, T>(
selectors: {[K in keyof T]: Selector<S, T[K]>},
selectorCreator?: typeof createSelector,
): Selector<S, T>;
export function createStructuredSelector<S, P, T>(
selectors: {[K in keyof T]: ParametricSelector<S, P, T[K]>},
selectorCreator?: typeof createSelector,
): ParametricSelector<S, P, T>;

125
node_modules/reselect/lib/index.js generated vendored Normal file
View File

@ -0,0 +1,125 @@
'use strict';
exports.__esModule = true;
exports.defaultMemoize = defaultMemoize;
exports.createSelectorCreator = createSelectorCreator;
exports.createStructuredSelector = createStructuredSelector;
function defaultEqualityCheck(a, b) {
return a === b;
}
function areArgumentsShallowlyEqual(equalityCheck, prev, next) {
if (prev === null || next === null || prev.length !== next.length) {
return false;
}
// Do this in a for loop (and not a `forEach` or an `every`) so we can determine equality as fast as possible.
var length = prev.length;
for (var i = 0; i < length; i++) {
if (!equalityCheck(prev[i], next[i])) {
return false;
}
}
return true;
}
function defaultMemoize(func) {
var equalityCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultEqualityCheck;
var lastArgs = null;
var lastResult = null;
// we reference arguments instead of spreading them for performance reasons
return function () {
if (!areArgumentsShallowlyEqual(equalityCheck, lastArgs, arguments)) {
// apply arguments instead of spreading for performance.
lastResult = func.apply(null, arguments);
}
lastArgs = arguments;
return lastResult;
};
}
function getDependencies(funcs) {
var dependencies = Array.isArray(funcs[0]) ? funcs[0] : funcs;
if (!dependencies.every(function (dep) {
return typeof dep === 'function';
})) {
var dependencyTypes = dependencies.map(function (dep) {
return typeof dep;
}).join(', ');
throw new Error('Selector creators expect all input-selectors to be functions, ' + ('instead received the following types: [' + dependencyTypes + ']'));
}
return dependencies;
}
function createSelectorCreator(memoize) {
for (var _len = arguments.length, memoizeOptions = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
memoizeOptions[_key - 1] = arguments[_key];
}
return function () {
for (var _len2 = arguments.length, funcs = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
funcs[_key2] = arguments[_key2];
}
var recomputations = 0;
var resultFunc = funcs.pop();
var dependencies = getDependencies(funcs);
var memoizedResultFunc = memoize.apply(undefined, [function () {
recomputations++;
// apply arguments instead of spreading for performance.
return resultFunc.apply(null, arguments);
}].concat(memoizeOptions));
// If a selector is called with the exact same arguments we don't need to traverse our dependencies again.
var selector = defaultMemoize(function () {
var params = [];
var length = dependencies.length;
for (var i = 0; i < length; i++) {
// apply arguments instead of spreading and mutate a local list of params for performance.
params.push(dependencies[i].apply(null, arguments));
}
// apply arguments instead of spreading for performance.
return memoizedResultFunc.apply(null, params);
});
selector.resultFunc = resultFunc;
selector.recomputations = function () {
return recomputations;
};
selector.resetRecomputations = function () {
return recomputations = 0;
};
return selector;
};
}
var createSelector = exports.createSelector = createSelectorCreator(defaultMemoize);
function createStructuredSelector(selectors) {
var selectorCreator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : createSelector;
if (typeof selectors !== 'object') {
throw new Error('createStructuredSelector expects first argument to be an object ' + ('where each property is a selector, instead received a ' + typeof selectors));
}
var objectKeys = Object.keys(selectors);
return selectorCreator(objectKeys.map(function (key) {
return selectors[key];
}), function () {
for (var _len3 = arguments.length, values = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
values[_key3] = arguments[_key3];
}
return values.reduce(function (composition, value, index) {
composition[objectKeys[index]] = value;
return composition;
}, {});
});
}

675
node_modules/reselect/lib/index.js.flow generated vendored Normal file
View File

@ -0,0 +1,675 @@
type Selector<TState, TProps, TResult> = {
(state: TState, props: TProps, ...rest: any[]): TResult;
};
type SelectorCreator = {
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
selector10: Selector<TState, TProps, T10>,
selector11: Selector<TState, TProps, T11>,
selector12: Selector<TState, TProps, T12>,
selector13: Selector<TState, TProps, T13>,
selector14: Selector<TState, TProps, T14>,
selector15: Selector<TState, TProps, T15>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12,
arg13: T13,
arg14: T14,
arg15: T15
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>,
Selector<TState, TProps, T10>,
Selector<TState, TProps, T11>,
Selector<TState, TProps, T12>,
Selector<TState, TProps, T13>,
Selector<TState, TProps, T14>,
Selector<TState, TProps, T15>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12,
arg13: T13,
arg14: T14,
arg15: T15
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
selector10: Selector<TState, TProps, T10>,
selector11: Selector<TState, TProps, T11>,
selector12: Selector<TState, TProps, T12>,
selector13: Selector<TState, TProps, T13>,
selector14: Selector<TState, TProps, T14>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12,
arg13: T13,
arg14: T14
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>,
Selector<TState, TProps, T10>,
Selector<TState, TProps, T11>,
Selector<TState, TProps, T12>,
Selector<TState, TProps, T13>,
Selector<TState, TProps, T14>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12,
arg13: T13,
arg14: T14
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
selector10: Selector<TState, TProps, T10>,
selector11: Selector<TState, TProps, T11>,
selector12: Selector<TState, TProps, T12>,
selector13: Selector<TState, TProps, T13>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12,
arg13: T13
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>,
Selector<TState, TProps, T10>,
Selector<TState, TProps, T11>,
Selector<TState, TProps, T12>,
Selector<TState, TProps, T13>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12,
arg13: T13
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
selector10: Selector<TState, TProps, T10>,
selector11: Selector<TState, TProps, T11>,
selector12: Selector<TState, TProps, T12>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>,
Selector<TState, TProps, T10>,
Selector<TState, TProps, T11>,
Selector<TState, TProps, T12>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11,
arg12: T12
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
selector10: Selector<TState, TProps, T10>,
selector11: Selector<TState, TProps, T11>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>,
Selector<TState, TProps, T10>,
Selector<TState, TProps, T11>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10,
arg11: T11
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
selector10: Selector<TState, TProps, T10>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>,
Selector<TState, TProps, T10>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9,
arg10: T10
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
selector9: Selector<TState, TProps, T9>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8, T9>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>,
Selector<TState, TProps, T9>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8,
arg9: T9
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
selector8: Selector<TState, TProps, T8>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7, T8>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>,
Selector<TState, TProps, T8>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7,
arg8: T8
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
selector7: Selector<TState, TProps, T7>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6, T7>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>,
Selector<TState, TProps, T7>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6,
arg7: T7
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
selector6: Selector<TState, TProps, T6>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5, T6>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>,
Selector<TState, TProps, T6>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5,
arg6: T6
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
selector5: Selector<TState, TProps, T5>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4, T5>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>,
Selector<TState, TProps, T5>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4,
arg5: T5
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
selector4: Selector<TState, TProps, T4>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3, T4>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>,
Selector<TState, TProps, T4>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3,
arg4: T4
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
selector3: Selector<TState, TProps, T3>,
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2, T3>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>,
Selector<TState, TProps, T3>
],
resultFunc: (
arg1: T1,
arg2: T2,
arg3: T3
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2>(
selector1: Selector<TState, TProps, T1>,
selector2: Selector<TState, TProps, T2>,
resultFunc: (
arg1: T1,
arg2: T2
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1, T2>(
selectors: [
Selector<TState, TProps, T1>,
Selector<TState, TProps, T2>
],
resultFunc: (
arg1: T1,
arg2: T2
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1>(
selector1: Selector<TState, TProps, T1>,
resultFunc: (
arg1: T1
) => TResult
): Selector<TState, TProps, TResult>;
<TState, TProps, TResult, T1>(
selectors: [
Selector<TState, TProps, T1>
],
resultFunc: (
arg1: T1
) => TResult
): Selector<TState, TProps, TResult>;
};
type Reselect = {
createSelector: SelectorCreator;
defaultMemoize: <TFunc: Function>(
func: TFunc,
equalityCheck?: (a: any, b: any) => boolean
) => TFunc;
createSelectorCreator: (
memoize: Function,
...memoizeOptions: any[]
) => SelectorCreator;
createStructuredSelector: <TState, TProps>(
inputSelectors: {
[k: string | number]: Selector<TState, TProps, any>
},
selectorCreator?: SelectorCreator
) => Selector<TState, TProps, any>;
};
declare module 'reselect' {
declare var exports: Reselect;
}