{
  "packageName": "UnifiedSpread",
  "productVersion": "1.0.0",
  "apiVersion": "1.3",
  "buildVersion": "20260626.3114",
  "publicEntry": "scripts/main.js",
  "versionMetadata": "VERSION.json",
  "runtimeRequired": [
    "VERSION.json",
    "PACKAGE_MANIFEST.json",
    "scripts/",
    "themes/base/",
    "scripts/ui/floating_ui_manager.js",
    "scripts/services/security_policy.js",
    "scripts/services/regression_test_service.js",
    "scripts/scripting/",
    "scripts/compatibility/vba/",
    "scripts/app/contribution_registry.js",
    "scripts/i18n/translator.js",
    "themes/base/unified_spread.css",
    "themes/base/grid_layout.css",
    "themes/base/sheet_tabs.css",
    "themes/base/formula_bar.css",
    "themes/base/panes.css",
    "themes/base/context_menu.css",
    "themes/flat/unified_spread.css",
    "themes/dark/unified_spread_dark.css"
  ],
  "runtimeOptional": [
    "demo/",
    "docs/",
    "demo/oneeditor-integration.html",
    "demo/assets/package_style_loader.js",
    "docs/STYLE_CONTRACT.md",
    "docs/VISUAL_REGRESSION_CHECKLIST.md"
  ],
  "directoryRoles": {
    "scripts/": "Runtime AMD package",
    "themes/": "Runtime theme resources",
    "demo/": "Host integration examples",
    "docs/": "Human-readable documentation"
  },
  "developmentVersion": "dev-31.0.14",
  "version": "31.0.14",
  "engine": "nativegrid-programable-file-payload-api",
  "developmentMilestone": "31.0.14",
  "description": "UnifiedSpread dev-31.0.14 ProgramableFilePayloadApi: implements Single File Policy v1.3 EditorControl openFile/saveFile/saveAsFile/exportFile APIs with HostFilePayload/v1 and HostSavePayload/v1, while keeping Workbench OpenFile/SaveFile callbacks separated from EditorControl programmatic APIs.",
  "revision": "programable-file-payload-api",
  "contractVersion": "1.2",
  "publicControls": [
    "createEditorControl",
    "createWorkbenchControl"
  ],
  "requiredPackages": {
    "UnifiedControl": {
      "apiVersion": ">=0.7 <1.0",
      "developmentVersion": ">=dev-0.7.2",
      "publicEntry": "scripts/main.js",
      "required": true
    }
  },
  "styles": {
    "required": [
      "themes/base/unified_spread.css",
      "themes/base/grid_layout.css",
      "themes/base/sheet_tabs.css",
      "themes/base/formula_bar.css",
      "themes/base/panes.css",
      "themes/base/context_menu.css"
    ],
    "themes": {
      "flat": [
        "themes/flat/unified_spread.css"
      ],
      "light": [
        "themes/flat/unified_spread.css"
      ],
      "dark": [
        "themes/dark/unified_spread_dark.css"
      ]
    },
    "hostOptional": [
      "demo/assets/demo.css"
    ]
  },
  "styleScope": {
    "rootClass": ".uspread",
    "rootDom": "<div class=\"uspread uspread-workbench\" data-package=\"UnifiedSpread\" data-theme=\"flat\">",
    "overlayClass": ".unifiedspread-floating-ui",
    "cssVariables": [
      "--uspread-bg",
      "--uspread-surface",
      "--uspread-surface2",
      "--uspread-border",
      "--uspread-border2",
      "--uspread-text",
      "--uspread-muted",
      "--uspread-primary",
      "--uspread-primary-soft",
      "--uspread-hover",
      "--uspread-toolbar-height"
    ]
  },
  "programableFileApi": {
    "payloadVersion": "v1",
    "hostFilePayload": "HostFilePayload/v1",
    "hostSavePayload": "HostSavePayload/v1",
    "editorMethods": [
      "openFile",
      "saveFile",
      "saveAsFile",
      "exportFile",
      "getFileContext",
      "getFileCapabilities"
    ],
    "callbackDirection": "OpenFile/SaveFile callbacks are Workbench or Package to Host. EditorControl methods are Host or Workbench to EditorControl."
  }
}