UNPKG

denwa-web-shared

Version:

A shared library for Next.js App Router projects containing reusable components, hooks, schemas, and utilities.

36 lines (35 loc) • 1.47 kB
/** Пара токенов одной стороны (access или refresh). */ export interface SessionToken { token: string; exp?: number; } export interface SessionTokens { accessToken?: SessionToken; refreshToken?: SessionToken; } export interface SessionUser { id: string; profileId: string; phone?: string | null; email?: string | null; name?: string | null; surname?: string | null; roles: string[]; maxRolePriority?: number | null; tokens?: SessionTokens; } export declare const sessionTokensSchema: import('../..').SchemaLike<SessionTokens>; export declare const sessionUserSchema: import('../..').SchemaLike<SessionUser>; /** * Парсит сырое значение сессионной куки (JSON) и валидирует схемой. * Возвращает null при отсутствии значения или невалидных данных. */ export declare const parseSessionCookie: (rawValue: string | null | undefined) => SessionUser | null; /** * Инициалы пользователя: ФамилияИмя → «ИФ», при отсутствии — первая буква email. */ export declare const getUserInitials: (user?: SessionUser | null) => string; /** * Отображаемое имя: «Фамилия Имя», при отсутствии — email или телефон. */ export declare const getUserDisplayName: (user?: SessionUser | null) => string;