Function callThru

  • Constructs a function that invokes a call chain.

    Each pass in this chain is a function accepting argument(s) passed from the previous one.

    The value returned from the pass is treated the following way:

    • When a NextCall is returned, this instance is used to perform the class of the next pass.
    • When plain value returned, this value is passed to the next function as the only argument.
    • When a NextCall returned by the last pass, it is used to construct the outcome.
    • When a plain value returned by the last pass, it is used as outcome.
    • When the last pass in chain is never called an undefined (when nextSkip applied), or predefined value (when nextReturn applied) is returned.

    A NextCall instance returned the pass is responsible for next function call and may modify the call outcome.

    Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    Parameters

    • pass1: ((this, ...args1) => TReturn1)
        • (this, ...args1): TReturn1
        • Parameters

          • this: void
          • Rest ...args1: TArgs1

          Returns TReturn1

    Returns ((this, ...args1) => Out<TReturn1>)

      • (this, ...args1): Out<TReturn1>
      • Parameters

        • this: void
        • Rest ...args1: TArgs1

        Returns Out<TReturn1>

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    Returns ((this, ...args1) => Out<TReturn2, OrSkip<TReturn1>>)

      • (this, ...args1): Out<TReturn2, OrSkip<TReturn1>>
      • Parameters

        • this: void
        • Rest ...args1: TArgs1

        Returns Out<TReturn2, OrSkip<TReturn1>>

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    Returns ((this, ...args1) => Out<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>)

      • (this, ...args1): Out<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>
      • Parameters

        • this: void
        • Rest ...args1: TArgs1

        Returns Out<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn2]

    • TReturn4

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    Returns ((this, ...args1) => Out<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    Returns ((this, ...args1) => Out<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn6

    Returns ((this, ...args1) => Out<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    Returns ((this, ...args1) => Out<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    • TArgs8 extends any[] | [TReturn7]

    • TReturn8

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    • pass8: ((this, ...args) => TReturn8)
        • (this, ...args): TReturn8
        • Parameters

          • this: void
          • Rest ...args: TArgs8

          Returns TReturn8

    Returns ((this, ...args1) => Out<TReturn8, OrSkip<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    • TArgs8 extends any[] | [TReturn7]

    • TReturn8

    • TArgs9 extends any[] | [TReturn8]

    • TReturn9

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    • pass8: ((this, ...args) => TReturn8)
        • (this, ...args): TReturn8
        • Parameters

          • this: void
          • Rest ...args: TArgs8

          Returns TReturn8

    • pass9: ((this, ...args) => TReturn9)
        • (this, ...args): TReturn9
        • Parameters

          • this: void
          • Rest ...args: TArgs9

          Returns TReturn9

    Returns ((this, ...args1) => Out<TReturn9, OrSkip<TReturn8, OrSkip<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    • TArgs8 extends any[] | [TReturn7]

    • TReturn8

    • TArgs9 extends any[] | [TReturn8]

    • TReturn9

    • TArgs10 extends any[] | [TReturn9]

    • TReturn10

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    • pass8: ((this, ...args) => TReturn8)
        • (this, ...args): TReturn8
        • Parameters

          • this: void
          • Rest ...args: TArgs8

          Returns TReturn8

    • pass9: ((this, ...args) => TReturn9)
        • (this, ...args): TReturn9
        • Parameters

          • this: void
          • Rest ...args: TArgs9

          Returns TReturn9

    • pass10: ((this, ...args) => TReturn10)
        • (this, ...args): TReturn10
        • Parameters

          • this: void
          • Rest ...args: TArgs10

          Returns TReturn10

    Returns ((this, ...args1) => Out<TReturn10, OrSkip<TReturn9, OrSkip<TReturn8, OrSkip<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    • TArgs8 extends any[] | [TReturn7]

    • TReturn8

    • TArgs9 extends any[] | [TReturn8]

    • TReturn9

    • TArgs10 extends any[] | [TReturn9]

    • TReturn10

    • TArgs11 extends any[] | [TReturn10]

    • TReturn11

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    • pass8: ((this, ...args) => TReturn8)
        • (this, ...args): TReturn8
        • Parameters

          • this: void
          • Rest ...args: TArgs8

          Returns TReturn8

    • pass9: ((this, ...args) => TReturn9)
        • (this, ...args): TReturn9
        • Parameters

          • this: void
          • Rest ...args: TArgs9

          Returns TReturn9

    • pass10: ((this, ...args) => TReturn10)
        • (this, ...args): TReturn10
        • Parameters

          • this: void
          • Rest ...args: TArgs10

          Returns TReturn10

    • pass11: ((this, ...args) => TReturn11)
        • (this, ...args): TReturn11
        • Parameters

          • this: void
          • Rest ...args: TArgs11

          Returns TReturn11

    Returns ((this, ...args1) => Out<TReturn11, OrSkip<TReturn10, OrSkip<TReturn9, OrSkip<TReturn8, OrSkip<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    • TArgs8 extends any[] | [TReturn7]

    • TReturn8

    • TArgs9 extends any[] | [TReturn8]

    • TReturn9

    • TArgs10 extends any[] | [TReturn9]

    • TReturn10

    • TArgs11 extends any[] | [TReturn10]

    • TReturn11

    • TArgs12 extends any[] | [TReturn11]

    • TReturn12

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    • pass8: ((this, ...args) => TReturn8)
        • (this, ...args): TReturn8
        • Parameters

          • this: void
          • Rest ...args: TArgs8

          Returns TReturn8

    • pass9: ((this, ...args) => TReturn9)
        • (this, ...args): TReturn9
        • Parameters

          • this: void
          • Rest ...args: TArgs9

          Returns TReturn9

    • pass10: ((this, ...args) => TReturn10)
        • (this, ...args): TReturn10
        • Parameters

          • this: void
          • Rest ...args: TArgs10

          Returns TReturn10

    • pass11: ((this, ...args) => TReturn11)
        • (this, ...args): TReturn11
        • Parameters

          • this: void
          • Rest ...args: TArgs11

          Returns TReturn11

    • pass12: ((this, ...args) => TReturn12)
        • (this, ...args): TReturn12
        • Parameters

          • this: void
          • Rest ...args: TArgs12

          Returns TReturn12

    Returns ((this, ...args1) => Out<TReturn12, OrSkip<TReturn11, OrSkip<TReturn10, OrSkip<TReturn9, OrSkip<TReturn8, OrSkip<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>>>>>>)

  • Type Parameters

    • TArgs1 extends any[]

    • TReturn1

    • TArgs2 extends any[] | [TReturn1]

    • TReturn2

    • TArgs3 extends any[] | [TReturn2]

    • TReturn3

    • TArgs4 extends any[] | [TReturn3]

    • TReturn4

    • TArgs5 extends any[] | [TReturn4]

    • TReturn5

    • TArgs6 extends any[] | [TReturn5]

    • TReturn6

    • TArgs7 extends any[] | [TReturn6]

    • TReturn7

    • TArgs8 extends any[] | [TReturn7]

    • TReturn8

    • TArgs9 extends any[] | [TReturn8]

    • TReturn9

    • TArgs10 extends any[] | [TReturn9]

    • TReturn10

    • TArgs11 extends any[] | [TReturn10]

    • TReturn11

    • TArgs12 extends any[] | [TReturn11]

    • TReturn12

    • TArgs13 extends any[] | [TReturn12]

    • TReturn13

    Parameters

    • pass1: ((this, ...args) => TReturn1)
        • (this, ...args): TReturn1
        • Parameters

          • this: void
          • Rest ...args: TArgs1

          Returns TReturn1

    • pass2: ((this, ...args) => TReturn2)
        • (this, ...args): TReturn2
        • Parameters

          • this: void
          • Rest ...args: TArgs2

          Returns TReturn2

    • pass3: ((this, ...args) => TReturn3)
        • (this, ...args): TReturn3
        • Parameters

          • this: void
          • Rest ...args: TArgs3

          Returns TReturn3

    • pass4: ((this, ...args) => TReturn4)
        • (this, ...args): TReturn4
        • Parameters

          • this: void
          • Rest ...args: TArgs4

          Returns TReturn4

    • pass5: ((this, ...args) => TReturn5)
        • (this, ...args): TReturn5
        • Parameters

          • this: void
          • Rest ...args: TArgs5

          Returns TReturn5

    • pass6: ((this, ...args) => TReturn6)
        • (this, ...args): TReturn6
        • Parameters

          • this: void
          • Rest ...args: TArgs6

          Returns TReturn6

    • pass7: ((this, ...args) => TReturn7)
        • (this, ...args): TReturn7
        • Parameters

          • this: void
          • Rest ...args: TArgs7

          Returns TReturn7

    • pass8: ((this, ...args) => TReturn8)
        • (this, ...args): TReturn8
        • Parameters

          • this: void
          • Rest ...args: TArgs8

          Returns TReturn8

    • pass9: ((this, ...args) => TReturn9)
        • (this, ...args): TReturn9
        • Parameters

          • this: void
          • Rest ...args: TArgs9

          Returns TReturn9

    • pass10: ((this, ...args) => TReturn10)
        • (this, ...args): TReturn10
        • Parameters

          • this: void
          • Rest ...args: TArgs10

          Returns TReturn10

    • pass11: ((this, ...args) => TReturn11)
        • (this, ...args): TReturn11
        • Parameters

          • this: void
          • Rest ...args: TArgs11

          Returns TReturn11

    • pass12: ((this, ...args) => TReturn12)
        • (this, ...args): TReturn12
        • Parameters

          • this: void
          • Rest ...args: TArgs12

          Returns TReturn12

    • pass13: ((this, ...args) => TReturn13)
        • (this, ...args): TReturn13
        • Parameters

          • this: void
          • Rest ...args: TArgs13

          Returns TReturn13

    Returns ((this, ...args1) => Out<TReturn13, OrSkip<TReturn12, OrSkip<TReturn11, OrSkip<TReturn10, OrSkip<TReturn9, OrSkip<TReturn8, OrSkip<TReturn7, OrSkip<TReturn6, OrSkip<TReturn5, OrSkip<TReturn4, OrSkip<TReturn3, OrSkip<TReturn2, OrSkip<TReturn1>>>>>>>>>>>>>)

Generated using TypeDoc