Uma NamedTuple geralmente é criada com o literal de tupla nomeada:
tuple = {name: "Crystal", year: 2011} # NamedTuple(name: String, year: Int32)
tuple[:name] # => "Crystal" (String)
tuple[:year] # => 2011 (Int32)
Para denotar o tipo de uma tupla nomeada, você pode escrever:
# O tipo denotando uma tupla nomeada de x: Int32, y: String
NamedTuple(x: Int32, y: String)
Nas restrições de tipos, argumentos de tipo genérico e outros lugares onde se espera um tipo, você pode usar uma sintaxe mais curta, conforme explicado no capítulo sobre tipos:
# Um array de tuplas nomeadas de x: Int32, y: String
Array({x: Int32, y: String})