{
  "props": [
    {
      "property": "children",
      "type": "string | number | bigint | false | true | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | ReactPortal | Promise<AwaitedReactNode> | (item: T) => ReactNode",
      "kind": "unknown",
      "values": [],
      "required": true,
      "description": "The contents of the collection."
    },
    {
      "property": "direction",
      "type": "\"bottom\" | \"top\"",
      "kind": "enum",
      "values": [
        "bottom",
        "top"
      ],
      "default": "'bottom'",
      "description": "Direction the menu will render relative to the ComboBox."
    },
    {
      "property": "align",
      "type": "\"start\" | \"end\"",
      "kind": "enum",
      "values": [
        "start",
        "end"
      ],
      "default": "'start'",
      "description": "Alignment of the menu relative to the input target."
    },
    {
      "property": "menuWidth",
      "type": "number",
      "kind": "number",
      "values": [],
      "description": "Width of the menu. By default, matches width of the trigger. Note that the minimum width of the\ndropdown is always equal to the trigger's width."
    },
    {
      "property": "loadingState",
      "type": "\"loading\" | \"sorting\" | \"loadingMore\" | \"error\" | \"idle\" | \"filtering\"",
      "kind": "enum",
      "values": [
        "loading",
        "sorting",
        "loadingMore",
        "error",
        "idle",
        "filtering"
      ],
      "description": "The current loading state of the ComboBox. Determines whether or not the progress circle should\nbe shown."
    },
    {
      "property": "validationBehavior",
      "type": "\"native\" | \"aria\"",
      "kind": "enum",
      "values": [
        "native",
        "aria"
      ],
      "default": "'native'",
      "description": "Whether to use native HTML form validation to prevent form submission\nwhen the value is missing or invalid, or mark the field as required\nor invalid via ARIA.",
      "inheritedFrom": "RACValidation"
    },
    {
      "property": "shouldFocusWrap",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether keyboard navigation is circular.",
      "inheritedFrom": "AriaComboBoxProps"
    },
    {
      "property": "defaultItems",
      "type": "Iterable<T>",
      "kind": "unknown",
      "values": [],
      "description": "The list of ComboBox items (uncontrolled)."
    },
    {
      "property": "items",
      "type": "Iterable<T>",
      "kind": "unknown",
      "values": [],
      "description": "The list of ComboBox items (controlled)."
    },
    {
      "property": "onOpenChange",
      "type": "(isOpen: boolean, menuTrigger?: MenuTriggerAction) => void",
      "kind": "unknown",
      "values": [],
      "description": "Method that is called when the open state of the menu changes. Returns the new open state and\nthe action that caused the opening of the menu."
    },
    {
      "property": "inputValue",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "The value of the ComboBox input (controlled)."
    },
    {
      "property": "defaultInputValue",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "The default value of the ComboBox input (uncontrolled)."
    },
    {
      "property": "onInputChange",
      "type": "(value: string) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when the ComboBox input value changes."
    },
    {
      "property": "allowsCustomValue",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether the ComboBox allows a non-item matching input value to be set."
    },
    {
      "property": "menuTrigger",
      "type": "\"input\" | \"focus\" | \"manual\"",
      "kind": "enum",
      "values": [
        "focus",
        "input",
        "manual"
      ],
      "default": "'input'",
      "description": "The interaction required to display the ComboBox menu."
    },
    {
      "property": "disabledKeys",
      "type": "Iterable<Key>",
      "kind": "unknown",
      "values": [],
      "description": "The item keys that are disabled. These items cannot be selected, focused, or otherwise\ninteracted with.",
      "inheritedFrom": "CollectionBase"
    },
    {
      "property": "isDisabled",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether the input is disabled.",
      "inheritedFrom": "InputBase"
    },
    {
      "property": "isReadOnly",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether the input can be selected but not changed by the user.",
      "inheritedFrom": "InputBase"
    },
    {
      "property": "isRequired",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether user input is required on the input before form submission.",
      "inheritedFrom": "Validation"
    },
    {
      "property": "isInvalid",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether the input value is invalid.",
      "inheritedFrom": "Validation"
    },
    {
      "property": "validate",
      "type": "(value: ComboBoxValidationValue<\"single\">) => true | ValidationError",
      "kind": "unknown",
      "values": [],
      "description": "A function that returns an error message if a given value is invalid.\nValidation errors are displayed to the user when the form is submitted\nif `validationBehavior=\"native\"`. For realtime validation, use the `isInvalid`\nprop instead.",
      "inheritedFrom": "Validation"
    },
    {
      "property": "autoFocus",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "description": "Whether the element should receive focus on render.",
      "inheritedFrom": "FocusableProps"
    },
    {
      "property": "onFocus",
      "type": "(e: FocusEvent<HTMLInputElement, Element>) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when the element receives focus.",
      "inheritedFrom": "FocusEvents"
    },
    {
      "property": "onBlur",
      "type": "(e: FocusEvent<HTMLInputElement, Element>) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when the element loses focus.",
      "inheritedFrom": "FocusEvents"
    },
    {
      "property": "onFocusChange",
      "type": "(isFocused: boolean) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when the element's focus status changes.",
      "inheritedFrom": "FocusEvents"
    },
    {
      "property": "onKeyDown",
      "type": "(e: KeyboardEvent) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when a key is pressed.",
      "inheritedFrom": "KeyboardEvents"
    },
    {
      "property": "onKeyUp",
      "type": "(e: KeyboardEvent) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when a key is released.",
      "inheritedFrom": "KeyboardEvents"
    },
    {
      "property": "id",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "The element's unique identifier. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id).",
      "inheritedFrom": "DOMProps"
    },
    {
      "property": "name",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "The name of the input element, used when submitting an HTML form. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#htmlattrdefname).",
      "inheritedFrom": "InputDOMProps"
    },
    {
      "property": "form",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "The `<form>` element to associate the input with.\nThe value of this attribute must be the id of a `<form>` in the same document.\nSee [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#form).",
      "inheritedFrom": "InputDOMProps"
    },
    {
      "property": "aria-label",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "Defines a string value that labels the current element.",
      "inheritedFrom": "AriaLabelingProps"
    },
    {
      "property": "aria-labelledby",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "Identifies the element (or elements) that labels the current element.",
      "inheritedFrom": "AriaLabelingProps"
    },
    {
      "property": "aria-describedby",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "Identifies the element (or elements) that describes the object.",
      "inheritedFrom": "AriaLabelingProps"
    },
    {
      "property": "aria-details",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "Identifies the element (or elements) that provide a detailed, extended description for the\nobject.",
      "inheritedFrom": "AriaLabelingProps"
    },
    {
      "property": "formValue",
      "type": "\"text\" | \"key\"",
      "kind": "enum",
      "values": [
        "text",
        "key"
      ],
      "default": "'key'",
      "description": "Whether the text or key of the selected item is submitted as part of an HTML form. When\n`allowsCustomValue` is `true`, this option does not apply and the text is always submitted."
    },
    {
      "property": "slot",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "A slot name for the component. Slots allow the component to receive props from a parent\ncomponent. An explicit `null` value indicates that the local props completely override all\nprops received from a parent.",
      "inheritedFrom": "SlotProps"
    },
    {
      "property": "selectedKey",
      "type": "string | number",
      "kind": "unknown",
      "values": [],
      "description": "The currently selected key in the collection (controlled).",
      "inheritedFrom": "SingleSelection"
    },
    {
      "property": "defaultSelectedKey",
      "type": "string | number",
      "kind": "unknown",
      "values": [],
      "description": "The initial selected key in the collection (uncontrolled).",
      "inheritedFrom": "SingleSelection"
    },
    {
      "property": "onSelectionChange",
      "type": "(key: Key) => void",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when the selection changes.",
      "inheritedFrom": "SingleSelection"
    },
    {
      "property": "size",
      "type": "\"S\" | \"M\" | \"L\" | \"XL\"",
      "kind": "enum",
      "values": [
        "S",
        "M",
        "L",
        "XL"
      ],
      "default": "'M'",
      "description": "The size of the Combobox.",
      "inheritedFrom": "ComboboxStyleProps"
    },
    {
      "property": "prefix",
      "type": "string | number | bigint | false | true | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | ReactPortal | Promise<AwaitedReactNode>",
      "kind": "unknown",
      "values": [],
      "description": "The prefix to display in the ComboBox. A non-interactive element that appears before the input.",
      "inheritedFrom": "ComboboxStyleProps"
    },
    {
      "property": "styles",
      "type": "StylesProp",
      "kind": "unknown",
      "values": [],
      "description": "Spectrum-defined styles, returned by the `style()` macro.",
      "inheritedFrom": "StyleProps"
    },
    {
      "property": "labelPosition",
      "type": "\"top\" | \"side\"",
      "kind": "enum",
      "values": [
        "top",
        "side"
      ],
      "default": "'top'",
      "description": "The label's overall position relative to the element it is labeling.",
      "inheritedFrom": "SpectrumLabelableProps"
    },
    {
      "property": "labelAlign",
      "type": "\"start\" | \"end\"",
      "kind": "enum",
      "values": [
        "start",
        "end"
      ],
      "default": "'start'",
      "description": "The label's horizontal alignment relative to the element it is labeling.",
      "inheritedFrom": "SpectrumLabelableProps"
    },
    {
      "property": "necessityIndicator",
      "type": "\"label\" | \"icon\"",
      "kind": "enum",
      "values": [
        "icon",
        "label"
      ],
      "default": "'icon'",
      "description": "Whether the required state should be shown as an icon or text.",
      "inheritedFrom": "SpectrumLabelableProps"
    },
    {
      "property": "contextualHelp",
      "type": "string | number | bigint | false | true | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | ReactPortal | Promise<AwaitedReactNode>",
      "kind": "unknown",
      "values": [],
      "description": "A ContextualHelp element to place next to the label.",
      "inheritedFrom": "SpectrumLabelableProps"
    },
    {
      "property": "label",
      "type": "string | number | bigint | false | true | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | ReactPortal | Promise<AwaitedReactNode>",
      "kind": "unknown",
      "values": [],
      "description": "The content to display as the label.",
      "inheritedFrom": "LabelableProps"
    },
    {
      "property": "description",
      "type": "string | number | bigint | false | true | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | ReactPortal | Promise<AwaitedReactNode>",
      "kind": "unknown",
      "values": [],
      "description": "A description for the field. Provides a hint such as specific requirements for what to choose.",
      "inheritedFrom": "HelpTextProps"
    },
    {
      "property": "errorMessage",
      "type": "string | number | bigint | false | true | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | ReactPortal | Promise<AwaitedReactNode> | (v: ValidationResult) => ReactNode",
      "kind": "unknown",
      "values": [],
      "description": "An error message for the field.",
      "inheritedFrom": "HelpTextProps"
    },
    {
      "property": "dependencies",
      "type": "readonly any[]",
      "kind": "unknown",
      "values": [],
      "description": "Values that should invalidate the item cache when using dynamic collections.",
      "inheritedFrom": "CollectionProps"
    },
    {
      "property": "shouldFlip",
      "type": "boolean",
      "kind": "boolean",
      "values": [],
      "default": "true",
      "description": "Whether the element should flip its orientation (e.g. top to bottom or left to right) when\nthere is insufficient room for it to render completely.",
      "inheritedFrom": "PositionProps"
    },
    {
      "property": "onLoadMore",
      "type": "() => any",
      "kind": "unknown",
      "values": [],
      "description": "Handler that is called when more items should be loaded, e.g. while scrolling near the bottom.",
      "inheritedFrom": "AsyncLoadable"
    },
    {
      "property": "placeholder",
      "type": "string",
      "kind": "text",
      "values": [],
      "description": "Temporary text that occupies the text input when it is empty.\nSee [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/placeholder).",
      "inheritedFrom": "InputProps"
    }
  ],
  "status": "stable"
}
