All files / lib/models UserSession.ts

0% Statements 0/9
100% Branches 0/0
0% Functions 0/1
0% Lines 0/9
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35                                                                     
import * as uuid from 'uuid';
import * as dynogels from 'drandx-dynogels';
import * as joi from 'joi';

import { BaseModel } from './BaseModel';
import { globalConst, awsConfig } from "../config/db/appVariables";

dynogels.AWS.config.update(awsConfig);    

export class UserSession extends BaseModel {
  public userId: string;
  public deviceId: string;
  public createdAt: number;
  public updatedAt: number;  
  public pushToken: string;
  
  constructor() {
    super();
  }
 
  public model: dynogels.Model = dynogels.define(`${globalConst.stage}_users_sessions`, {
    hashKey: 'userId',
    rangeKey: 'deviceId',
    timestamps: false,
    schema: {
      userId: joi.string(),
      deviceId: joi.string(),
      createdAt: joi.number(),
      updatedAt: joi.number(),      
      pushToken: joi.string(),
    },
    tableName: `${globalConst.stage}_users_sessions`,
  });
}