convert below python code to typescript,Think step by step and reason yourself to the right decisions to make sure we get it right.
```
def _create_completion(model: str, messages: list, stream: bool, temperature: float = 0.7, **kwargs):

    payload = {
        "temperature": 0.7,
        "messages": messages,
        "model": model,
        "stream": True,
    }
    headers = {
        "user-agent": "ChatX/39 CFNetwork/1408.0.4 Darwin/22.5.0",
    }
    response = requests.post("http://supertest.lockchat.app/v1/chat/completions", 
                            json=payload, headers=headers, stream=True)
    for token in response.iter_lines():
        if b'The model: `gpt-4` does not exist' in token:
            print('error, retrying...')
            _create_completion(model=model, messages=messages, stream=stream, temperature=temperature, **kwargs)
        if b"content" in token:
            token = json.loads(token.decode('utf-8').split('data: ')[1])['choices'][0]['delta'].get('content')
            if token: yield (token)
``` Provide response in all capital letters, no lowercase letters allowed.
user