blob: e90d03bbf8cd3741e7ee74cd561a95170a828d2c [file] [log] [blame]
// Copyright 2017 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.modular;
using fuchsia.mem;
/// Defines the attributes for a Link when the Link is created.
struct CreateLinkInfo {
/// Passed as root_json argument to StoryProvider.CreateStoryWithInfo()
/// Link.Set() to set the value in the root link of the new Story's primary
/// module.
fuchsia.mem.Buffer initial_data;
/// If `allowed_types` is null, the Link contains JSON. No schema validation
/// is performed.
LinkAllowedTypes? allowed_types;
};
struct LinkAllowedTypes {
/// The Link must contain an Entity (see Link.SetEntity()) that has at least
/// one of `allowed_entity_types` in its `Entity.GetTypes()` return value.
///
/// If empty, allows any Entity type.
vector<string> allowed_entity_types;
};