From 4771e0008dd26eadbb7eaff64255a6ec914fdadb Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Mon, 10 Jul 2017 19:43:21 +0200 Subject: Better typescript typing for a better world --- shared/models/users/index.ts | 4 ++++ shared/models/users/user-create.model.ts | 5 +++++ shared/models/users/user-role.type.ts | 1 + shared/models/users/user-update.model.ts | 4 ++++ shared/models/users/user.model.ts | 10 ++++++++++ 5 files changed, 24 insertions(+) create mode 100644 shared/models/users/index.ts create mode 100644 shared/models/users/user-create.model.ts create mode 100644 shared/models/users/user-role.type.ts create mode 100644 shared/models/users/user-update.model.ts create mode 100644 shared/models/users/user.model.ts (limited to 'shared/models/users') diff --git a/shared/models/users/index.ts b/shared/models/users/index.ts new file mode 100644 index 000000000..414aaab08 --- /dev/null +++ b/shared/models/users/index.ts @@ -0,0 +1,4 @@ +export * from './user.model' +export * from './user-create.model' +export * from './user-update.model' +export * from './user-role.type' diff --git a/shared/models/users/user-create.model.ts b/shared/models/users/user-create.model.ts new file mode 100644 index 000000000..2cddcdcb0 --- /dev/null +++ b/shared/models/users/user-create.model.ts @@ -0,0 +1,5 @@ +export interface UserCreate { + username: string + password: string + email: string +} diff --git a/shared/models/users/user-role.type.ts b/shared/models/users/user-role.type.ts new file mode 100644 index 000000000..b38c4c8c3 --- /dev/null +++ b/shared/models/users/user-role.type.ts @@ -0,0 +1 @@ +export type UserRole = 'admin' | 'user' diff --git a/shared/models/users/user-update.model.ts b/shared/models/users/user-update.model.ts new file mode 100644 index 000000000..8b9abfb15 --- /dev/null +++ b/shared/models/users/user-update.model.ts @@ -0,0 +1,4 @@ +export interface UserUpdate { + displayNSFW?: boolean + password?: string +} diff --git a/shared/models/users/user.model.ts b/shared/models/users/user.model.ts new file mode 100644 index 000000000..5c48a17b2 --- /dev/null +++ b/shared/models/users/user.model.ts @@ -0,0 +1,10 @@ +import { UserRole } from './user-role.type' + +export interface User { + id: number + username: string + email: string + displayNSFW: boolean + role: UserRole + createdAt: Date +} -- cgit v1.2.3