code: function getSupportedElementsAsFootnote(elements) {
  				const notes = [];
  
  				const supportedElements = elements.map(element => {
  					if (typeof element === 'string') {
  						return `\`<${element}>\``;
  					}
  
  					/**
  					 * if element is not a string it will be an object with structure:
  							{
  								nodeName: string,
  								properties: {
  									type: {string|string[]}
  								}
  							}
  					*/
  					return Object.keys(element.properties).map(prop => {
  						const value = element.properties[prop];
  
  						// the 'type' property can be a string or an array
  						if (typeof value === 'string') {
  							return `\`<${element.nodeName} ${prop}="${value}">\``;
  						}
  
  						// output format for an array of types:
  						// <input type="button" | "checkbox">
  						const values = value.map(v => `"${v}"`).join(' | ');
  						return `\`<${element.nodeName} ${prop}=${values}>\``;
  					});
  				});
  
  				notes.push('Supported on elements: ' + supportedElements.join(', '));
  
  				return notes;
  			}
docs: Parse a list of unsupported exception elements and add a footnote
  detailing which HTML elements are supported.
  
  @param {Array<String|Object>} elements List of supported elements
  @returns {Array<String|Object>} notes