package users import "time" type User struct { ID string `json:"id"` Username string `json:"username"` Email string `json:"email,omitempty"` Role string `json:"role"` DisplayName string `json:"display_name"` AvatarURL string `json:"avatar_url,omitempty"` IsActive bool `json:"is_active"` CreatedAt time.Time `json:"created_at"` UpdatedAt time.Time `json:"updated_at"` LastLoginAt time.Time `json:"last_login_at,omitempty"` } type CreateUserRequest struct { Username string `json:"username"` Password string `json:"password"` Email string `json:"email,omitempty"` Role string `json:"role,omitempty"` DisplayName string `json:"display_name,omitempty"` AvatarURL string `json:"avatar_url,omitempty"` IsActive *bool `json:"is_active,omitempty"` } type UpdateUserRequest struct { Role *string `json:"role,omitempty"` DisplayName *string `json:"display_name,omitempty"` AvatarURL *string `json:"avatar_url,omitempty"` IsActive *bool `json:"is_active,omitempty"` } type UpdateProfileRequest struct { DisplayName *string `json:"display_name,omitempty"` AvatarURL *string `json:"avatar_url,omitempty"` } type UpdatePasswordRequest struct { CurrentPassword string `json:"current_password,omitempty"` NewPassword string `json:"new_password"` } type ResetPasswordRequest struct { NewPassword string `json:"new_password"` } type ListUsersResponse struct { Items []User `json:"items"` }