UNPKG

@descope/sdk-helpers

Version:
131 lines (121 loc) 45.4 kB
declare function compose<Input, A1>(fn1: (input: Input) => A1): (input: Input) => A1; declare function compose<Input, A1, A2>(fn1: (input: Input) => A1, fn2: (input: A1) => A2): (input: Input) => A2; declare function compose<Input, A1, A2, A3>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3): (input: Input) => A3; declare function compose<Input, A1, A2, A3, A4>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4): (input: Input) => A4; declare function compose<Input, A1, A2, A3, A4, A5>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5): (input: Input) => A5; declare function compose<Input, A1, A2, A3, A4, A5, A6>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6): (input: Input) => A6; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7): (input: Input) => A7; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8): (input: Input) => A8; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9): (input: Input) => A9; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10): (input: Input) => A10; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11): (input: Input) => A11; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12): (input: Input) => A12; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13): (input: Input) => A13; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14): (input: Input) => A14; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15): (input: Input) => A15; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16): (input: Input) => A16; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17): (input: Input) => A17; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18): (input: Input) => A18; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19): (input: Input) => A19; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20): (input: Input) => A20; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21): (input: Input) => A21; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22): (input: Input) => A22; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23): (input: Input) => A23; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24): (input: Input) => A24; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25): (input: Input) => A25; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26): (input: Input) => A26; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27): (input: Input) => A27; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28): (input: Input) => A28; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29): (input: Input) => A29; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30): (input: Input) => A30; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31): (input: Input) => A31; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32): (input: Input) => A32; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33): (input: Input) => A33; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34): (input: Input) => A34; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35): (input: Input) => A35; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36): (input: Input) => A36; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37): (input: Input) => A37; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38): (input: Input) => A38; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39): (input: Input) => A39; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40): (input: Input) => A40; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41): (input: Input) => A41; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42): (input: Input) => A42; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43): (input: Input) => A43; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44): (input: Input) => A44; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44, fn45: (input: A44) => A45): (input: Input) => A45; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44, fn45: (input: A44) => A45, fn46: (input: A45) => A46): (input: Input) => A46; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44, fn45: (input: A44) => A45, fn46: (input: A45) => A46, fn47: (input: A46) => A47): (input: Input) => A47; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44, fn45: (input: A44) => A45, fn46: (input: A45) => A46, fn47: (input: A46) => A47, fn48: (input: A47) => A48): (input: Input) => A48; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44, fn45: (input: A44) => A45, fn46: (input: A45) => A46, fn47: (input: A46) => A47, fn48: (input: A47) => A48, fn49: (input: A48) => A49): (input: Input) => A49; declare function compose<Input, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50>(fn1: (input: Input) => A1, fn2: (input: A1) => A2, fn3: (input: A2) => A3, fn4: (input: A3) => A4, fn5: (input: A4) => A5, fn6: (input: A5) => A6, fn7: (input: A6) => A7, fn8: (input: A7) => A8, fn9: (input: A8) => A9, fn10: (input: A9) => A10, fn11: (input: A10) => A11, fn12: (input: A11) => A12, fn13: (input: A12) => A13, fn14: (input: A13) => A14, fn15: (input: A14) => A15, fn16: (input: A15) => A16, fn17: (input: A16) => A17, fn18: (input: A17) => A18, fn19: (input: A18) => A19, fn20: (input: A19) => A20, fn21: (input: A20) => A21, fn22: (input: A21) => A22, fn23: (input: A22) => A23, fn24: (input: A23) => A24, fn25: (input: A24) => A25, fn26: (input: A25) => A26, fn27: (input: A26) => A27, fn28: (input: A27) => A28, fn29: (input: A28) => A29, fn30: (input: A29) => A30, fn31: (input: A30) => A31, fn32: (input: A31) => A32, fn33: (input: A32) => A33, fn34: (input: A33) => A34, fn35: (input: A34) => A35, fn36: (input: A35) => A36, fn37: (input: A36) => A37, fn38: (input: A37) => A38, fn39: (input: A38) => A39, fn40: (input: A39) => A40, fn41: (input: A40) => A41, fn42: (input: A41) => A42, fn43: (input: A42) => A43, fn44: (input: A43) => A44, fn45: (input: A44) => A45, fn46: (input: A45) => A46, fn47: (input: A46) => A47, fn48: (input: A47) => A48, fn49: (input: A48) => A49, fn50: (input: A49) => A50): (input: Input) => A50; type FlowConfig = { projectId: string; flowId: string; baseUrl?: string; baseStaticUrl?: string; baseCdnUrl?: string; refreshCookieName?: string; theme?: string; 'style-id'?: string; locale?: string; form?: Record<string, any> | string; client?: Record<string, any> | string; tenant?: string; outboundAppId?: string; }; /** * Builds a `<descope-wc>` flow template, mapping each config entry to a * kebab-cased attribute. Object values (e.g. `client` / `form` flow inputs) are * JSON-stringified; strings pass through. Shared by all widgets so a single * place controls how widget flows are started. */ declare const createFlowTemplate: (flowConfig?: FlowConfig) => HTMLTemplateElement; declare const createTemplate: (templateString: string) => HTMLTemplateElement; declare const pathJoin: (...paths: string[]) => string; declare const compareArrays: (array1: any[], array2: any[]) => boolean; declare const withMemCache: <I extends any[], O>(fn: (...args: I) => O) => (...args: I) => O; declare const kebabCase: (str: string) => string; declare const isObjEmpty: (obj: object) => boolean; declare const pluralize: (amount: number) => (strings: TemplateStringsArray, ...expressions: (string | number)[][]) => string; declare const debounce: (fn: Function, ms?: number) => (this: any, ...args: any[]) => void; declare const isPlainObject: (obj: unknown) => boolean; type Mixin = (superclass: CustomElementConstructor) => CustomElementConstructor; declare const createSingletonMixin: <T extends Mixin>(mixin: T) => T; declare const createIsChanged: <T extends Record<string, any>>(state: T, prevState: T) => (attrName: keyof T) => boolean; type StateObject = Record<string, any>; type UpdateStateCb<T> = (state: T) => Partial<T>; type SubscribeCb<T> = (state: T, prevState: T, isChanged: ReturnType<typeof createIsChanged>) => void | Promise<void>; type IsChanged<T> = Parameters<SubscribeCb<T>>[2]; declare class State<T extends StateObject> { #private; constructor(init?: T, { forceUpdate }?: { forceUpdate?: boolean; }); get current(): T; update: (newState: Partial<T> | UpdateStateCb<T>) => void; subscribe(cb: SubscribeCb<T>): string; unsubscribe(token: string): boolean; unsubscribeAll(): boolean; } declare const decodeJWT: (token: string) => any; declare const escapeCsvValue: (value: unknown) => string; declare const generateCsv: (records: Record<string, unknown>[], columns: { header: string; path: string; }[]) => string; declare const downloadCsv: (csv: string, filename: string) => void; type Locale = { locale: string; fallback: string; }; /** * Resolves the user-facing locale, shared by the web-component flow runtime and the widget mixins * so both resolve locale identically. * * Order: * 1. Explicit locale argument (lowercased), used as its own fallback * 2. navigator.language (lowercased), with the language part as fallback for 'xx-YY' forms * 3. Empty strings */ declare function getUserLocale(locale: string): Locale; export { type FlowConfig, type IsChanged, type Locale, State, type SubscribeCb, compareArrays, compose, createFlowTemplate, createSingletonMixin, createTemplate, debounce, decodeJWT, downloadCsv, escapeCsvValue, generateCsv, getUserLocale, isObjEmpty, isPlainObject, kebabCase, pathJoin, pluralize, withMemCache };