def wind(direction: Number,<EOL>speed: Number,<EOL>gust: Number,<EOL>vardir: typing.List[Number] = None,  <EOL>unit: str = '<STR_LIT>',<EOL>cardinals: bool = True,<EOL>spoken: bool = False) -> str:
ret = '<STR_LIT>'<EOL>target = '<STR_LIT>' if spoken else '<STR_LIT>'<EOL>if direction:<EOL><INDENT>if direction.repr in WIND_DIR_REPR:<EOL><INDENT>ret += WIND_DIR_REPR[direction.repr]<EOL><DEDENT>elif direction.value is None:<EOL><INDENT>ret += direction.repr<EOL><DEDENT>else:<EOL><INDENT>if cardinals:<EOL><INDENT>ret += get_cardinal_direction(direction.value) + '<STR_LIT:->'  <EOL><DEDENT>ret += getattr(direction, target)<EOL><DEDENT><DEDENT>if vardir and isinstance(vardir, list):<EOL><INDENT>vardir = [getattr(var, target) for var in vardir]<EOL>ret += '<STR_LIT>'.format(*vardir)<EOL><DEDENT>if speed and speed.value:<EOL><INDENT>ret += f'<STR_LIT>'<EOL><DEDENT>if gust and gust.value:<EOL><INDENT>ret += f'<STR_LIT>'<EOL><DEDENT>return ret<EOL>
Format wind elements into a readable sentence

Returns the translation string

Ex: NNE-020 (variable 010 to 040) at 14kt gusting to 20kt