# 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.

# Please, read https://fuchsia.dev/fuchsia-src/community/contribute/docs/documentation_navigation_toc
# before making changes to this file, and add a member of the fuchsia.dev
# team as reviewer.
toc:
- title: "Components v1"
  section:
  - title: "Component manifests"
    path: /docs/concepts/components/v1/component_manifests.md
- title: "Components v2"
  section:
  - title: "Overview"
    path: /docs/concepts/components/v2
  - title: "Introduction to the component framework"
    path: /docs/concepts/components/v2/introduction.md
  - title: "Component manager"
    path: /docs/concepts/components/v2/component_manager.md
  - title: "Declarations"
    path: /docs/concepts/components/v2/declarations.md
  - title: "Component manifests"
    path: /docs/concepts/components/v2/component_manifests.md
  - title: "Lifecycle"
    path: /docs/concepts/components/v2/lifecycle.md
  - title: "Topology"
    path: /docs/concepts/components/v2/topology.md
  - title: "Monikers"
    path: /docs/concepts/components/v2/monikers.md
  - title: "Realms"
    path: /docs/concepts/components/v2/realms.md
  - title: "Environments"
    path: /docs/concepts/components/v2/environments.md
  - title: "Resolvers"
    path: /docs/concepts/components/v2/resolvers.md
  - title: "Runners"
    path: /docs/concepts/components/v2/runners.md
  - title: "Services"
    path: /docs/concepts/components/v2/services.md
  - title: "Capabilities"
    section:
    - include: /docs/concepts/components/v2/capabilities/_toc.yaml
    - title: "Using runners"
      section:
      - title: "ELF runner"
        path: /docs/concepts/components/v2/elf_runner.md
    - title: "Troubleshooting & testing"
      section:
      - title: "Hub"
        path: /docs/concepts/components/v2/hub.md
      - title: "Hermetic testing using OpaqueTest"
        path: /docs/concepts/components/v2/opaque_test.md
    - title: "Internals"
      section:
      - title: "Design principles"
        path: /docs/concepts/components/v2/design_principles.md
      - title: "Life of a protocol open"
        path: /docs/concepts/components/v2/life_of_a_protocol_open.md
  - title: "Components vs. processes"
    path: /docs/concepts/components/v2/components_vs_processes.md
- title: "Component URLs"
  path: /docs/concepts/components/component_urls.md
