40 lines
869 B
TypeScript
40 lines
869 B
TypeScript
export interface User {
|
|
id: string; // UUID
|
|
email: string;
|
|
authentik_sub: string;
|
|
name?: string;
|
|
preferred_username?: string;
|
|
given_name?: string;
|
|
family_name?: string;
|
|
profile_picture_url?: string;
|
|
refresh_token?: string;
|
|
refresh_token_expires_at?: Date;
|
|
is_active: boolean;
|
|
last_login_at?: Date;
|
|
created_at: Date;
|
|
updated_at: Date;
|
|
preferences?: any; // JSONB
|
|
authentik_groups: string[];
|
|
}
|
|
|
|
export interface CreateUserData {
|
|
email: string;
|
|
authentik_sub: string;
|
|
name?: string;
|
|
preferred_username?: string;
|
|
given_name?: string;
|
|
family_name?: string;
|
|
profile_picture_url?: string;
|
|
authentik_groups?: string[];
|
|
}
|
|
|
|
export interface UpdateUserData {
|
|
name?: string;
|
|
preferred_username?: string;
|
|
given_name?: string;
|
|
family_name?: string;
|
|
profile_picture_url?: string;
|
|
is_active?: boolean;
|
|
preferences?: any;
|
|
}
|