This is a list of all the places where we represent manifest data in our codebase.
blink.mojom.Manifest
Mojo IPC representation between Blink and the browser. Output of the Blink manifest parser.
blink::Manifest
Contains subtypes representing certain fields of the manifest that need to be duplicated in handwritten C++ for assorted reasons. Used to be a full duplicate manifest definition until https://crbug.com/1233362.
WebAppInstallInfo
Used for installation and updates.
web_app::WebApp
Installed web app representation in RAM.
web_app.WebAppProto
Installed web app representation on disk.
sync_pb.WebAppSpecificsProto
Installed web app representation in sync cloud.
webapps.mojom.WebPageMetadata
Manifest data provided by an HTML document.
web_app::ParseOfflineManifest()
Custom JSON + PNG format for bundling WebAppInstallInfo data on disk for offline default web app installation.
WebApkInfo
Web app installation data that was packaged in an APK.
payments::WebAppInstallationInfo
Payments code doesn't live under /chrome/browser, they have their own parser and representation.
apps.proto.AppProvisioningResponse
Apps Preload Service server communication proto containing default web app install data.