What does TypeScript pipe operator mean when used with strings?

5.8k views Asked by At

I know about union types, but what does this pipe syntax mean?

let propName: "name" | "age" | "location";

Source: https://blogs.msdn.microsoft.com/typescript/2016/12/07/announcing-typescript-2-1/

2

There are 2 answers

1
KarolDepka On BEST ANSWER

To answer my own question: those are "String Literal Types" as in https://www.typescriptlang.org/docs/handbook/advanced-types.html#string-literal-types

String literal types allow you to specify the exact value a string must have. In practice string literal types combine nicely with union types, type guards, and type aliases. You can use these features together to get enum-like behavior with strings.

0
Laurent On

We call it pipeline operator. The experimental pipeline operator |> (currently at stage 1) allows the creation of chained function calls in a readable manner. Basically, the pipeline operator provides syntactic sugar on a function call with a single argument allowing you to write

'%21' |> decodeURI instead of decodeURI('%21').

Eg: This is how it works