• Compose functions.

    Example

    const add = (a: number) => (b: number) => b + a
    const sub = (a: number) => (b: number) => b - a

    const addTwoSubOne = compose(add(2), sub(1))

    addTwoSubOne(10) === 11

    Type Parameters

    • A extends readonly unknown[]

    • B

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    Returns ((...a: A) => B)

      • (...a: A): B
      • Parameters

        • Rest ...a: A

        Returns B

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    Returns ((...a: A) => C)

      • (...a: A): C
      • Parameters

        • Rest ...a: A

        Returns C

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    Returns ((...a: A) => D)

      • (...a: A): D
      • Parameters

        • Rest ...a: A

        Returns D

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    • E

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    • de: ((d: D) => E)
        • (d: D): E
        • Parameters

          • d: D

          Returns E

    Returns ((...a: A) => E)

      • (...a: A): E
      • Parameters

        • Rest ...a: A

        Returns E

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    • E

    • F

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    • de: ((d: D) => E)
        • (d: D): E
        • Parameters

          • d: D

          Returns E

    • ef: ((e: E) => F)
        • (e: E): F
        • Parameters

          • e: E

          Returns F

    Returns ((...a: A) => F)

      • (...a: A): F
      • Parameters

        • Rest ...a: A

        Returns F

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    • E

    • F

    • G

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    • de: ((d: D) => E)
        • (d: D): E
        • Parameters

          • d: D

          Returns E

    • ef: ((e: E) => F)
        • (e: E): F
        • Parameters

          • e: E

          Returns F

    • fg: ((f: F) => G)
        • (f: F): G
        • Parameters

          • f: F

          Returns G

    Returns ((...a: A) => G)

      • (...a: A): G
      • Parameters

        • Rest ...a: A

        Returns G

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    • E

    • F

    • G

    • H

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    • de: ((d: D) => E)
        • (d: D): E
        • Parameters

          • d: D

          Returns E

    • ef: ((e: E) => F)
        • (e: E): F
        • Parameters

          • e: E

          Returns F

    • fg: ((f: F) => G)
        • (f: F): G
        • Parameters

          • f: F

          Returns G

    • gh: ((g: G) => H)
        • (g: G): H
        • Parameters

          • g: G

          Returns H

    Returns ((...a: A) => H)

      • (...a: A): H
      • Parameters

        • Rest ...a: A

        Returns H

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    • E

    • F

    • G

    • H

    • I

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    • de: ((d: D) => E)
        • (d: D): E
        • Parameters

          • d: D

          Returns E

    • ef: ((e: E) => F)
        • (e: E): F
        • Parameters

          • e: E

          Returns F

    • fg: ((f: F) => G)
        • (f: F): G
        • Parameters

          • f: F

          Returns G

    • gh: ((g: G) => H)
        • (g: G): H
        • Parameters

          • g: G

          Returns H

    • hi: ((h: H) => I)
        • (h: H): I
        • Parameters

          • h: H

          Returns I

    Returns ((...a: A) => I)

      • (...a: A): I
      • Parameters

        • Rest ...a: A

        Returns I

  • Type Parameters

    • A extends readonly unknown[]

    • B

    • C

    • D

    • E

    • F

    • G

    • H

    • I

    • J

    Parameters

    • ab: ((...a: A) => B)
        • (...a: A): B
        • Parameters

          • Rest ...a: A

          Returns B

    • bc: ((b: B) => C)
        • (b: B): C
        • Parameters

          • b: B

          Returns C

    • cd: ((c: C) => D)
        • (c: C): D
        • Parameters

          • c: C

          Returns D

    • de: ((d: D) => E)
        • (d: D): E
        • Parameters

          • d: D

          Returns E

    • ef: ((e: E) => F)
        • (e: E): F
        • Parameters

          • e: E

          Returns F

    • fg: ((f: F) => G)
        • (f: F): G
        • Parameters

          • f: F

          Returns G

    • gh: ((g: G) => H)
        • (g: G): H
        • Parameters

          • g: G

          Returns H

    • hi: ((h: H) => I)
        • (h: H): I
        • Parameters

          • h: H

          Returns I

    • ij: ((i: I) => J)
        • (i: I): J
        • Parameters

          • i: I

          Returns J

    Returns ((...a: A) => J)

      • (...a: A): J
      • Parameters

        • Rest ...a: A

        Returns J

Generated using TypeDoc