This CL introduces the `EntityType` and `AttributeType` interfaces in
the autofill private API. These interfaces contain both the encoded type
name, and the type name as a human readable string.
The human readable strings will be used in the "Autofill with Ai"
section of chrome://settings, specifically in the add & edit dialogs.
The `EntityType` also contains 2 other properties: `addEntityString` and
`editEntityString`, which will also be used in the entity add & edit
dialogs.
These 2 interfaces will also be used by 2 other methods added in an
immediate follow-up CL: crrev.com/c/6244464.
This CL also introduces the `EntityInstanceWithLabels` interface, which
contains the bare minimum information needed to display an entity
instance.
The settings UI page can display dozens of entities, so the attributes
should only be fetched when a user is editing an entity.
This CL integrates the `EntityInstanceWithLabels` interface into the
current settings UI.
Bug: 393318055
Change-Id: I011a9f0fb470ad02512e901585c874ffe8711405
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6276067
Reviewed-by: Mohamed Amir Yosef <mamir@chromium.org>
Commit-Queue: Theo Cristea <theocristea@google.com>
Reviewed-by: Devlin Cronin <rdevlin.cronin@chromium.org>
Reviewed-by: Demetrios Papadopoulos <dpapad@chromium.org>
Reviewed-by: Jan Keitel <jkeitel@google.com>
Cr-Commit-Position: refs/heads/main@{#1425378}