blob: 4199df36ee08d557772b39c5b671e50f476205cf [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.pkg;
/// A content-addressed merkle root that describes an artifact that is tracked by the
/// packaging system.
struct BlobId {
array<uint8>:32 merkle_root;
};
/// A tuple of the content-addressed merkle root for an artifact, along with that
/// artifact's length in bytes.
struct BlobInfo {
BlobId blob_id;
uint64 length;
};
/// The URL for a package.
/// https://fuchsia.dev/fuchsia-src/concepts/storage/package_url
struct PackageUrl {
string:2048 url;
};
/// A single entry in the package index.
struct PackageIndexEntry {
PackageUrl package_url;
BlobId meta_far_blob_id;
};