Consider the following TypeScript code:
type operator = (input:T) => T const pipe = (...operators:operator[]) => (input:T):T