[ { "name": "element", "type": "string", "required": false, "description": "Whether to use an `input`, `button` or `a` element to create the button. In most cases you will not need to set this as it will be configured automatically if you use `href` or `html`." }, { "name": "text", "type": "string", "required": true, "description": "If `html` is set, this is not required. Text for the button or link. If `html` is provided, the `text` option will be ignored and `element` will be automatically set to `button` unless `href` is also set, or it has already been defined. This option has no effect if `element` is set to `input`." }, { "name": "html", "type": "string", "required": true, "description": "If `text` is set, this is not required. HTML for the button or link. If `html` is provided, the `text` option will be ignored and `element` will be automatically set to `button` unless `href` is also set, or it has already been defined. This option has no effect if `element` is set to `input`." }, { "name": "name", "type": "string", "required": false, "description": "Name for the `input` or `button`. This has no effect on `a` elements." }, { "name": "type", "type": "string", "required": false, "description": "Type of `input` or `button` – `button`, `submit` or `reset`. Defaults to `submit`. This has no effect on `a` elements." }, { "name": "value", "type": "string", "required": false, "description": "Value for the `button` tag. This has no effect on `a` or `input` elements." }, { "name": "disabled", "type": "boolean", "required": false, "description": "Whether the button should be disabled. For button and input elements, `disabled` and `aria-disabled` attributes will be set automatically." }, { "name": "href", "type": "string", "required": false, "description": "The URL that the button should link to. If this is set, `element` will be automatically set to `a` if it has not already been defined." }, { "name": "classes", "type": "string", "required": false, "description": "Classes to add to the button component." }, { "name": "attributes", "type": "object", "required": false, "description": "HTML attributes (for example data attributes) to add to the button component." }, { "name": "preventDoubleClick", "type": "boolean", "required": false, "description": "Prevent accidental double clicks on submit buttons from submitting forms multiple times" }, { "name": "isStartButton", "type": "boolean", "required": false, "description": "Use for the main call to action on your service's start page." } ]