The dynamic table will all be based on the amount of data that you fill the structure with. You do need to create one structure with the header values, Lines, and alues, serialize it to JSON, and send it to the web block, and the component will generate your dynamic table.
After downloading the app you can open the Example to see it working.
Created the input:
firstColHeader_Empty - If the value is True, then the first Header/column will be shown empty.