{
	"version": "experimental",
	"tags": [
		{
			"name": "mo-virtualized-list",
			"path": ".\\packages\\VirtualizedList\\VirtualizedList.ts",
			"attributes": [
				{
					"name": "data",
					"description": "Array of data to render",
					"type": "T[]",
					"default": "\"new Array<T>()\""
				},
				{
					"name": "getItemTemplate",
					"description": "Function that returns template for each item",
					"type": "GetItemTemplate<T>",
					"default": "\"(() => html.nothing)\""
				}
			],
			"properties": [
				{
					"name": "itemsLength",
					"type": "number"
				},
				{
					"name": "data",
					"attribute": "data",
					"description": "Array of data to render",
					"type": "T[]",
					"default": "\"new Array<T>()\""
				},
				{
					"name": "getItemTemplate",
					"attribute": "getItemTemplate",
					"description": "Function that returns template for each item",
					"type": "GetItemTemplate<T>",
					"default": "\"(() => html.nothing)\""
				},
				{
					"name": "itemsChange",
					"type": "EventDispatcher<HTMLElement[]>"
				},
				{
					"name": "role",
					"type": "\"list\"",
					"default": "\"list\""
				},
				{
					"name": "focusController",
					"type": "ListFocusController",
					"default": "\"new ListFocusController(this)\""
				},
				{
					"name": "slotController",
					"type": "SlotController",
					"default": "\"new SlotController(this, () => this.items = this[listItems] as Array<HTMLElement> ?? [])\""
				},
				{
					"name": "items",
					"type": "HTMLElement[]"
				}
			],
			"events": [
				{
					"name": "itemsChange",
					"description": "Dispatched when the list items change",
					"type": "CustomEvent<HTMLElement[]>"
				}
			],
			"slots": [
				{
					"name": "",
					"description": "Default slot for list items"
				}
			]
		},
		{
			"name": "mo-virtualized-list",
			"path": ".\\packages\\VirtualizedList\\dist\\VirtualizedList.d.ts",
			"attributes": [
				{
					"name": "data",
					"description": "Array of data to render",
					"type": "T[]"
				},
				{
					"name": "getItemTemplate",
					"description": "Function that returns template for each item",
					"type": "GetItemTemplate<T>"
				}
			],
			"properties": [
				{
					"name": "itemsLength",
					"type": "number"
				},
				{
					"name": "data",
					"attribute": "data",
					"description": "Array of data to render",
					"type": "T[]"
				},
				{
					"name": "getItemTemplate",
					"attribute": "getItemTemplate",
					"description": "Function that returns template for each item",
					"type": "GetItemTemplate<T>"
				},
				{
					"name": "itemsChange",
					"type": "EventDispatcher<HTMLElement[]>"
				},
				{
					"name": "role",
					"type": "\"list\"",
					"default": "\"list\""
				},
				{
					"name": "focusController",
					"type": "ListFocusController",
					"default": "\"new ListFocusController(this)\""
				},
				{
					"name": "slotController",
					"type": "SlotController",
					"default": "\"new SlotController(this, () => this.items = this[listItems] as Array<HTMLElement> ?? [])\""
				},
				{
					"name": "items",
					"type": "HTMLElement[]"
				}
			],
			"events": [
				{
					"name": "itemsChange",
					"description": "Dispatched when the list items change",
					"type": "CustomEvent<HTMLElement[]>"
				}
			],
			"slots": [
				{
					"name": "",
					"description": "Default slot for list items"
				}
			]
		}
	]
}