{
  "schemaVersion": "1.0.0",
  "readme": "",
  "modules": [
    {
      "kind": "javascript-module",
      "path": "src/defs-react.js",
      "declarations": [],
      "exports": []
    },
    {
      "kind": "javascript-module",
      "path": "src/defs.js",
      "declarations": [
        {
          "kind": "variable",
          "name": "types",
          "type": {
            "text": "['text', 'number', 'password', 'url', 'email', 'tel']"
          },
          "default": "['text', 'number', 'password', 'url', 'email', 'tel']"
        },
        {
          "kind": "variable",
          "name": "inputModes",
          "type": {
            "text": "['none', 'text', 'tel', 'url', 'email', 'numeric', 'decimal', 'search']"
          },
          "default": "['none', 'text', 'tel', 'url', 'email', 'numeric', 'decimal', 'search']"
        },
        {
          "kind": "variable",
          "name": "statusTypes",
          "type": {
            "text": "['default', 'success', 'error']"
          },
          "default": "['default', 'success', 'error']"
        },
        {
          "kind": "variable",
          "name": "sizes",
          "type": {
            "text": "['small', 'medium', 'large']"
          },
          "default": "['small', 'medium', 'large']"
        },
        {
          "kind": "variable",
          "name": "defaultProps",
          "type": {
            "text": "DefaultProps"
          },
          "default": "{ type: 'text', value: '', size: 'medium', status: 'default', disabled: false, readonly: false, }",
          "description": "Default values for optional properties that have default fallback values in the component."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "types",
          "declaration": {
            "name": "types",
            "module": "src/defs.js"
          }
        },
        {
          "kind": "js",
          "name": "inputModes",
          "declaration": {
            "name": "inputModes",
            "module": "src/defs.js"
          }
        },
        {
          "kind": "js",
          "name": "statusTypes",
          "declaration": {
            "name": "statusTypes",
            "module": "src/defs.js"
          }
        },
        {
          "kind": "js",
          "name": "sizes",
          "declaration": {
            "name": "sizes",
            "module": "src/defs.js"
          }
        },
        {
          "kind": "js",
          "name": "defaultProps",
          "declaration": {
            "name": "defaultProps",
            "module": "src/defs.js"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/index.js",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "PieTextInput",
          "slots": [
            {
              "description": "Short text to display at the start of the input. Wrap the text in a <span>. Do not use with leadingIcon at the same time.",
              "name": "leadingText"
            },
            {
              "description": "An icon to display at the start of the input. Do not use with leadingText at the same time.",
              "name": "leadingIcon"
            },
            {
              "description": "Short text to display at the end of the input. Wrap the text in a <span>. Do not use with trailingIcon at the same time.",
              "name": "trailingText"
            },
            {
              "description": "An icon to display at the end of the input. Do not use with trailingText at the same time.",
              "name": "trailingIcon"
            }
          ],
          "members": [
            {
              "kind": "field",
              "name": "type",
              "privacy": "public",
              "attribute": "type",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "value",
              "privacy": "public",
              "attribute": "value"
            },
            {
              "kind": "field",
              "name": "name",
              "type": {
                "text": "TextInputProps['name']"
              },
              "privacy": "public",
              "attribute": "name",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "disabled",
              "privacy": "public",
              "attribute": "disabled",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "pattern",
              "type": {
                "text": "TextInputProps['pattern']"
              },
              "privacy": "public",
              "attribute": "pattern"
            },
            {
              "kind": "field",
              "name": "minlength",
              "type": {
                "text": "TextInputProps['minlength']"
              },
              "privacy": "public",
              "attribute": "minlength"
            },
            {
              "kind": "field",
              "name": "maxlength",
              "type": {
                "text": "TextInputProps['maxlength']"
              },
              "privacy": "public",
              "attribute": "maxlength"
            },
            {
              "kind": "field",
              "name": "autocomplete",
              "type": {
                "text": "TextInputProps['autocomplete']"
              },
              "privacy": "public",
              "attribute": "autocomplete"
            },
            {
              "kind": "field",
              "name": "placeholder",
              "type": {
                "text": "TextInputProps['placeholder']"
              },
              "privacy": "public",
              "attribute": "placeholder"
            },
            {
              "kind": "field",
              "name": "autoFocus",
              "type": {
                "text": "TextInputProps['autoFocus']"
              },
              "privacy": "public",
              "attribute": "autoFocus"
            },
            {
              "kind": "field",
              "name": "inputmode",
              "type": {
                "text": "TextInputProps['inputmode']"
              },
              "privacy": "public",
              "attribute": "inputmode"
            },
            {
              "kind": "field",
              "name": "readonly",
              "privacy": "public",
              "attribute": "readonly"
            },
            {
              "kind": "field",
              "name": "defaultValue",
              "type": {
                "text": "TextInputProps['defaultValue']"
              },
              "privacy": "public",
              "attribute": "defaultValue"
            },
            {
              "kind": "field",
              "name": "assistiveText",
              "type": {
                "text": "TextInputProps['assistiveText']"
              },
              "privacy": "public",
              "attribute": "assistiveText"
            },
            {
              "kind": "field",
              "name": "status",
              "privacy": "public",
              "attribute": "status"
            },
            {
              "kind": "field",
              "name": "step",
              "type": {
                "text": "TextInputProps['step']"
              },
              "privacy": "public",
              "attribute": "step"
            },
            {
              "kind": "field",
              "name": "min",
              "type": {
                "text": "TextInputProps['min']"
              },
              "privacy": "public",
              "attribute": "min"
            },
            {
              "kind": "field",
              "name": "max",
              "type": {
                "text": "TextInputProps['max']"
              },
              "privacy": "public",
              "attribute": "max"
            },
            {
              "kind": "field",
              "name": "size",
              "privacy": "public",
              "attribute": "size"
            },
            {
              "kind": "field",
              "name": "required",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "attribute": "required"
            },
            {
              "kind": "field",
              "name": "input",
              "type": {
                "text": "HTMLInputElement"
              },
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "focusTarget",
              "type": {
                "text": "HTMLElement"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "validity",
              "type": {
                "text": "ValidityState"
              },
              "privacy": "public",
              "description": "(Read-only) returns a ValidityState with the validity states that this element is in.\nhttps://developer.mozilla.org/en-US/docs/Web/API/HTMLObjectElement/validity",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "formDisabledCallback",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "disabled",
                  "type": {
                    "text": "boolean"
                  },
                  "description": "The latest disabled state of the input."
                }
              ],
              "description": "Called after the disabled state of the element changes,\neither because the disabled attribute of this element was added or removed;\nor because the disabled state changed on a <fieldset> that's an ancestor of this element."
            },
            {
              "kind": "method",
              "name": "formResetCallback",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Called when the form that owns this component is reset.\nResets the value to the default value."
            },
            {
              "kind": "field",
              "name": "handleInput",
              "privacy": "private",
              "description": "Handles data processing in response to the input event. The native input event is left to bubble up.",
              "parameters": [
                {
                  "description": "The input event.",
                  "name": "event"
                }
              ]
            },
            {
              "kind": "field",
              "name": "handleChange",
              "privacy": "private",
              "description": "Captures the native change event and wraps it in a custom event.",
              "parameters": [
                {
                  "description": "The change event.",
                  "name": "event"
                }
              ]
            }
          ],
          "events": [
            {
              "type": {
                "text": "InputEvent"
              },
              "description": "when the input value is changed.",
              "name": "input"
            },
            {
              "type": {
                "text": "CustomEvent"
              },
              "description": "when the input value is changed.",
              "name": "change"
            }
          ],
          "attributes": [
            {
              "name": "type",
              "fieldName": "type"
            },
            {
              "name": "value",
              "fieldName": "value"
            },
            {
              "name": "name",
              "type": {
                "text": "TextInputProps['name']"
              },
              "fieldName": "name"
            },
            {
              "name": "disabled",
              "fieldName": "disabled"
            },
            {
              "name": "pattern",
              "type": {
                "text": "TextInputProps['pattern']"
              },
              "fieldName": "pattern"
            },
            {
              "name": "minlength",
              "type": {
                "text": "TextInputProps['minlength']"
              },
              "fieldName": "minlength"
            },
            {
              "name": "maxlength",
              "type": {
                "text": "TextInputProps['maxlength']"
              },
              "fieldName": "maxlength"
            },
            {
              "name": "autocomplete",
              "type": {
                "text": "TextInputProps['autocomplete']"
              },
              "fieldName": "autocomplete"
            },
            {
              "name": "placeholder",
              "type": {
                "text": "TextInputProps['placeholder']"
              },
              "fieldName": "placeholder"
            },
            {
              "name": "autoFocus",
              "type": {
                "text": "TextInputProps['autoFocus']"
              },
              "fieldName": "autoFocus"
            },
            {
              "name": "inputmode",
              "type": {
                "text": "TextInputProps['inputmode']"
              },
              "fieldName": "inputmode"
            },
            {
              "name": "readonly",
              "fieldName": "readonly"
            },
            {
              "name": "defaultValue",
              "type": {
                "text": "TextInputProps['defaultValue']"
              },
              "fieldName": "defaultValue"
            },
            {
              "name": "assistiveText",
              "type": {
                "text": "TextInputProps['assistiveText']"
              },
              "fieldName": "assistiveText"
            },
            {
              "name": "status",
              "fieldName": "status"
            },
            {
              "name": "step",
              "type": {
                "text": "TextInputProps['step']"
              },
              "fieldName": "step"
            },
            {
              "name": "min",
              "type": {
                "text": "TextInputProps['min']"
              },
              "fieldName": "min"
            },
            {
              "name": "max",
              "type": {
                "text": "TextInputProps['max']"
              },
              "fieldName": "max"
            },
            {
              "name": "size",
              "fieldName": "size"
            },
            {
              "name": "required",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "fieldName": "required"
            }
          ],
          "mixins": [
            {
              "name": "FormControlMixin",
              "package": "@justeattakeaway/pie-webc-core"
            },
            {
              "name": "RtlMixin",
              "package": "@justeattakeaway/pie-webc-core"
            },
            {
              "name": "DelegatesFocusMixin",
              "package": "@justeattakeaway/pie-webc-core"
            }
          ],
          "superclass": {
            "name": "PieElement",
            "package": "@justeattakeaway/pie-webc-core/src/internals/PieElement"
          },
          "tagName": "pie-text-input",
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "*",
          "declaration": {
            "name": "*",
            "module": "src/defs"
          }
        },
        {
          "kind": "js",
          "name": "PieTextInput",
          "declaration": {
            "name": "PieTextInput",
            "module": "src/index.js"
          }
        }
      ]
    }
  ]
}
