// Copyright 2020 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;

const uint32 MAX_FACET_NAME_LENGTH = 100;
const uint32 MAX_CHILD_NAME_LENGTH = 100;
const uint32 MAX_COLLECTION_NAME_LENGTH = 100;
const uint32 MAX_RESOLVER_NAME_LENGTH = 100;
const uint32 MAX_RUNNER_NAME_LENGTH = 100;
const uint32 MAX_STORAGE_NAME_LENGTH = 100;
const uint32 MAX_EVENT_NAME_LENGTH = 100;
const uint32 MAX_ENVIRONMENT_NAME_LENGTH = 100;
const uint32 MAX_PATH_LENGTH = 1024;
const uint32 MAX_MONIKER_LENGTH = 4096;
const uint32 MAX_URL_SCHEME_LENGTH = 100;
