I have a function that returns a Promise on success or a string on error.

```
async create(createDebtorDto: CreateDebtorDto): Promise<Debtor> {
    console.log("createDebtorDto", createDebtorDto)
    try{
      const createdDebtor = new this.debtorModel(createDebtorDto);
      return await createdDebtor.save();
    }catch(err){
      console.log('err', err)
        return `Unable to create debtor ${err}`;
    }
  }

```

When I try transpile this code, I get the following error:

`src/debtors/debtors.service.ts(19,5): error TS2322: Type 'string' is not assignable to type 'Debtor'.`

It seems as though I need to say that the function returns a Promise or a String but that seems to void the point of having static typing.

Can I say on success, return a promise, on error return a string?