async _baseUpsert(params) {

      if (!this.tableCreated) {
        throw new Error('Table is not created yet');
      }
      
      try {
        const data = await this.client.updateItem(params);
        return new DynamoItem(
          data.Attributes.key.S,
          Number(data.Attributes.points.N),
          Number(data.Attributes.expire.N)
        );
      } catch (err) {
        //console.log('_baseUpsert', params, err);
        throw err;
      }
    }
Asynchronously upserts data into the table. params is a DynamoDB params object.

@param {Object} params - The parameters for the upsert operation.
@throws {Error} Throws an error if the table is not created yet.
@return {DynamoItem} Returns a DynamoItem object with the updated data.