blob: eec40aeab56e7c2c7265f9d76f0068c457263c32 [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;
};