Moim zdaniem źle podchodzisz do problemu zapisania tej listy. Nie myśl w kategoriach elementów <li> itp. Nie jest ważne czy są to li czy div czy co innego. Po prostu po kliknięciu w ten przycisk kopiowania listy można pobrać referencję do całego rodzica, np. do ul i po prostu operować na jego dzieciach li i masz wtedy ich ilość, indeksy, wartości itp. Ale generalnie to rozdziel html i js, czyli nie pobieraj referencji np. do elementu ul ale do jakiegoś tam elementu np. o id="result-list". Możesz też pobrać referencje np. do poszczególnych elementów i od razu je trzymać w jednej tablicy, np.
// html:
<ul class="list">
<li class="list__item">Wartość 1</li>
<li class="list__item">Wartość 2</li>
<li class="list__item">Wartość 3</li>
<li class="list__item">Wartość 4</li>
</ul>
// JS:
const list = document.querySelectorAll('.list__item');
// albo:
const list = [...document.querySelectorAll('.list__item')];
// jeśli chcemy mieć Array.prototype
i teraz w JS masz listę elementów, możesz odczytywać ich wartości, indeksy itp. Nawet jeśli w html zmienisz powiedzmy z listy ul na ol to w JS nic się nie zmieni, bo pobieramy referencję wg klasy css a nie znacznika html.