From fa3f461add59f2233b512d536640842cf1ba3e24 Mon Sep 17 00:00:00 2001 From: Ilia Mashkov Date: Mon, 16 Mar 2026 13:30:09 +0300 Subject: [PATCH] feature(auth): create types --- src/features/auth/index.ts | 1 + src/features/auth/model/index.ts | 2 ++ src/features/auth/model/types/service.ts | 18 ++++++++++++++++++ src/features/auth/model/types/store.ts | 7 +++++++ 4 files changed, 28 insertions(+) create mode 100644 src/features/auth/model/index.ts create mode 100644 src/features/auth/model/types/service.ts create mode 100644 src/features/auth/model/types/store.ts diff --git a/src/features/auth/index.ts b/src/features/auth/index.ts index 40118e9..eae9d71 100644 --- a/src/features/auth/index.ts +++ b/src/features/auth/index.ts @@ -1,2 +1,3 @@ export * from "./lib"; export * from "./ui"; +export * from "./model"; diff --git a/src/features/auth/model/index.ts b/src/features/auth/model/index.ts new file mode 100644 index 0000000..2bc5cbf --- /dev/null +++ b/src/features/auth/model/index.ts @@ -0,0 +1,2 @@ +export * from "./types/service"; +export * from "./types/store"; diff --git a/src/features/auth/model/types/service.ts b/src/features/auth/model/types/service.ts new file mode 100644 index 0000000..2c735cb --- /dev/null +++ b/src/features/auth/model/types/service.ts @@ -0,0 +1,18 @@ +import type { User } from "entities/User"; + +export interface AuthResponse { + /** + * Access token for the authenticated user. + */ + accessToken: string; + /** + * User object associated with the access token. + */ + user: User; +} + +export type AuthStatus = + | "idle" + | "loading" + | "authenticated" + | "unauthenticated"; diff --git a/src/features/auth/model/types/store.ts b/src/features/auth/model/types/store.ts new file mode 100644 index 0000000..0186b1d --- /dev/null +++ b/src/features/auth/model/types/store.ts @@ -0,0 +1,7 @@ +import type { User } from "entities/User"; +import type { AuthStatus } from "./service"; + +export interface AuthStore { + user?: User; + status?: AuthStatus; +}