blob: d98b1398fb0e3ba5807228c040083eabf97d55d9 [file] [log] [blame]
// Copyright 2021 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.component.decl;
using fuchsia.data;
/// A program declaration.
///
/// This declaration is set by executable components to designate the runner to
/// use and pass runner-specific program information to it.
///
/// To learn more about runners, see:
/// https://fuchsia.dev/fuchsia-src/glossary#runner
type Program = table {
/// The name of the runner to use to run the component. Must match a
/// `RunnerRegistration` in the component's environment.
1: runner name;
/// Information about the program to run when the component is executed. The
/// component manager provides the contents of this dictionary to the runner
/// when executing this program.
///
/// For instance, this might contain a path to the program's executable
/// image, or program arguments.
///
/// * The keys represent namespaced properties, delimited by ".".
/// * Properties may be nested in values, but only in the case of an object
/// vector.
2: info fuchsia.data.Dictionary;
};