# Function compose

- compose(): (<R>(a) => R)

- Composes single-argument functions from right to left. The rightmost function can take multiple arguments as it provides the signature for the resulting composite function.

  #### Returns (<R>(a) => R)

  R function obtained by composing the argument functions from right to left. For example, `compose(f, g, h)` is identical to doing `(...args) => f(g(h(...args)))`.

  - - <R>(a): R

    - #### Type Parameters

      - R

      #### Parameters

      - a: R

      #### Returns R

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:703
- compose<F>(f): F

- #### Type Parameters

  - F extends Function

  #### Parameters

  - f: F

  #### Returns F

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:705
- compose<A, R>(f1, f2): Func0<R>

- #### Type Parameters

  - A
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: A

        #### Returns R

  - f2: Func0<A>

  #### Returns Func0<R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:708
- compose<A, T1, R>(f1, f2): Func1<T1, R>

- #### Type Parameters

  - A
  - T1
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: A

        #### Returns R

  - f2: Func1<T1, A>

  #### Returns Func1<T1, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:709
- compose<A, T1, T2, R>(f1, f2): Func2<T1, T2, R>

- #### Type Parameters

  - A
  - T1
  - T2
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: A

        #### Returns R

  - f2: Func2<T1, T2, A>

  #### Returns Func2<T1, T2, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:713
- compose<A, T1, T2, T3, R>(f1, f2): Func3<T1, T2, T3, R>

- #### Type Parameters

  - A
  - T1
  - T2
  - T3
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: A

        #### Returns R

  - f2: Func3<T1, T2, T3, A>

  #### Returns Func3<T1, T2, T3, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:717
- compose<A, B, R>(f1, f2, f3): Func0<R>

- #### Type Parameters

  - A
  - B
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: B

        #### Returns R

  - f2: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f3: Func0<A>

  #### Returns Func0<R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:723
- compose<A, B, T1, R>(f1, f2, f3): Func1<T1, R>

- #### Type Parameters

  - A
  - B
  - T1
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: B

        #### Returns R

  - f2: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f3: Func1<T1, A>

  #### Returns Func1<T1, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:728
- compose<A, B, T1, T2, R>(f1, f2, f3): Func2<T1, T2, R>

- #### Type Parameters

  - A
  - B
  - T1
  - T2
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: B

        #### Returns R

  - f2: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f3: Func2<T1, T2, A>

  #### Returns Func2<T1, T2, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:733
- compose<A, B, T1, T2, T3, R>(f1, f2, f3): Func3<T1, T2, T3, R>

- #### Type Parameters

  - A
  - B
  - T1
  - T2
  - T3
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: B

        #### Returns R

  - f2: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f3: Func3<T1, T2, T3, A>

  #### Returns Func3<T1, T2, T3, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:738
- compose<A, B, C, R>(f1, f2, f3, f4): Func0<R>

- #### Type Parameters

  - A
  - B
  - C
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: C

        #### Returns R

  - f2: ((a) => C)
    - - (a): C

      - #### Parameters

        - a: B

        #### Returns C

  - f3: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f4: Func0<A>

  #### Returns Func0<R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:745
- compose<A, B, C, T1, R>(f1, f2, f3, f4): Func1<T1, R>

- #### Type Parameters

  - A
  - B
  - C
  - T1
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: C

        #### Returns R

  - f2: ((a) => C)
    - - (a): C

      - #### Parameters

        - a: B

        #### Returns C

  - f3: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f4: Func1<T1, A>

  #### Returns Func1<T1, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:751
- compose<A, B, C, T1, T2, R>(f1, f2, f3, f4): Func2<T1, T2, R>

- #### Type Parameters

  - A
  - B
  - C
  - T1
  - T2
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: C

        #### Returns R

  - f2: ((a) => C)
    - - (a): C

      - #### Parameters

        - a: B

        #### Returns C

  - f3: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f4: Func2<T1, T2, A>

  #### Returns Func2<T1, T2, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:757
- compose<A, B, C, T1, T2, T3, R>(f1, f2, f3, f4): Func3<T1, T2, T3, R>

- #### Type Parameters

  - A
  - B
  - C
  - T1
  - T2
  - T3
  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: C

        #### Returns R

  - f2: ((a) => C)
    - - (a): C

      - #### Parameters

        - a: B

        #### Returns C

  - f3: ((a) => B)
    - - (a): B

      - #### Parameters

        - a: A

        #### Returns B

  - f4: Func3<T1, T2, T3, A>

  #### Returns Func3<T1, T2, T3, R>

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:763
- compose<R>(f1, ...funcs): ((...args) => R)

- #### Type Parameters

  - R

  #### Parameters

  - f1: ((b) => R)
    - - (b): R

      - #### Parameters

        - b: any

        #### Returns R

  - `Rest` ...funcs: Function[]

  #### Returns ((...args) => R)

  - - (...args): R

    - #### Parameters

      - `Rest` ...args: any[]

      #### Returns R

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:771
- compose<R>(...funcs): ((...args) => R)

- #### Type Parameters

  - R

  #### Parameters

  - `Rest` ...funcs: Function[]

  #### Returns ((...args) => R)

  - - (...args): R

    - #### Parameters

      - `Rest` ...args: any[]

      #### Returns R

  - Defined in common/temp/node_modules/.pnpm/redux@4.2.1/node_modules/redux/index.d.ts:776