{
  "version": "0.2.0-preview.1",
  "content_digest": "70ac710f4d22dce040e7ac593379ba8aca9dcb59a0b9c0f839819cae0e2bb721",
  "status": "preview",
  "authority": {
    "repository": "cloakedinc/design",
    "path": "packages/design-system",
    "catalog": "packages/design-system/catalog.json",
    "status": "preview"
  },
  "provenance": {
    "repo": "cloakedinc/automation",
    "commit": "f96f416e1c3bfbfaffcd155a88b87b18b8bb25f1",
    "path": "packages/design-system",
    "imported_spec_status": "approved"
  },
  "adaptations": [
    {
      "id": "button-content-gap",
      "status": "preview",
      "description": "Use the specification's 4px content gap instead of the inherited 8px implementation gap."
    },
    {
      "id": "keyboard-focus",
      "status": "preview",
      "description": "Add visible Button and Input keyboard focus and an overridable inset focus default for shared button resets, including FAQ cards and ListItem rows."
    },
    {
      "id": "supporting-text-contrast",
      "status": "preview",
      "description": "Map light secondary text to the existing grey-04-strong primitive for readable helper text on white and cream."
    },
    {
      "id": "danger-text-contrast",
      "status": "preview",
      "description": "Separate readable danger text/borders from destructive fills; preserve the primary danger-button fill and label pair."
    },
    {
      "id": "preview-status",
      "status": "preview",
      "description": "Local components, specs and token adaptations await human sign-off; upstream approved status is provenance only."
    },
    {
      "id": "motion-comparison-accessibility",
      "status": "preview",
      "description": "Preserve the original MotionShowcase comparisons while requiring explicit replay, responding to live reduced-motion changes, and keeping duration tracks usable on small screens."
    },
    {
      "id": "list-item-ownership",
      "status": "preview",
      "description": "List owns listitem wrappers for its content rows, while section labels stay outside the row count and standalone rows retain their existing semantics."
    },
    {
      "id": "card-delta-text-contrast",
      "status": "preview",
      "description": "Mix Card.Delta foregrounds from 60% existing tone solid and 40% primary text for readable contrast in both themes; preserve the four original tone fills."
    },
    {
      "id": "carousel-keyboard-access",
      "status": "preview",
      "description": "Keep all native-scrolling carousel slide controls exposed to assistive technology and keyboard navigation; pause autoplay while focus is inside the carousel."
    }
  ],
  "id": "list",
  "name": "List",
  "category": "Organization",
  "summary": "A rich list container that stacks rows with automatic hairlines, groups them with sections, and reveals extras inline via disclosure.",
  "documentation": {
    "summary": "A rich list container that stacks rows with automatic hairlines, groups them with sections, and reveals extras inline via disclosure.",
    "guidance": [
      {
        "heading": "Overview",
        "body": "The container for stacked `List.Item` rows — it draws an automatic hairline between adjacent rows\nand groups them with `List.Section`."
      },
      {
        "heading": "When to use",
        "body": "Reach for `List` any time you render a vertical run of rows that share separators — activity feeds,\nsettings, action lists. The container owns the dividers, so a row's own `divider` prop is ignored\ninside a `List`. See the [List.Item](/docs/cloaked-design-system-organization-list-item--docs) docs for the\nrow parts (leading, title, value, chevron, progress, selection).\n\n-   Sections whose bodies stay collapsed until tapped? Use `Accordion` (independent chrome) or\n    `List.Disclosure` for a single inline \"show more\" that shares these separators.\n-   A self-contained block of grouped content (heading + body + actions), not a row run? Use `Card`."
      }
    ],
    "usage": [],
    "examples": [],
    "source": "packages/design-system/src/components/organization/List/List.mdx",
    "status": "local-preview",
    "note": "Guidance is read from local documentation, originally imported from the frozen source. Platform assertions in guidance are not parity verification."
  },
  "source": {
    "path": "packages/design-system/src/components/organization/List/List.tsx",
    "code": "import { ListRoot } from './ListRoot/ListRoot';\nimport { ListDisclosure } from './ListDisclosure/ListDisclosure';\nimport { ListSection } from './ListSection/ListSection';\nimport { ListItem } from '../ListItem/ListItem';\n\nexport type { ListDisclosureProps } from './ListDisclosure/ListDisclosure';\nexport type { ListProps, ListSectionProps } from './types';\nexport type {\n    ListItemDividerMode,\n    ListItemEmptyProps,\n    ListItemIconProps,\n    ListItemInlineProgress,\n    ListItemPadding,\n    ListItemProgress,\n    ListItemProgressKind,\n    ListItemProgressProps,\n    ListItemProps,\n    ListItemRingProgress,\n    ListItemSelectionMode,\n    ListItemSelectionPlacement,\n    ListItemSize,\n    ListItemSelectionProps,\n    ListItemStatProps,\n    ListItemTone,\n} from '../ListItem/ListItem';\n\n/**\n * Rich list container. Stacks `List.Item` rows with an automatic hairline between\n * adjacent rows and groups them with `List.Section` (or a raw `Divider` escape\n * hatch). Works standalone, not only inside Card. Rows are plain `List.Item`s —\n * the container owns separators, so a row's own `divider` is ignored inside a List.\n */\nexport const List = Object.assign(ListRoot, {\n    Item: ListItem,\n    Disclosure: ListDisclosure,\n    Section: ListSection,\n});\n"
  },
  "spec": {
    "$schema": "../../../specs/component-spec.schema.json",
    "identity": {
      "name": "List",
      "status": "preview",
      "version": "1.3.0",
      "summary": "A rich list container that stacks rows with automatic hairlines, groups them with sections, and reveals extras inline via disclosure."
    },
    "parts": [
      {
        "id": "root",
        "label": "Root",
        "description": "List surface that owns separators between adjacent rows.",
        "required": true
      },
      {
        "id": "item",
        "label": "List.Item",
        "description": "Base row with leading, title, description, value, and trailing slots."
      },
      {
        "id": "section",
        "label": "List.Section",
        "description": "Labeled band that groups rows."
      },
      {
        "id": "disclosure",
        "label": "List.Disclosure",
        "description": "Show-more row that reveals extra rows inline. The trigger centers its label and chevron."
      },
      {
        "id": "selection",
        "label": "List.Item.Selection",
        "description": "Selection row with a check or radio control, trailing by default or replacing the leading icon via selectionPlacement='leading'."
      },
      {
        "id": "progress",
        "label": "List.Item.Progress",
        "description": "Row with inline or trailing progress."
      },
      {
        "id": "stat",
        "label": "List.Item.Stat",
        "description": "Compact label and value row."
      },
      {
        "id": "empty",
        "label": "List.Item.Empty",
        "description": "Placeholder row for an empty list."
      },
      {
        "id": "icon",
        "label": "List.Item.Icon",
        "description": "Leading icon helper for a row."
      }
    ],
    "allowedDesignChoices": {
      "variants": {
        "container": {
          "label": "Container",
          "description": "The single list surface; rows come from List.Item helpers."
        }
      },
      "sizes": {}
    },
    "variants": [
      {
        "id": "container",
        "label": "Container",
        "description": "Row container with automatic separators.",
        "platforms": [
          "ios",
          "android",
          "web"
        ]
      }
    ],
    "sizes": [],
    "measurements": [
      {
        "id": "row-min-height",
        "label": "Rich row minimum height",
        "kind": "exact",
        "token": "--cds-size-80",
        "value": 80,
        "unit": "px",
        "appliesTo": [
          "item"
        ]
      },
      {
        "id": "compact-row-min-height",
        "label": "Compact row minimum height",
        "kind": "exact",
        "token": "--cds-size-48",
        "value": 48,
        "unit": "px",
        "appliesTo": [
          "item",
          "stat"
        ]
      },
      {
        "id": "selection-row-min-height",
        "label": "Selection row minimum height, copy only",
        "kind": "at-least",
        "token": "--cds-size-64",
        "value": 64,
        "unit": "px",
        "appliesTo": [
          "selection"
        ]
      },
      {
        "id": "row-gap",
        "label": "Row content gap",
        "kind": "exact",
        "token": "--cds-space-12",
        "value": 12,
        "unit": "px",
        "appliesTo": [
          "item"
        ]
      },
      {
        "id": "row-inset",
        "label": "Row horizontal inset",
        "kind": "exact",
        "token": "--cds-space-20",
        "value": 20,
        "unit": "px",
        "appliesTo": [
          "item"
        ]
      }
    ],
    "layout": {
      "alignment": "Leading, body, value, and trailing align on the row center line.",
      "flow": "Rows stack vertically; the container inserts a hairline between adjacent rows and expands sections into labeled bands.",
      "notes": [
        "Use SectionHeader for a heading that stands alone outside a list.",
        "Use Accordion for independent expandable panels."
      ]
    },
    "typographyAndColor": {
      "typography": [
        {
          "label": "Title",
          "description": "Row titles use the body ramp.",
          "token": "--cds-type-body-size"
        },
        {
          "label": "Description",
          "description": "Row descriptions use the body-small ramp.",
          "token": "--cds-type-body-small-size"
        }
      ],
      "colors": [
        {
          "label": "Text",
          "description": "Row text uses primary text color.",
          "token": "--cds-text-primary"
        },
        {
          "label": "Separator",
          "description": "Adjacent rows are divided with the divider color.",
          "token": "--cds-divider"
        }
      ]
    },
    "states": [
      {
        "id": "default",
        "label": "Default",
        "description": "Static rows separated by hairlines."
      },
      {
        "id": "pressable",
        "label": "Pressable",
        "description": "A row with onPress becomes a tap target, usually with a chevron."
      },
      {
        "id": "selected",
        "label": "Selected",
        "description": "A selection row reflects its selected state."
      },
      {
        "id": "disabled",
        "label": "Disabled",
        "description": "A dimmed row that cannot be pressed; a disabled selection row still announces its selection state."
      }
    ],
    "behavior": [
      {
        "label": "Owns separators",
        "description": "The container draws separators, so a row's own divider is ignored inside a List."
      },
      {
        "label": "Grouping",
        "description": "List.Section expands into a labeled band followed by its divider-off rows."
      },
      {
        "label": "Section-aware disclosure separators",
        "description": "Revealed rows inside List.Disclosure get separators like the root, but never adjacent to a Divider, so a section header's own hairline is not doubled."
      },
      {
        "label": "Tag-only sizing",
        "description": "A row whose only trailing content is a tag keeps the plain row's height: the tag substitutes for the value text, not for a leading tile, so it does not promote the row to the rich 80px accessory height. Adding a chevron or custom trailing alongside the tag does."
      },
      {
        "label": "Selection placement",
        "description": "selectionPlacement='leading' renders the selection control in the leading slot, replacing the leading icon — the iOS edit-mode treatment for icon-led rows. Default stays trailing."
      }
    ],
    "accessibility": [
      {
        "label": "List semantics",
        "description": "The container exposes role=list and owns a role=listitem wrapper for each content row; section dividers are labels rather than counted rows. Set ariaLabel to name the list. Standalone row components do not claim listitem semantics."
      },
      {
        "label": "Row targets",
        "description": "Pressable rows are buttons with their own testId and accessible name."
      }
    ],
    "contentAdaptation": [
      {
        "label": "Row helpers",
        "description": "Selection, Progress, Stat, Empty, and Icon helpers shape rows for different content."
      },
      {
        "label": "Truncation",
        "description": "Titles and values truncate to one line while descriptions can wrap."
      }
    ],
    "motionHaptics": {
      "motion": [
        {
          "label": "Disclosure",
          "description": "List.Disclosure animates revealed rows inline; base rows do not animate."
        }
      ],
      "haptics": [
        {
          "label": "Row haptic",
          "description": "Pressable and selection rows request feedback through their own behavior."
        }
      ]
    },
    "platformDifferences": []
  },
  "spec_source": "packages/design-system/src/components/organization/List/List.spec.json",
  "guidance_source": {
    "path": "packages/design-system/src/components/organization/List/List.mdx",
    "code": "import { Meta, Canvas, Controls } from '@storybook/addon-docs/blocks';\nimport { ComponentSpec } from '../../../../.storybook/blocks';\nimport * as Stories from './List.stories';\nimport listSpec from './List.spec.json';\n\n<Meta of={Stories} />\n\n# List\n\nThe container for stacked `List.Item` rows — it draws an automatic hairline between adjacent rows\nand groups them with `List.Section`.\n\n<Canvas of={Stories.Sections} />\n\n## When to use\n\nReach for `List` any time you render a vertical run of rows that share separators — activity feeds,\nsettings, action lists. The container owns the dividers, so a row's own `divider` prop is ignored\ninside a `List`. See the [List.Item](/docs/cloaked-design-system-organization-list-item--docs) docs for the\nrow parts (leading, title, value, chevron, progress, selection).\n\n-   Sections whose bodies stay collapsed until tapped? Use `Accordion` (independent chrome) or\n    `List.Disclosure` for a single inline \"show more\" that shares these separators.\n-   A self-contained block of grouped content (heading + body + actions), not a row run? Use `Card`.\n\n<Canvas of={Stories.PlainRows} />\n\n## Design Guidelines\n\n<ComponentSpec spec={listSpec} />\n\n## Props\n\n<Controls of={Stories.Sections} />\n"
  },
  "props": [
    {
      "name": "children",
      "type": "React.ReactNode",
      "declared_type": "React.ReactNode",
      "required": true,
      "description": "Rows (`List.Item`), `List.Section` groups, and/or `Divider` boundaries, in render order.",
      "source": {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 11
      }
    },
    {
      "name": "ariaLabel",
      "type": "string | undefined",
      "declared_type": "string",
      "required": false,
      "description": "Accessible label announced for the list.",
      "source": {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 13
      }
    },
    {
      "name": "className",
      "type": "string | undefined",
      "declared_type": "string",
      "required": false,
      "description": "",
      "source": {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 14
      }
    },
    {
      "name": "style",
      "type": "React.CSSProperties | undefined",
      "declared_type": "React.CSSProperties",
      "required": false,
      "description": "",
      "source": {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 15
      }
    },
    {
      "name": "testId",
      "type": "string | undefined",
      "declared_type": "string",
      "required": false,
      "description": "Test selector for the list container. Rows carry their own `testId`.",
      "source": {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 17
      }
    }
  ],
  "prop_shapes": {},
  "examples": [],
  "tokens": [
    {
      "name": "--cds-size-80",
      "light": "80px",
      "dark": "80px"
    },
    {
      "name": "--cds-size-48",
      "light": "48px",
      "dark": "48px"
    },
    {
      "name": "--cds-size-64",
      "light": "64px",
      "dark": "64px"
    },
    {
      "name": "--cds-space-12",
      "light": "12px",
      "dark": "12px"
    },
    {
      "name": "--cds-space-20",
      "light": "20px",
      "dark": "20px"
    },
    {
      "name": "--cds-type-body-size",
      "light": "1rem",
      "dark": "1rem"
    },
    {
      "name": "--cds-type-body-small-size",
      "light": "0.875rem",
      "dark": "0.875rem"
    },
    {
      "name": "--cds-text-primary",
      "light": "#141410",
      "dark": "#f3f1ed"
    },
    {
      "name": "--cds-divider",
      "light": "#e0ddd6",
      "dark": "#ffffff1a"
    }
  ],
  "visual_reference": {
    "stories": [
      {
        "id": "cloaked-design-system-organization-list--sections",
        "name": "Sections",
        "title": "Cloaked Design System/Organization/List",
        "exportName": "Sections",
        "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
        "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
        "status": "preview",
        "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--sections&viewMode=story"
      },
      {
        "id": "cloaked-design-system-organization-list--plain-rows",
        "name": "Plain Rows",
        "title": "Cloaked Design System/Organization/List",
        "exportName": "PlainRows",
        "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
        "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
        "status": "preview",
        "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--plain-rows&viewMode=story"
      },
      {
        "id": "cloaked-design-system-organization-list--disclosure",
        "name": "Disclosure",
        "title": "Cloaked Design System/Organization/List",
        "exportName": "Disclosure",
        "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
        "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
        "status": "preview",
        "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--disclosure&viewMode=story"
      },
      {
        "id": "cloaked-design-system-organization-list--dark-theme",
        "name": "Dark Theme",
        "title": "Cloaked Design System/Organization/List",
        "exportName": "DarkTheme",
        "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
        "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
        "status": "preview",
        "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--dark-theme&viewMode=story"
      }
    ],
    "name": "List",
    "id": "list",
    "category": "Organization"
  },
  "stories": [
    {
      "id": "cloaked-design-system-organization-list--sections",
      "name": "Sections",
      "title": "Cloaked Design System/Organization/List",
      "exportName": "Sections",
      "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
      "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
      "status": "preview",
      "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--sections&viewMode=story"
    },
    {
      "id": "cloaked-design-system-organization-list--plain-rows",
      "name": "Plain Rows",
      "title": "Cloaked Design System/Organization/List",
      "exportName": "PlainRows",
      "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
      "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
      "status": "preview",
      "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--plain-rows&viewMode=story"
    },
    {
      "id": "cloaked-design-system-organization-list--disclosure",
      "name": "Disclosure",
      "title": "Cloaked Design System/Organization/List",
      "exportName": "Disclosure",
      "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
      "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
      "status": "preview",
      "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--disclosure&viewMode=story"
    },
    {
      "id": "cloaked-design-system-organization-list--dark-theme",
      "name": "Dark Theme",
      "title": "Cloaked Design System/Organization/List",
      "exportName": "DarkTheme",
      "source_path": "packages/design-system/src/components/organization/List/List.stories.tsx",
      "source_digest": "aa28d22a497f9df5ced7229de8762f21680597515a8cfed52daab2d4b364eda7",
      "status": "preview",
      "local_url": "/storybook/iframe.html?id=cloaked-design-system-organization-list--dark-theme&viewMode=story"
    }
  ],
  "stories_source": {
    "path": "packages/design-system/src/components/organization/List/List.stories.tsx",
    "code": "import React from 'react';\nimport type { Meta, StoryObj } from '@storybook/react-vite';\nimport { Avatar } from '../../primitives/Avatar/Avatar';\nimport { disabledControl } from '../../../storybook/controlOptions';\nimport { List } from './List';\n\nconst meta: Meta<typeof List> = {\n    title: 'Cloaked Design System/Organization/List',\n    component: List,\n    parameters: {\n        a11y: { test: 'error' },\n        docs: {\n            description: {\n                component:\n                    'Rich list container that stacks `List.Item` rows with an automatic hairline between ' +\n                    \"adjacent rows. The container owns separators — a row's own `divider` is ignored inside a \" +\n                    '`List`, so leave it off children here. Group rows under a labeled band with `List.Section` ' +\n                    '(use `SectionHeader` instead for a heading that stands alone outside a list). Reveal extra ' +\n                    'rows inline with a single `List.Disclosure`, or show independent panels with `Accordion`. ' +\n                    'Works standalone, not only inside `Card`.',\n            },\n        },\n    },\n    argTypes: {\n        children: {\n            ...disabledControl,\n            description: '`List.Item` rows, `List.Section` groups, and/or `Divider` boundaries in render order.',\n        },\n        ariaLabel: {\n            control: 'text',\n            description: 'Accessible label announced for the list (maps to `aria-label`).',\n        },\n        className: disabledControl,\n        style: disabledControl,\n        testId: {\n            control: 'text',\n            description: 'Test selector on the list container.',\n        },\n    },\n    decorators: [\n        Story => (\n            <div style={{ maxWidth: 360, background: 'var(--cds-bg-surface)' }}>\n                <Story />\n            </div>\n        ),\n    ],\n};\nexport default meta;\ntype Story = StoryObj<typeof List>;\n\nexport const Sections: Story = {\n    parameters: {\n        docs: {\n            description: {\n                story: 'Rows grouped under `List.Section` labels; the container draws hairlines between adjacent rows.',\n            },\n        },\n    },\n    render: () => (\n        <List ariaLabel='Recent activity'>\n            <List.Section title='In Progress'>\n                <List.Item\n                    padding='sheet'\n                    leading={<Avatar type='initials' size='md' initial='M' />}\n                    title='Monitoring data broker sites'\n                    description='Watching data broker sites for your info'\n                />\n                <List.Item\n                    padding='sheet'\n                    leading={<Avatar type='initials' size='md' initial='D' />}\n                    title='Dark web monitoring'\n                    description=\"We'll alert you on any new leaks\"\n                />\n            </List.Section>\n\n            <List.Section title='Up Next'>\n                <List.Item\n                    padding='sheet'\n                    leading={<Avatar type='initials' size='md' initial='N' />}\n                    title='Next scan'\n                    description='Starting soon'\n                    value='Aug 11'\n                />\n            </List.Section>\n        </List>\n    ),\n};\n\nexport const PlainRows: Story = {\n    parameters: {\n        docs: {\n            description: { story: 'Ungrouped pressable rows — `onPress` + `chevron`, each with its own `testId`.' },\n        },\n    },\n    render: () => (\n        <List ariaLabel='Privacy actions'>\n            <List.Item\n                title='Stop company tracking'\n                description='AI training, Corporate Surveillance'\n                chevron\n                onPress={() => {}}\n                testId='list-stop-tracking'\n            />\n            <List.Item\n                title='Remove your data'\n                description='Data brokers'\n                chevron\n                onPress={() => {}}\n                testId='list-remove-data'\n            />\n        </List>\n    ),\n};\n\nexport const Disclosure: Story = {\n    parameters: {\n        docs: { description: { story: '`List.Disclosure` reveals extra rows inline, sharing the list separators.' } },\n    },\n    render: () => (\n        <List ariaLabel='Completed removals'>\n            <List.Item title='AccuData' description='3 records removed' />\n            <List.Item title='Acxiom' description='4 records removed' />\n            <List.Disclosure\n                title='Show 12 more'\n                expandedTitle='Show less'\n                description='Expand to view the rest of your completed removals.'\n                testId='list-disclosure-example'\n            >\n                <List.Item\n                    title='BackgroundCheckers'\n                    description='12 records removed'\n                    testId='list-disclosure-example-background-checkers'\n                />\n                <List.Item\n                    title='BirthRecords'\n                    description='12 records removed'\n                    testId='list-disclosure-example-birth-records'\n                />\n            </List.Disclosure>\n        </List>\n    ),\n};\n\nexport const DarkTheme: Story = {\n    globals: { theme: 'dark' },\n    parameters: {\n        docs: { description: { story: 'Section grouping and row hairlines on the dark theme surface.' } },\n    },\n    render: () => (\n        <List ariaLabel='Recent activity'>\n            <List.Section title='In Progress'>\n                <List.Item\n                    padding='sheet'\n                    leading={<Avatar type='initials' size='md' initial='M' />}\n                    title='Monitoring data broker sites'\n                    description='Watching data broker sites for your info'\n                />\n                <List.Item\n                    padding='sheet'\n                    leading={<Avatar type='initials' size='md' initial='D' />}\n                    title='Dark web monitoring'\n                    description=\"We'll alert you on any new leaks\"\n                />\n            </List.Section>\n            <List.Section title='Up Next'>\n                <List.Item\n                    padding='sheet'\n                    leading={<Avatar type='initials' size='md' initial='N' />}\n                    title='Next scan'\n                    description='Starting soon'\n                    value='Aug 11'\n                />\n            </List.Section>\n        </List>\n    ),\n};\n"
  },
  "links": {
    "human": "/component-list",
    "json": "/data/components/list.json",
    "markdown": "/data/components/list.md",
    "storybook": "/storybook/?path=/story/cloaked-design-system-organization-list--sections"
  },
  "contract_status": "preview",
  "contract_kind": "source-derived",
  "approval": "required",
  "api": {
    "method": "typescript-type-checker",
    "typescript_version": "5.9.3",
    "public_export": "List",
    "public_path": "List",
    "import_path": "@cloakedinc/design-system",
    "root_kind": "component",
    "entrypoints": [
      {
        "name": "List",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/List/ListRoot/ListRoot.tsx",
          "line": 19
        },
        "props_type": "ListProps",
        "props": [
          {
            "name": "children",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "Rows (`List.Item`), `List.Section` groups, and/or `Divider` boundaries, in render order.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 11
            }
          },
          {
            "name": "ariaLabel",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Accessible label announced for the list.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 13
            }
          },
          {
            "name": "className",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 14
            }
          },
          {
            "name": "style",
            "type": "React.CSSProperties | undefined",
            "declared_type": "React.CSSProperties",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 15
            }
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector for the list container. Rows carry their own `testId`.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 17
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItem.tsx",
          "line": 39
        },
        "props_type": "ListItemProps",
        "props": [
          {
            "name": "leading",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Custom leading content (e.g. an `Avatar`, brand logo, or `List.Item.Icon` plate).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 54
            }
          },
          {
            "name": "leadingGlyph",
            "type": "\"number\" | \"info\" | \"guard\" | \"arrow-left\" | \"arrow-right\" | \"arrow-up\" | \"arrow-down\" | \"chevron-down\" | \"chevron-up\" | \"chevron-left\" | \"chevron-right\" | \"caret-down\" | \"caret-up\" | \"trend-up\" | \"trend-down\" | \"collapse\" | \"expand\" | \"dropdown-collapse\" | \"dropdown-expand\" | \"close\" | \"clear\" | \"menu\" | \"copy\" | \"search\" | \"add\" | \"share\" | \"phone\" | \"sim\" | \"account\" | \"family\" | \"home\" | \"wifi\" | \"cart\" | \"vpn\" | \"lock\" | \"block\" | \"timer\" | \"check\" | \"send\" | \"filter\" | \"scan\" | \"log\" | \"trash\" | \"missed\" | \"call\" | \"voicemail\" | \"sms\" | \"email\" | \"data-removal\" | \"dark-web-monitoring\" | \"cloaked-pay\" | \"cloaked-ai\" | \"sms-guard\" | \"email-guard\" | \"call-guard\" | \"card\" | \"password\" | \"bell\" | \"circle-outline\" | \"dot\" | \"settings\" | \"clock\" | \"mail\" | \"message\" | \"user\" | \"upload\" | undefined",
            "declared_type": "GlyphName",
            "required": false,
            "description": "Registered glyph rendered as a tone `IconTile` in the leading slot.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 56
            },
            "values": [
              "account",
              "add",
              "arrow-down",
              "arrow-left",
              "arrow-right",
              "arrow-up",
              "bell",
              "block",
              "call-guard",
              "call",
              "card",
              "caret-down",
              "caret-up",
              "cart",
              "check",
              "chevron-down",
              "chevron-left",
              "chevron-right",
              "chevron-up",
              "circle-outline",
              "clear",
              "cloaked-ai",
              "cloaked-pay",
              "clock",
              "close",
              "collapse",
              "copy",
              "dark-web-monitoring",
              "data-removal",
              "dot",
              "dropdown-collapse",
              "dropdown-expand",
              "email-guard",
              "email",
              "expand",
              "family",
              "filter",
              "guard",
              "home",
              "info",
              "lock",
              "log",
              "mail",
              "menu",
              "message",
              "missed",
              "number",
              "password",
              "phone",
              "scan",
              "search",
              "send",
              "settings",
              "share",
              "sim",
              "sms-guard",
              "sms",
              "timer",
              "trash",
              "trend-down",
              "trend-up",
              "upload",
              "user",
              "voicemail",
              "vpn",
              "wifi"
            ],
            "values_complete": true
          },
          {
            "name": "tone",
            "type": "ListItemTone | undefined",
            "declared_type": "ListItemTone",
            "required": false,
            "description": "Tone for the generated leading `IconTile`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 58
            },
            "values": [
              "brand",
              "danger",
              "guard",
              "identity",
              "info",
              "monitoring",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true
          },
          {
            "name": "overline",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Small copy shown above the title.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 60
            }
          },
          {
            "name": "overlineTrailing",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Accessory pinned to the top-right, aligned with the overline (e.g. a count badge).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 62
            }
          },
          {
            "name": "title",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "Primary row title.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 64
            }
          },
          {
            "name": "titleLines",
            "type": "number | undefined",
            "declared_type": "number",
            "required": false,
            "description": "Wraps the title across up to this many lines before clamping. Defaults to single-line truncation.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 66
            }
          },
          {
            "name": "description",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Secondary row copy.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 68
            }
          },
          {
            "name": "descriptionLines",
            "type": "number | undefined",
            "declared_type": "number",
            "required": false,
            "description": "Wraps the description across up to this many lines before clamping. Defaults to single-line truncation.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 70
            }
          },
          {
            "name": "value",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Right-aligned value shown in the title row.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 72
            }
          },
          {
            "name": "tag",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Tag slot shown at the trailing edge.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 74
            }
          },
          {
            "name": "statusLabel",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Status text rendered through ListItem.StatusIndicator.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 76
            }
          },
          {
            "name": "statusTone",
            "type": "\"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\" | undefined",
            "declared_type": "StatusTone",
            "required": false,
            "description": "Status color treatment for statusLabel.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 78
            },
            "values": [
              "danger",
              "info",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true
          },
          {
            "name": "trailing",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Custom trailing content.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 80
            }
          },
          {
            "name": "trailingIcon",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Icon slot shown after other trailing content.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 82
            }
          },
          {
            "name": "chevron",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Override for the disclosure chevron. Leave unset to derive it from interaction — any\npressable row shows one, except selection rows and rows with caller-owned trailing\ncontent. Pass `true` to force it on (e.g. a non-interactive row inside a pressable card),\nor `false` to force it off.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 89
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "className",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 90
            }
          },
          {
            "name": "style",
            "type": "React.CSSProperties | undefined",
            "declared_type": "React.CSSProperties",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 91
            }
          },
          {
            "name": "divider",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Shows a bottom divider when true.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 93
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "dividerMode",
            "type": "ListItemDividerMode | undefined",
            "declared_type": "ListItemDividerMode",
            "required": false,
            "description": "Divider alignment.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 95
            },
            "values": [
              "full-bleed",
              "inset"
            ],
            "values_complete": true
          },
          {
            "name": "padding",
            "type": "ListItemPadding | undefined",
            "declared_type": "ListItemPadding",
            "required": false,
            "description": "Row padding preset.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 97
            },
            "values": [
              "card",
              "flush",
              "sheet"
            ],
            "values_complete": true
          },
          {
            "name": "size",
            "type": "ListItemSize | undefined",
            "declared_type": "ListItemSize",
            "required": false,
            "description": "Row density. `sm` renders a compact row (32px leading slot). Defaults to `md`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 99
            },
            "values": [
              "md",
              "sm"
            ],
            "values_complete": true
          },
          {
            "name": "surface",
            "type": "\"page\" | \"surface\" | undefined",
            "declared_type": "CdsSurface",
            "required": false,
            "description": "Row background on the `page | surface` scale. Defaults to `surface`\n(elevated card row); `page` sits flush on a page-level background.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 104
            },
            "values": [
              "page",
              "surface"
            ],
            "values_complete": true
          },
          {
            "name": "id",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Optional id for the row container or interactive control.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 106
            }
          },
          {
            "name": "ariaControls",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Id of content controlled by this row when used as a disclosure trigger.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 108
            }
          },
          {
            "name": "expanded",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Expanded state announced for interactive rows.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 110
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "disabled",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Dims the row and blocks presses. A disabled selection row keeps its radio/checkbox\nsemantics so the choice stays announced — it just can't be chosen.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 115
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "onPress",
            "type": "(() => void) | undefined",
            "declared_type": "() => void",
            "required": false,
            "description": "Called when the row is pressed.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 117
            }
          },
          {
            "name": "ariaLabel",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Accessible label for interactive rows when visible copy is not sufficient.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 119
            }
          },
          {
            "name": "haptic",
            "type": "HapticFeedback | undefined",
            "declared_type": "HapticFeedback",
            "required": false,
            "description": "Haptic feedback for interactive row presses. Defaults to `true` (`light`).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 121
            },
            "values": [
              "error",
              "heavy",
              "light",
              "medium",
              "selection",
              "success",
              "warning",
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector. Lands on the row's button when it is pressable, otherwise on the container.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 123
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.Selection",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItem.tsx",
          "line": 46
        },
        "props_type": "ListItemSelectionProps",
        "props": [
          {
            "name": "selectionMode",
            "type": "ListItemSelectionMode | undefined",
            "declared_type": "ListItemSelectionMode",
            "required": false,
            "description": "Selection control shape.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 132
            },
            "values": [
              "multiple",
              "single"
            ],
            "values_complete": true,
            "default": "'multiple'",
            "default_kind": "source-expression"
          },
          {
            "name": "selectionPlacement",
            "type": "ListItemSelectionPlacement | undefined",
            "declared_type": "ListItemSelectionPlacement",
            "required": false,
            "description": "Where the control renders; `leading` replaces the leading icon. Defaults to `trailing`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 134
            },
            "values": [
              "leading",
              "trailing"
            ],
            "values_complete": true,
            "default": "'trailing'",
            "default_kind": "source-expression"
          },
          {
            "name": "selected",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Current selected state.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 136
            },
            "values": [
              false,
              true
            ],
            "values_complete": true,
            "default": "false",
            "default_kind": "source-expression"
          },
          {
            "name": "onSelectedChange",
            "type": "((selected: boolean) => void) | undefined",
            "declared_type": "(selected: boolean) => void",
            "required": false,
            "description": "Called with the next selected state when pressed.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 138
            }
          },
          {
            "name": "surface",
            "type": "\"page\" | \"surface\" | undefined",
            "declared_type": "CdsSurface",
            "required": false,
            "description": "Row background on the `page | surface` scale. Defaults to `surface`\n(elevated card row); `page` sits flush on a page-level background.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 104
            },
            "values": [
              "page",
              "surface"
            ],
            "values_complete": true
          },
          {
            "name": "overline",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Small copy shown above the title.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 60
            }
          },
          {
            "name": "id",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Optional id for the row container or interactive control.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 106
            }
          },
          {
            "name": "style",
            "type": "React.CSSProperties | undefined",
            "declared_type": "React.CSSProperties",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 91
            }
          },
          {
            "name": "title",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "Primary row title.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 64
            }
          },
          {
            "name": "leading",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Custom leading content (e.g. an `Avatar`, brand logo, or `List.Item.Icon` plate).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 54
            }
          },
          {
            "name": "leadingGlyph",
            "type": "\"number\" | \"info\" | \"guard\" | \"arrow-left\" | \"arrow-right\" | \"arrow-up\" | \"arrow-down\" | \"chevron-down\" | \"chevron-up\" | \"chevron-left\" | \"chevron-right\" | \"caret-down\" | \"caret-up\" | \"trend-up\" | \"trend-down\" | \"collapse\" | \"expand\" | \"dropdown-collapse\" | \"dropdown-expand\" | \"close\" | \"clear\" | \"menu\" | \"copy\" | \"search\" | \"add\" | \"share\" | \"phone\" | \"sim\" | \"account\" | \"family\" | \"home\" | \"wifi\" | \"cart\" | \"vpn\" | \"lock\" | \"block\" | \"timer\" | \"check\" | \"send\" | \"filter\" | \"scan\" | \"log\" | \"trash\" | \"missed\" | \"call\" | \"voicemail\" | \"sms\" | \"email\" | \"data-removal\" | \"dark-web-monitoring\" | \"cloaked-pay\" | \"cloaked-ai\" | \"sms-guard\" | \"email-guard\" | \"call-guard\" | \"card\" | \"password\" | \"bell\" | \"circle-outline\" | \"dot\" | \"settings\" | \"clock\" | \"mail\" | \"message\" | \"user\" | \"upload\" | undefined",
            "declared_type": "GlyphName",
            "required": false,
            "description": "Registered glyph rendered as a tone `IconTile` in the leading slot.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 56
            },
            "values": [
              "account",
              "add",
              "arrow-down",
              "arrow-left",
              "arrow-right",
              "arrow-up",
              "bell",
              "block",
              "call-guard",
              "call",
              "card",
              "caret-down",
              "caret-up",
              "cart",
              "check",
              "chevron-down",
              "chevron-left",
              "chevron-right",
              "chevron-up",
              "circle-outline",
              "clear",
              "cloaked-ai",
              "cloaked-pay",
              "clock",
              "close",
              "collapse",
              "copy",
              "dark-web-monitoring",
              "data-removal",
              "dot",
              "dropdown-collapse",
              "dropdown-expand",
              "email-guard",
              "email",
              "expand",
              "family",
              "filter",
              "guard",
              "home",
              "info",
              "lock",
              "log",
              "mail",
              "menu",
              "message",
              "missed",
              "number",
              "password",
              "phone",
              "scan",
              "search",
              "send",
              "settings",
              "share",
              "sim",
              "sms-guard",
              "sms",
              "timer",
              "trash",
              "trend-down",
              "trend-up",
              "upload",
              "user",
              "voicemail",
              "vpn",
              "wifi"
            ],
            "values_complete": true
          },
          {
            "name": "tone",
            "type": "ListItemTone | undefined",
            "declared_type": "ListItemTone",
            "required": false,
            "description": "Tone for the generated leading `IconTile`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 58
            },
            "values": [
              "brand",
              "danger",
              "guard",
              "identity",
              "info",
              "monitoring",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true
          },
          {
            "name": "overlineTrailing",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Accessory pinned to the top-right, aligned with the overline (e.g. a count badge).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 62
            }
          },
          {
            "name": "titleLines",
            "type": "number | undefined",
            "declared_type": "number",
            "required": false,
            "description": "Wraps the title across up to this many lines before clamping. Defaults to single-line truncation.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 66
            }
          },
          {
            "name": "description",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Secondary row copy.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 68
            }
          },
          {
            "name": "descriptionLines",
            "type": "number | undefined",
            "declared_type": "number",
            "required": false,
            "description": "Wraps the description across up to this many lines before clamping. Defaults to single-line truncation.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 70
            }
          },
          {
            "name": "value",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Right-aligned value shown in the title row.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 72
            }
          },
          {
            "name": "tag",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Tag slot shown at the trailing edge.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 74
            }
          },
          {
            "name": "statusLabel",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Status text rendered through ListItem.StatusIndicator.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 76
            }
          },
          {
            "name": "statusTone",
            "type": "\"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\" | undefined",
            "declared_type": "StatusTone",
            "required": false,
            "description": "Status color treatment for statusLabel.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 78
            },
            "values": [
              "danger",
              "info",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true
          },
          {
            "name": "trailing",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Custom trailing content.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 80
            }
          },
          {
            "name": "trailingIcon",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Icon slot shown after other trailing content.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 82
            }
          },
          {
            "name": "chevron",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Override for the disclosure chevron. Leave unset to derive it from interaction — any\npressable row shows one, except selection rows and rows with caller-owned trailing\ncontent. Pass `true` to force it on (e.g. a non-interactive row inside a pressable card),\nor `false` to force it off.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 89
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "className",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 90
            }
          },
          {
            "name": "divider",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Shows a bottom divider when true.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 93
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "dividerMode",
            "type": "ListItemDividerMode | undefined",
            "declared_type": "ListItemDividerMode",
            "required": false,
            "description": "Divider alignment.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 95
            },
            "values": [
              "full-bleed",
              "inset"
            ],
            "values_complete": true
          },
          {
            "name": "padding",
            "type": "ListItemPadding | undefined",
            "declared_type": "ListItemPadding",
            "required": false,
            "description": "Row padding preset.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 97
            },
            "values": [
              "card",
              "flush",
              "sheet"
            ],
            "values_complete": true
          },
          {
            "name": "size",
            "type": "ListItemSize | undefined",
            "declared_type": "ListItemSize",
            "required": false,
            "description": "Row density. `sm` renders a compact row (32px leading slot). Defaults to `md`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 99
            },
            "values": [
              "md",
              "sm"
            ],
            "values_complete": true
          },
          {
            "name": "ariaControls",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Id of content controlled by this row when used as a disclosure trigger.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 108
            }
          },
          {
            "name": "expanded",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Expanded state announced for interactive rows.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 110
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "disabled",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Dims the row and blocks presses. A disabled selection row keeps its radio/checkbox\nsemantics so the choice stays announced — it just can't be chosen.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 115
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "ariaLabel",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Accessible label for interactive rows when visible copy is not sufficient.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 119
            }
          },
          {
            "name": "haptic",
            "type": "HapticFeedback | undefined",
            "declared_type": "HapticFeedback",
            "required": false,
            "description": "Haptic feedback for interactive row presses. Defaults to `true` (`light`).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 121
            },
            "values": [
              "error",
              "heavy",
              "light",
              "medium",
              "selection",
              "success",
              "warning",
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector. Lands on the row's button when it is pressable, otherwise on the container.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 123
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.Progress",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItem.tsx",
          "line": 67
        },
        "props_type": "ListItemProgressProps",
        "props": [
          {
            "name": "progress",
            "type": "number | ListItemProgress",
            "declared_type": "number | ListItemProgress",
            "required": true,
            "description": "Progress configuration rendered in the row.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 147
            }
          },
          {
            "name": "leading",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Custom leading content (e.g. an `Avatar`, brand logo, or `List.Item.Icon` plate).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 54
            }
          },
          {
            "name": "leadingGlyph",
            "type": "\"number\" | \"info\" | \"guard\" | \"arrow-left\" | \"arrow-right\" | \"arrow-up\" | \"arrow-down\" | \"chevron-down\" | \"chevron-up\" | \"chevron-left\" | \"chevron-right\" | \"caret-down\" | \"caret-up\" | \"trend-up\" | \"trend-down\" | \"collapse\" | \"expand\" | \"dropdown-collapse\" | \"dropdown-expand\" | \"close\" | \"clear\" | \"menu\" | \"copy\" | \"search\" | \"add\" | \"share\" | \"phone\" | \"sim\" | \"account\" | \"family\" | \"home\" | \"wifi\" | \"cart\" | \"vpn\" | \"lock\" | \"block\" | \"timer\" | \"check\" | \"send\" | \"filter\" | \"scan\" | \"log\" | \"trash\" | \"missed\" | \"call\" | \"voicemail\" | \"sms\" | \"email\" | \"data-removal\" | \"dark-web-monitoring\" | \"cloaked-pay\" | \"cloaked-ai\" | \"sms-guard\" | \"email-guard\" | \"call-guard\" | \"card\" | \"password\" | \"bell\" | \"circle-outline\" | \"dot\" | \"settings\" | \"clock\" | \"mail\" | \"message\" | \"user\" | \"upload\" | undefined",
            "declared_type": "GlyphName",
            "required": false,
            "description": "Registered glyph rendered as a tone `IconTile` in the leading slot.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 56
            },
            "values": [
              "account",
              "add",
              "arrow-down",
              "arrow-left",
              "arrow-right",
              "arrow-up",
              "bell",
              "block",
              "call-guard",
              "call",
              "card",
              "caret-down",
              "caret-up",
              "cart",
              "check",
              "chevron-down",
              "chevron-left",
              "chevron-right",
              "chevron-up",
              "circle-outline",
              "clear",
              "cloaked-ai",
              "cloaked-pay",
              "clock",
              "close",
              "collapse",
              "copy",
              "dark-web-monitoring",
              "data-removal",
              "dot",
              "dropdown-collapse",
              "dropdown-expand",
              "email-guard",
              "email",
              "expand",
              "family",
              "filter",
              "guard",
              "home",
              "info",
              "lock",
              "log",
              "mail",
              "menu",
              "message",
              "missed",
              "number",
              "password",
              "phone",
              "scan",
              "search",
              "send",
              "settings",
              "share",
              "sim",
              "sms-guard",
              "sms",
              "timer",
              "trash",
              "trend-down",
              "trend-up",
              "upload",
              "user",
              "voicemail",
              "vpn",
              "wifi"
            ],
            "values_complete": true
          },
          {
            "name": "tone",
            "type": "ListItemTone | undefined",
            "declared_type": "ListItemTone",
            "required": false,
            "description": "Tone for the generated leading `IconTile`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 58
            },
            "values": [
              "brand",
              "danger",
              "guard",
              "identity",
              "info",
              "monitoring",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true
          },
          {
            "name": "overline",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Small copy shown above the title.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 60
            }
          },
          {
            "name": "overlineTrailing",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Accessory pinned to the top-right, aligned with the overline (e.g. a count badge).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 62
            }
          },
          {
            "name": "title",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "Primary row title.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 64
            }
          },
          {
            "name": "titleLines",
            "type": "number | undefined",
            "declared_type": "number",
            "required": false,
            "description": "Wraps the title across up to this many lines before clamping. Defaults to single-line truncation.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 66
            }
          },
          {
            "name": "description",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Secondary row copy.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 68
            }
          },
          {
            "name": "descriptionLines",
            "type": "number | undefined",
            "declared_type": "number",
            "required": false,
            "description": "Wraps the description across up to this many lines before clamping. Defaults to single-line truncation.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 70
            }
          },
          {
            "name": "value",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Right-aligned value shown in the title row.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 72
            }
          },
          {
            "name": "tag",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Tag slot shown at the trailing edge.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 74
            }
          },
          {
            "name": "statusLabel",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Status text rendered through ListItem.StatusIndicator.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 76
            }
          },
          {
            "name": "statusTone",
            "type": "\"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\" | undefined",
            "declared_type": "StatusTone",
            "required": false,
            "description": "Status color treatment for statusLabel.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 78
            },
            "values": [
              "danger",
              "info",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true
          },
          {
            "name": "trailing",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Custom trailing content.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 80
            }
          },
          {
            "name": "trailingIcon",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Icon slot shown after other trailing content.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 82
            }
          },
          {
            "name": "chevron",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Override for the disclosure chevron. Leave unset to derive it from interaction — any\npressable row shows one, except selection rows and rows with caller-owned trailing\ncontent. Pass `true` to force it on (e.g. a non-interactive row inside a pressable card),\nor `false` to force it off.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 89
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "className",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 90
            }
          },
          {
            "name": "style",
            "type": "React.CSSProperties | undefined",
            "declared_type": "React.CSSProperties",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 91
            }
          },
          {
            "name": "divider",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Shows a bottom divider when true.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 93
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "dividerMode",
            "type": "ListItemDividerMode | undefined",
            "declared_type": "ListItemDividerMode",
            "required": false,
            "description": "Divider alignment.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 95
            },
            "values": [
              "full-bleed",
              "inset"
            ],
            "values_complete": true
          },
          {
            "name": "padding",
            "type": "ListItemPadding | undefined",
            "declared_type": "ListItemPadding",
            "required": false,
            "description": "Row padding preset.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 97
            },
            "values": [
              "card",
              "flush",
              "sheet"
            ],
            "values_complete": true
          },
          {
            "name": "size",
            "type": "ListItemSize | undefined",
            "declared_type": "ListItemSize",
            "required": false,
            "description": "Row density. `sm` renders a compact row (32px leading slot). Defaults to `md`.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 99
            },
            "values": [
              "md",
              "sm"
            ],
            "values_complete": true
          },
          {
            "name": "surface",
            "type": "\"page\" | \"surface\" | undefined",
            "declared_type": "CdsSurface",
            "required": false,
            "description": "Row background on the `page | surface` scale. Defaults to `surface`\n(elevated card row); `page` sits flush on a page-level background.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 104
            },
            "values": [
              "page",
              "surface"
            ],
            "values_complete": true
          },
          {
            "name": "id",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Optional id for the row container or interactive control.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 106
            }
          },
          {
            "name": "ariaControls",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Id of content controlled by this row when used as a disclosure trigger.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 108
            }
          },
          {
            "name": "expanded",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Expanded state announced for interactive rows.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 110
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "disabled",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Dims the row and blocks presses. A disabled selection row keeps its radio/checkbox\nsemantics so the choice stays announced — it just can't be chosen.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 115
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "onPress",
            "type": "(() => void) | undefined",
            "declared_type": "() => void",
            "required": false,
            "description": "Called when the row is pressed.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 117
            }
          },
          {
            "name": "ariaLabel",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Accessible label for interactive rows when visible copy is not sufficient.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 119
            }
          },
          {
            "name": "haptic",
            "type": "HapticFeedback | undefined",
            "declared_type": "HapticFeedback",
            "required": false,
            "description": "Haptic feedback for interactive row presses. Defaults to `true` (`light`).",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 121
            },
            "values": [
              "error",
              "heavy",
              "light",
              "medium",
              "selection",
              "success",
              "warning",
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector. Lands on the row's button when it is pressable, otherwise on the container.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 123
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.Stat",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemStat/ListItemStat.tsx",
          "line": 10
        },
        "props_type": "ListItemStatProps",
        "props": [
          {
            "name": "label",
            "type": "string",
            "declared_type": "string",
            "required": true,
            "description": "The key, rendered as secondary text on the left.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 156
            }
          },
          {
            "name": "value",
            "type": "string | number",
            "declared_type": "string | number",
            "required": true,
            "description": "The statistic, rendered as primary text on the right.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 158
            }
          },
          {
            "name": "divider",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Shows the row divider when true.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 160
            },
            "values": [
              false,
              true
            ],
            "values_complete": true,
            "default": "true",
            "default_kind": "source-expression"
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector; lands on the wrapper around the row and its divider.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 162
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.Empty",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemEmpty/ListItemEmpty.tsx",
          "line": 10
        },
        "props_type": "ListItemEmptyProps",
        "props": [
          {
            "name": "message",
            "type": "string",
            "declared_type": "string",
            "required": true,
            "description": "The empty-state copy, rendered as secondary text.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 171
            }
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector for the placeholder container.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 173
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.Icon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemIcon/ListItemIcon.tsx",
          "line": 11
        },
        "props_type": "ListItemIconProps",
        "props": [
          {
            "name": "children",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 181
            }
          },
          {
            "name": "initial",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Fallback initial shown when children are absent.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 183
            }
          },
          {
            "name": "tone",
            "type": "ListItemTone | undefined",
            "declared_type": "ListItemTone",
            "required": false,
            "description": "Tokenized icon color treatment.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 185
            },
            "values": [
              "brand",
              "danger",
              "guard",
              "identity",
              "info",
              "monitoring",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true,
            "default": "'neutral'",
            "default_kind": "source-expression"
          },
          {
            "name": "label",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Accessible label for meaningful icons.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 187
            }
          },
          {
            "name": "background",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Custom background color.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 189
            }
          },
          {
            "name": "foreground",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Custom foreground color.",
            "source": {
              "path": "packages/design-system/src/components/organization/ListItem/types.ts",
              "line": 191
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.StatusIndicator",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/status/StatusIndicator/StatusIndicator.tsx",
          "line": 25
        },
        "props_type": "StatusIndicatorProps",
        "props": [
          {
            "name": "children",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/status/StatusIndicator/StatusIndicator.tsx",
              "line": 13
            }
          },
          {
            "name": "tone",
            "type": "\"neutral\" | \"info\" | \"success\" | \"warning\" | \"danger\" | undefined",
            "declared_type": "StatusTone",
            "required": false,
            "description": "Semantic status color for the dot; maps to the `--cds-status-*` tokens. Defaults to `neutral`.",
            "source": {
              "path": "packages/design-system/src/components/status/StatusIndicator/StatusIndicator.tsx",
              "line": 15
            },
            "values": [
              "danger",
              "info",
              "neutral",
              "success",
              "warning"
            ],
            "values_complete": true,
            "default": "'neutral'",
            "default_kind": "source-expression"
          },
          {
            "name": "className",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/status/StatusIndicator/StatusIndicator.tsx",
              "line": 16
            }
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Optional test selector.",
            "source": {
              "path": "packages/design-system/src/components/status/StatusIndicator/StatusIndicator.tsx",
              "line": 18
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.ArrowIcon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemActionIcons/ListItemActionIcons.tsx",
          "line": 13
        },
        "props_type": null,
        "props": [],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.ChevronIcon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemActionIcons/ListItemActionIcons.tsx",
          "line": 20
        },
        "props_type": null,
        "props": [],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.CopyIcon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemActionIcons/ListItemActionIcons.tsx",
          "line": 27
        },
        "props_type": null,
        "props": [],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.MailIcon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemActionIcons/ListItemActionIcons.tsx",
          "line": 34
        },
        "props_type": null,
        "props": [],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.PhoneIcon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemActionIcons/ListItemActionIcons.tsx",
          "line": 41
        },
        "props_type": null,
        "props": [],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Item.MessageIcon",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/ListItem/ListItemActionIcons/ListItemActionIcons.tsx",
          "line": 48
        },
        "props_type": null,
        "props": [],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Disclosure",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
          "line": 43
        },
        "props_type": "ListDisclosureProps",
        "props": [
          {
            "name": "title",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "Collapsed trigger title.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 18
            }
          },
          {
            "name": "expandedTitle",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Trigger title shown while expanded. Defaults to `title`.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 20
            }
          },
          {
            "name": "description",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Collapsed supporting copy.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 22
            }
          },
          {
            "name": "expandedDescription",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "Supporting copy shown while expanded. Defaults to `description`.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 24
            }
          },
          {
            "name": "children",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 25
            }
          },
          {
            "name": "renderChildren",
            "type": "(() => React.ReactNode) | undefined",
            "declared_type": "() => React.ReactNode",
            "required": false,
            "description": "Lazily creates revealed rows when the panel is rendered.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 27
            }
          },
          {
            "name": "open",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Controlled open state.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 29
            },
            "values": [
              false,
              true
            ],
            "values_complete": true
          },
          {
            "name": "defaultOpen",
            "type": "boolean | undefined",
            "declared_type": "boolean",
            "required": false,
            "description": "Initial open state for uncontrolled usage.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 31
            },
            "values": [
              false,
              true
            ],
            "values_complete": true,
            "default": "false",
            "default_kind": "source-expression"
          },
          {
            "name": "onOpenChange",
            "type": "((open: boolean) => void) | undefined",
            "declared_type": "(open: boolean) => void",
            "required": false,
            "description": "Called whenever the trigger changes open state.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 33
            }
          },
          {
            "name": "className",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 34
            }
          },
          {
            "name": "testId",
            "type": "string | undefined",
            "declared_type": "string",
            "required": false,
            "description": "Test selector for the wrapper; the trigger and panel take `-trigger` and `-panel` from it.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
              "line": 36
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      },
      {
        "name": "List.Section",
        "signature": 1,
        "visibility": "public",
        "source": {
          "path": "packages/design-system/src/components/organization/List/ListSection/ListSection.tsx",
          "line": 10
        },
        "props_type": "ListSectionProps",
        "props": [
          {
            "name": "title",
            "type": "string",
            "declared_type": "string",
            "required": true,
            "description": "Group title rendered as the labeled band.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 26
            }
          },
          {
            "name": "surface",
            "type": "DividerSurface | undefined",
            "declared_type": "DividerSurface",
            "required": false,
            "description": "Band treatment, matching Divider. Defaults to `surface` for in-card grouping.",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 28
            },
            "values": [
              "page",
              "surface"
            ],
            "values_complete": true,
            "default": "'surface'",
            "default_kind": "source-expression"
          },
          {
            "name": "children",
            "type": "React.ReactNode",
            "declared_type": "React.ReactNode",
            "required": true,
            "description": "",
            "source": {
              "path": "packages/design-system/src/components/organization/List/types.ts",
              "line": 29
            }
          }
        ],
        "branches": [],
        "constraints": [],
        "extraction_status": "extracted"
      }
    ],
    "type_sources": [
      {
        "path": "packages/design-system/src/components/organization/List/ListDisclosure/ListDisclosure.tsx",
        "line": 16,
        "name": "ListDisclosureProps",
        "code": "export interface ListDisclosureProps {\n    /** Collapsed trigger title. */\n    title: React.ReactNode;\n    /** Trigger title shown while expanded. Defaults to `title`. */\n    expandedTitle?: React.ReactNode;\n    /** Collapsed supporting copy. */\n    description?: React.ReactNode;\n    /** Supporting copy shown while expanded. Defaults to `description`. */\n    expandedDescription?: React.ReactNode;\n    children?: React.ReactNode;\n    /** Lazily creates revealed rows when the panel is rendered. */\n    renderChildren?: () => React.ReactNode;\n    /** Controlled open state. */\n    open?: boolean;\n    /** Initial open state for uncontrolled usage. */\n    defaultOpen?: boolean;\n    /** Called whenever the trigger changes open state. */\n    onOpenChange?: (open: boolean) => void;\n    className?: string;\n    /** Test selector for the wrapper; the trigger and panel take `-trigger` and `-panel` from it. */\n    testId?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 9,
        "name": "ListProps",
        "code": "export interface ListProps {\n    /** Rows (`List.Item`), `List.Section` groups, and/or `Divider` boundaries, in render order. */\n    children: React.ReactNode;\n    /** Accessible label announced for the list. */\n    ariaLabel?: string;\n    className?: string;\n    style?: React.CSSProperties;\n    /** Test selector for the list container. Rows carry their own `testId`. */\n    testId?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/List/types.ts",
        "line": 24,
        "name": "ListSectionProps",
        "code": "export interface ListSectionProps {\n    /** Group title rendered as the labeled band. */\n    title: string;\n    /** Band treatment, matching Divider. Defaults to `surface` for in-card grouping. */\n    surface?: DividerSurface;\n    children: React.ReactNode;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 9,
        "name": "ListItemDividerMode",
        "code": "export type ListItemDividerMode = 'full-bleed' | 'inset';"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 10,
        "name": "ListItemPadding",
        "code": "export type ListItemPadding = 'card' | 'sheet' | 'flush';"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 14,
        "name": "ListItemSize",
        "code": "export type ListItemSize = 'sm' | 'md';"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 15,
        "name": "ListItemSelectionMode",
        "code": "export type ListItemSelectionMode = 'single' | 'multiple';"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 25,
        "name": "ListItemSelectionPlacement",
        "code": "export type ListItemSelectionPlacement = 'leading' | 'trailing';"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 26,
        "name": "ListItemTone",
        "code": "export type ListItemTone = StatusTone | 'brand' | FeatureTone;"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 29,
        "name": "ListItemProgressBase",
        "code": "interface ListItemProgressBase {\n    /** Progress value used by ring/bar variants. */\n    value?: number;\n    /** Completed step count for step progress. */\n    current?: number;\n    /** Total step count for step progress. */\n    total?: number;\n    /** Optional text shown beside the title. */\n    label?: string;\n    /** Accessible progress label. */\n    ariaLabel?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 42,
        "name": "ListItemInlineProgress",
        "code": "export type ListItemInlineProgress =\n    | (ListItemProgressBase & { kind: 'bar'; value: number })\n    | (ListItemProgressBase & { kind: 'steps' });"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 45,
        "name": "ListItemRingProgress",
        "code": "export type ListItemRingProgress = ListItemProgressBase & { kind?: 'ring' };"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 46,
        "name": "ListItemProgress",
        "code": "export type ListItemProgress = ListItemInlineProgress | ListItemRingProgress;"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 52,
        "name": "ListItemProps",
        "code": "export interface ListItemProps {\n    /** Custom leading content (e.g. an `Avatar`, brand logo, or `List.Item.Icon` plate). */\n    leading?: React.ReactNode;\n    /** Registered glyph rendered as a tone `IconTile` in the leading slot. */\n    leadingGlyph?: GlyphName;\n    /** Tone for the generated leading `IconTile`. */\n    tone?: ListItemTone;\n    /** Small copy shown above the title. */\n    overline?: React.ReactNode;\n    /** Accessory pinned to the top-right, aligned with the overline (e.g. a count badge). */\n    overlineTrailing?: React.ReactNode;\n    /** Primary row title. */\n    title: React.ReactNode;\n    /** Wraps the title across up to this many lines before clamping. Defaults to single-line truncation. */\n    titleLines?: number;\n    /** Secondary row copy. */\n    description?: React.ReactNode;\n    /** Wraps the description across up to this many lines before clamping. Defaults to single-line truncation. */\n    descriptionLines?: number;\n    /** Right-aligned value shown in the title row. */\n    value?: React.ReactNode;\n    /** Tag slot shown at the trailing edge. */\n    tag?: React.ReactNode;\n    /** Status text rendered through ListItem.StatusIndicator. */\n    statusLabel?: React.ReactNode;\n    /** Status color treatment for statusLabel. */\n    statusTone?: StatusTone;\n    /** Custom trailing content. */\n    trailing?: React.ReactNode;\n    /** Icon slot shown after other trailing content. */\n    trailingIcon?: React.ReactNode;\n    /**\n     * Override for the disclosure chevron. Leave unset to derive it from interaction — any\n     * pressable row shows one, except selection rows and rows with caller-owned trailing\n     * content. Pass `true` to force it on (e.g. a non-interactive row inside a pressable card),\n     * or `false` to force it off.\n     */\n    chevron?: boolean;\n    className?: string;\n    style?: React.CSSProperties;\n    /** Shows a bottom divider when true. */\n    divider?: boolean;\n    /** Divider alignment. */\n    dividerMode?: ListItemDividerMode;\n    /** Row padding preset. */\n    padding?: ListItemPadding;\n    /** Row density. `sm` renders a compact row (32px leading slot). Defaults to `md`. */\n    size?: ListItemSize;\n    /**\n     * Row background on the `page | surface` scale. Defaults to `surface`\n     * (elevated card row); `page` sits flush on a page-level background.\n     */\n    surface?: CdsSurface;\n    /** Optional id for the row container or interactive control. */\n    id?: string;\n    /** Id of content controlled by this row when used as a disclosure trigger. */\n    ariaControls?: string;\n    /** Expanded state announced for interactive rows. */\n    expanded?: boolean;\n    /**\n     * Dims the row and blocks presses. A disabled selection row keeps its radio/checkbox\n     * semantics so the choice stays announced — it just can't be chosen.\n     */\n    disabled?: boolean;\n    /** Called when the row is pressed. */\n    onPress?: () => void;\n    /** Accessible label for interactive rows when visible copy is not sufficient. */\n    ariaLabel?: string;\n    /** Haptic feedback for interactive row presses. Defaults to `true` (`light`). */\n    haptic?: HapticFeedback;\n    /** Test selector. Lands on the row's button when it is pressable, otherwise on the container. */\n    testId?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 130,
        "name": "ListItemSelectionProps",
        "code": "export interface ListItemSelectionProps extends Omit<ListItemProps, 'onPress'> {\n    /** Selection control shape. */\n    selectionMode?: ListItemSelectionMode;\n    /** Where the control renders; `leading` replaces the leading icon. Defaults to `trailing`. */\n    selectionPlacement?: ListItemSelectionPlacement;\n    /** Current selected state. */\n    selected?: boolean;\n    /** Called with the next selected state when pressed. */\n    onSelectedChange?: (selected: boolean) => void;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 145,
        "name": "ListItemProgressProps",
        "code": "export interface ListItemProgressProps extends ListItemProps {\n    /** Progress configuration rendered in the row. */\n    progress: number | ListItemProgress;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 154,
        "name": "ListItemStatProps",
        "code": "export interface ListItemStatProps {\n    /** The key, rendered as secondary text on the left. */\n    label: string;\n    /** The statistic, rendered as primary text on the right. */\n    value: string | number;\n    /** Shows the row divider when true. */\n    divider?: boolean;\n    /** Test selector; lands on the wrapper around the row and its divider. */\n    testId?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 169,
        "name": "ListItemEmptyProps",
        "code": "export interface ListItemEmptyProps {\n    /** The empty-state copy, rendered as secondary text. */\n    message: string;\n    /** Test selector for the placeholder container. */\n    testId?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/organization/ListItem/types.ts",
        "line": 180,
        "name": "ListItemIconProps",
        "code": "export interface ListItemIconProps {\n    children?: React.ReactNode;\n    /** Fallback initial shown when children are absent. */\n    initial?: string;\n    /** Tokenized icon color treatment. */\n    tone?: ListItemTone;\n    /** Accessible label for meaningful icons. */\n    label?: string;\n    /** Custom background color. */\n    background?: string;\n    /** Custom foreground color. */\n    foreground?: string;\n}"
      },
      {
        "path": "packages/design-system/src/components/primitives/Divider/Divider.tsx",
        "line": 7,
        "name": "DividerSurface",
        "code": "export type DividerSurface = 'page' | 'surface';"
      },
      {
        "path": "packages/design-system/src/components/status/StatusIndicator/StatusIndicator.tsx",
        "line": 12,
        "name": "StatusIndicatorProps",
        "code": "export interface StatusIndicatorProps {\n    children: React.ReactNode;\n    /** Semantic status color for the dot; maps to the `--cds-status-*` tokens. Defaults to `neutral`. */\n    tone?: StatusTone;\n    className?: string;\n    /** Optional test selector. */\n    testId?: string;\n}"
      },
      {
        "path": "packages/design-system/src/styles/featureTone.ts",
        "line": 9,
        "name": "FEATURE_TONES",
        "code": "FEATURE_TONES = ['monitoring', 'guard', 'identity'] as const"
      },
      {
        "path": "packages/design-system/src/styles/featureTone.ts",
        "line": 11,
        "name": "FeatureTone",
        "code": "export type FeatureTone = (typeof FEATURE_TONES)[number];"
      },
      {
        "path": "packages/design-system/src/styles/statusTone.ts",
        "line": 7,
        "name": "STATUS_TONES",
        "code": "STATUS_TONES = ['neutral', 'info', 'success', 'warning', 'danger'] as const"
      },
      {
        "path": "packages/design-system/src/styles/statusTone.ts",
        "line": 9,
        "name": "StatusTone",
        "code": "export type StatusTone = (typeof STATUS_TONES)[number];"
      },
      {
        "path": "packages/design-system/src/tokens/CdsHaptic.ts",
        "line": 6,
        "name": "HapticFeedback",
        "code": "export type HapticFeedback = boolean | HapticType;"
      },
      {
        "path": "packages/design-system/src/tokens/CdsSurface.ts",
        "line": 5,
        "name": "PUI_SURFACES",
        "code": "PUI_SURFACES = ['page', 'surface'] as const"
      },
      {
        "path": "packages/design-system/src/tokens/CdsSurface.ts",
        "line": 7,
        "name": "CdsSurface",
        "code": "export type CdsSurface = (typeof PUI_SURFACES)[number];"
      },
      {
        "path": "packages/design-system/src/tokens/HapticType.ts",
        "line": 2,
        "name": "HapticType",
        "code": "export type HapticType = 'light' | 'medium' | 'heavy' | 'success' | 'warning' | 'error' | 'selection';"
      },
      {
        "path": "packages/design-system/src/types/GlyphName.ts",
        "line": 10,
        "name": "GLYPH_NAMES",
        "code": "GLYPH_NAMES = [\n    // Action\n    'arrow-left',\n    'arrow-right',\n    'arrow-up',\n    'arrow-down',\n    'chevron-down',\n    'chevron-up',\n    'chevron-left',\n    'chevron-right',\n    'caret-down',\n    'caret-up',\n    // Trend lines, for a change in a figure over time. Distinct from the arrows and carets above,\n    // which point at a direction without implying a measurement moved.\n    'trend-up',\n    'trend-down',\n    'collapse',\n    'expand',\n    'dropdown-collapse',\n    'dropdown-expand',\n    'close',\n    'clear',\n    'menu',\n    'copy',\n    'search',\n    'add',\n    // Renders the `send` drawing; a separate name for share-sheet actions.\n    'share',\n    // System\n    'phone',\n    'sim',\n    'account',\n    'family',\n    'home',\n    'wifi',\n    'cart',\n    'vpn',\n    'lock',\n    'block',\n    'timer',\n    'check',\n    'send',\n    'info',\n    'number',\n    'filter',\n    'scan',\n    'log',\n    'trash',\n    // Inbox\n    'missed',\n    'call',\n    'voicemail',\n    'sms',\n    'email',\n    // Feature\n    'data-removal',\n    'dark-web-monitoring',\n    'cloaked-pay',\n    'cloaked-ai',\n    'sms-guard',\n    'email-guard',\n    'call-guard',\n    'card',\n    'password',\n    'guard',\n    // Legacy aliases (kept for back-compat; render the Figma glyph)\n    'bell',\n    'circle-outline',\n    'dot',\n    'settings',\n    'clock',\n    'mail',\n    'message',\n    'user',\n    'upload',\n] as const"
      },
      {
        "path": "packages/design-system/src/types/GlyphName.ts",
        "line": 87,
        "name": "GlyphName",
        "code": "export type GlyphName = (typeof GLYPH_NAMES)[number];"
      }
    ],
    "defaults_policy": "Only explicit destructured parameter initializers are extracted. Other runtime defaults remain in implementation source."
  },
  "platforms": {
    "implemented": [
      "web"
    ],
    "native": "Imported design guidance only; no native implementation or parity verification in this preview.",
    "react": {
      "implementation": "local",
      "status": "preview",
      "parity": "web-reference"
    },
    "vue": {
      "implementation": "absent",
      "parity": "not-verified",
      "status": "reference-only"
    },
    "swift": {
      "implementation": "absent",
      "parity": "not-verified",
      "status": "reference-only"
    },
    "kotlin": {
      "implementation": "absent",
      "parity": "not-verified",
      "status": "reference-only"
    }
  },
  "missing_facts": [
    {
      "code": "human-review-pending",
      "detail": "This local preview has no recorded human design or engineering sign-off."
    },
    {
      "code": "platform-parity-unverified",
      "detail": "Vue, Swift and Kotlin implementations are absent from this package; platform parity has not been verified."
    },
    {
      "code": "figma-mapping-unverified",
      "detail": "No current component-level Figma node and immutable revision have been verified for this contract."
    }
  ],
  "review": {
    "local_status": "not-reviewed",
    "source_approval": null,
    "imported_spec_status": "approved",
    "spec_origin": "imported-adapted",
    "local_spec_source_status": "preview",
    "imported_source_revision": "f96f416e1c3bfbfaffcd155a88b87b18b8bb25f1",
    "note": "Inherited specification status is provenance, not approval of the current local implementation or extracted contract."
  }
}
