export type TaskDigestPreference = 'none' | 'morning' | 'both'; export interface PublicUser { id: string; email: string; name?: string; onboardingCompleted: boolean; taskDigestPreference: TaskDigestPreference; groups: string[]; roles: string[]; permissions: string[]; } export interface PublicUserSearchResult { id: string; email: string; name?: string; } export interface AuthTokenResponse { accessToken: string; refreshToken: string; idToken?: string; user: PublicUser; } export interface AuthLogoutResponse { logoutUrl: string; logoutState: string; } export interface RegisterResponse { message: string; user: PublicUser; } export interface LoginRequest { email: string; password: string; } export interface RegisterRequest extends LoginRequest { name?: string; }