# 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/contribute/docs/documentation-navigation-toc
# before making changes to this file, and add a member of the fuchsia.dev
# team as reviewer.
toc:
- title: "Overview"
  path: /docs/concepts/components/v2
- title: "Introduction to components"
  path: /docs/concepts/components/v2/introduction.md
- title: "Component manager"
  path: /docs/concepts/components/v2/component_manager.md
- title: "Component manifests"
  path: /docs/concepts/components/v2/component_manifests.md
- title: "Subpackaging"
  path: /docs/concepts/components/v2/subpackaging.md
- title: "Lifecycle"
  path: /docs/concepts/components/v2/lifecycle.md
- title: "Topology"
  path: /docs/concepts/components/v2/topology.md
- title: "Identifiers"
  path: /docs/concepts/components/v2/identifiers.md
- title: "Realms"
  path: /docs/concepts/components/v2/realms.md
- title: "Environments"
  path: /docs/concepts/components/v2/environments.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: "Driver runner"
      path: /docs/concepts/components/v2/driver_runner.md
    - title: "Starnix"
      path: /docs/concepts/components/v2/starnix.md
- title: "Configuration"
  path: /docs/concepts/components/configuration.md
- title: "Diagnostics"
  section:
  - title: "Lifecycle events"
    section:
    - title: "Overview"
      path: /docs/concepts/components/diagnostics/lifecycle_events/README.md
  - title: "Logs"
    section:
    - title: "Overview"
      path: /docs/concepts/components/diagnostics/logs/README.md
    - title: "Attributing LogSink connections"
      path: /docs/concepts/components/diagnostics/logs/attribution.md
- title: "Internals"
  section:
  - title: "Component manifest design principles"
    path: /docs/contribute/governance/rfcs/0093_component_manifest_design_principles.md
- title: "Analogies and Comparisons"
  section:
  - title: "Components vs. processes"
    path: /docs/concepts/components/v2/components_vs_processes.md
  - title: "Object-Oriented Design for Components"
    path: /docs/concepts/components/v2/components_as_classes.md

# TODO(https://fxbug.dev/42138988)
# - title: "Overview"
#   path: /docs/concepts/components/diagnostics/README.md

# TODO(https://fxbug.dev/42138979)
# - title: "ArchiveAccessor"
#   path: /docs/concepts/components/diagnostics/accessor.md

# TODO(https://fxbug.dev/42138984)
# - title: "Component Lifecycle"
#   path: /docs/concepts/components/diagnostics/lifecycle.md
  # TODO(https://fxbug.dev/42138983)
  # - title: "Overview"
  #   path: /docs/concepts/components/diagnostics/inspect/README.md

  # TODO(https://fxbug.dev/42138980)
  # - title: "Principles"
  #   path: /docs/concepts/components/diagnostics/inspect/principles.md


  # TODO(https://fxbug.dev/42138982)
  # - title: "Principles"
  #   path: /docs/concepts/components/diagnostics/logs/principles.md

  # TODO(https://fxbug.dev/42138983)
  # - title: "Severity"
  #   path: /docs/concepts/components/diagnostics/logs/severity.md
# TODO(https://fxbug.dev/42138989)
# - title: "Triage & Detect"
#   path: /docs/concepts/components/diagnostics/triage.md
