blob: 27a76eb3b95901b3c2696d00ec9d93bcc8ddd1b6 [file] [log] [blame]
Avi Drissman4a8573c2022-09-09 19:35:541// Copyright 2015 The Chromium Authors
anthonyvdb50a7cb2015-07-13 15:42:032// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_PROFILES_PROFILE_ATTRIBUTES_ENTRY_H_
6#define CHROME_BROWSER_PROFILES_PROFILE_ATTRIBUTES_ENTRY_H_
7
avib896c712015-12-26 02:10:438#include <stddef.h>
9
WC Leung9fd803f2017-08-23 08:27:1310#include <memory>
Arthur Sonzognife132ee2024-01-15 11:01:0411#include <optional>
anthonyvdb50a7cb2015-07-13 15:42:0312#include <string>
13
David Rogerf90eb302021-07-30 08:02:5314#include "base/containers/flat_set.h"
Monica Basta2288a0e32019-09-26 13:29:3215#include "base/feature_list.h"
anthonyvdb50a7cb2015-07-13 15:42:0316#include "base/files/file_path.h"
WC Leung9fd803f2017-08-23 08:27:1317#include "base/gtest_prod_util.h"
Keishi Hattori0e45c022021-11-27 09:25:5218#include "base/memory/raw_ptr.h"
anthonyvdb50a7cb2015-07-13 15:42:0319#include "base/time/time.h"
WC Leung9fd803f2017-08-23 08:27:1320#include "base/values.h"
Amelie Schneider80c2f0b02024-07-09 08:00:3321#include "chrome/browser/profiles/profile_avatar_icon_util.h"
Mikel Astizbee274d2024-12-16 19:54:3122#include "google_apis/gaia/gaia_id.h"
Alex Ilin10200182020-07-29 14:19:3723#include "third_party/skia/include/core/SkColor.h"
Alex Ilina67b0472020-08-06 12:11:1024#include "ui/gfx/image/image.h"
anthonyvdb50a7cb2015-07-13 15:42:0325
Thomas Tanglc67ace42019-06-07 19:31:5026class PrefRegistrySimple;
WC Leung9fd803f2017-08-23 08:27:1327class PrefService;
Alex Ilinbb08a0d2021-07-08 09:37:2428class ProfileAttributesStorage;
Jan Krcal5fa5da82020-11-11 16:10:5729struct ProfileThemeColors;
anthonyvdb50a7cb2015-07-13 15:42:0330
Amelie Schneider7b036dd2024-07-15 11:08:4831inline constexpr int kDefaultSizeForPlaceholderAvatar = 74;
32
Monica Basta9ca47042019-09-16 17:36:5133enum class SigninState {
34 kNotSignedIn,
35 kSignedInWithUnconsentedPrimaryAccount,
36 kSignedInWithConsentedPrimaryAccount,
37};