{
  "name": "selector",
  "version": "20.0.2",
  "jetVersion": "^20.0.2",
  "pack": "oj-c",
  "type": "composite",
  "dependencyScope": "runtime",
  "license": "https://opensource.org/licenses/UPL",
  "implements": [
    "CSelectorElement"
  ],
  "description": "The selector component renders checkboxes in collections to support selection.",
  "displayName": "Selector",
  "extension": {
    "catalog": {
      "category": "Collections"
    },
    "vbdt": {
      "module": "oj-c/selector"
    },
    "webelement": {
      "package": "@oracle/oraclejet-core-pack",
      "version": "20.0.2",
      "docUrl": "https://www.oracle.com/webfolder/technetwork/jet/cpwdtsdoc/classes/SelectorWebElement.html",
      "export": "findSelector",
      "main": "@oracle/oraclejet-core-pack/webdriver"
    }
  },
  "help": "oj-c.Selector.html",
  "since": "15.0.0",
  "requirements": [
    {
      "type": "anyOf",
      "label": "accessibility",
      "properties": [
        "aria-label",
        "aria-labelledby"
      ]
    }
  ],
  "status": [
    {
      "type": "supersedes",
      "since": "16.0.0",
      "value": [
        "oj-selector"
      ]
    }
  ],
  "main": "oj-c/selector",
  "properties": {
    "rowKey": {
      "type": "string|number",
      "description": "Specifies the row key of each selector.",
      "displayName": "Row Key",
      "help": "#rowKey"
    },
    "selectedKeys": {
      "type": "object",
      "description": "Specifies the selectedKeys.",
      "displayName": "Selected Keys",
      "help": "#selectedKeys",
      "writeback": true
    },
    "indeterminate": {
      "type": "boolean",
      "description": "Visual only state to indicate partial selection",
      "displayName": "indeterminate",
      "help": "#indeterminate",
      "value": false
    },
    "selectionMode": {
      "type": "string",
      "description": "Specifies the selection mode.",
      "displayName": "Selection Mode",
      "help": "#selectionMode",
      "propertyEditorValues": {
        "multiple": {
          "description": "Multiple items can be selected at the same time.",
          "displayName": "Multiple"
        },
        "single": {
          "description": "Only a single item can be selected at a time.",
          "displayName": "Single"
        }
      },
      "enumValues": [
        "multiple",
        "single"
      ]
    }
  },
  "methods": {
    "setProperty": {
      "description": "Sets a property or a single subproperty for complex properties and notifies the component of the change, triggering a corresponding event.",
      "help": "#setProperty",
      "params": [
        {
          "name": "property",
          "description": "The property name to set. Supports dot notation for subproperty access.",
          "type": "string"
        },
        {
          "name": "value",
          "description": "The new value to set the property to.",
          "type": "any"
        }
      ],
      "return": "void"
    },
    "getProperty": {
      "description": "Retrieves the value of a property or a subproperty.",
      "help": "#getProperty",
      "params": [
        {
          "name": "property",
          "description": "The property name to get. Supports dot notation for subproperty access.",
          "type": "string"
        }
      ],
      "return": "any"
    },
    "setProperties": {
      "description": "Performs a batch set of properties.",
      "help": "#setProperties",
      "params": [
        {
          "name": "properties",
          "description": "An object containing the property and value pairs to set.",
          "type": "object"
        }
      ],
      "return": "void"
    }
  }
}