{
  "schemaVersion": 1,
  "package": "@fayegram-ai/faye-ui",
  "moduleGroup": "patterns",
  "entry": "@fayegram-ai/faye-ui/patterns/transfer-list",
  "source": "packages/patterns/src/transfer-list.tsx",
  "clientBoundary": true,
  "declarations": [
    {
      "name": "TransferItem",
      "kind": "InterfaceDeclaration",
      "signature": "export interface TransferItem {\n    id: string;\n    label: string;\n    disabled?: boolean;\n}",
      "members": [
        {
          "name": "id",
          "optional": false,
          "type": "string"
        },
        {
          "name": "label",
          "optional": false,
          "type": "string"
        },
        {
          "name": "disabled",
          "optional": true,
          "type": "boolean"
        }
      ],
      "line": 10
    },
    {
      "name": "TransferListProps",
      "kind": "InterfaceDeclaration",
      "signature": "export interface TransferListProps {\n    items: readonly TransferItem[];\n    value: readonly string[];\n    onValueChange: (value: string[]) => void;\n    availableLabel?: string;\n    chosenLabel?: string;\n    disabled?: boolean;\n    showSelectAll?: boolean;\n    getSelectAllLabel?: (list: string) => string;\n    emptyMessage?: string;\n    addLabel?: string;\n    removeLabel?: string;\n    getMoveLabel?: (destination: string) => string;\n    formatAnnouncement?: (count: number, destination: string) => string;\n}",
      "members": [
        {
          "name": "items",
          "optional": false,
          "type": "readonly TransferItem[]"
        },
        {
          "name": "value",
          "optional": false,
          "type": "readonly string[]"
        },
        {
          "name": "onValueChange",
          "optional": false,
          "type": "(value: string[]) => void"
        },
        {
          "name": "availableLabel",
          "optional": true,
          "type": "string"
        },
        {
          "name": "chosenLabel",
          "optional": true,
          "type": "string"
        },
        {
          "name": "disabled",
          "optional": true,
          "type": "boolean"
        },
        {
          "name": "showSelectAll",
          "optional": true,
          "type": "boolean"
        },
        {
          "name": "getSelectAllLabel",
          "optional": true,
          "type": "(list: string) => string"
        },
        {
          "name": "emptyMessage",
          "optional": true,
          "type": "string"
        },
        {
          "name": "addLabel",
          "optional": true,
          "type": "string"
        },
        {
          "name": "removeLabel",
          "optional": true,
          "type": "string"
        },
        {
          "name": "getMoveLabel",
          "optional": true,
          "type": "(destination: string) => string"
        },
        {
          "name": "formatAnnouncement",
          "optional": true,
          "type": "(count: number, destination: string) => string"
        }
      ],
      "line": 15
    },
    {
      "name": "TransferList",
      "kind": "FunctionDeclaration",
      "signature": "export function TransferList(input: TransferListProps)",
      "line": 31
    }
  ],
  "typesComplete": false,
  "typeScope": "Explicit source declarations plus dependency-resolved emitted exports. Full inherited/generic restrictions remain authoritative in installed declarations.",
  "compiledExports": [
    {
      "name": "TransferList",
      "kind": "value",
      "type": "(input: TransferListProps) => import(\"react\").JSX.Element",
      "description": "A controlled checklist pattern, not a remote list engine. Order follows the supplied items."
    },
    {
      "name": "TransferItem",
      "kind": "type",
      "type": "TransferItem",
      "description": ""
    },
    {
      "name": "TransferListProps",
      "kind": "type",
      "type": "TransferListProps",
      "description": ""
    }
  ],
  "declaration": "packages/faye-ui/dist/patterns/transfer-list.d.ts"
}
