UNPKG

lh-sdk

Version:

LassondeHacks REST API SDK in Typescript

66 lines (50 loc) 1.47 kB
import { Model, SDK, Response } from './common'; module Team { export interface TeamInterface { id: number; username: string; password: string; } interface CreateUserResponse extends Response { user: UserInterface; } interface GetUserInfoResponse extends Response { user: UserInterface; } export async function create(user: UserInterface): Promise<Instance> { try { let res = <CreateUserResponse>await SDK.getInstance().POST("user", user); return new Instance(res.user); } catch (err) { return null; } } export async function getInfo(): Promise<Instance> { try { let res = <GetUserInfoResponse> await SDK.getInstance().GET("user/info"); if (res.success) { return new Instance(res.user); } else { return null; } } catch (err) { return null; } } export class Instance implements UserInterface, Model { public id: number; public username: string; public password: string; constructor(user: UserInterface) { this.username = user.username; this.password = user.password; } public save(): boolean { return true; } public delete(): boolean { return true; } } } export = Team;