Capturar objetos de um checkbox e construir um array

Pessoal bom dia a todos, venho pedir ajuda a uma questão que estou quebrando a cabeça para fazer.

A situação é a seguinte : É um aplicativo de vendas, eu tenho uma lista de produtos que está vindo do firebase, até ai tudo bem. Para cada produto listado, existe um checkbox ao lado do item para que o usuário selecione o produto e envie ele para a tela de vendas, por meio de navParams. Até ai tudo bem também.
Porém, existe o caso do usuário querer selecionar vários itens de uma vez só para fazer uma venda grande, por exemplo 10 produtos. Ai eu entendo que seria necessário fazer um array com os itens que ele selecionou e passar para a próxima tela. Porém eu não estou conseguindo jogar para dentro de um array os itens que o usuário seleciona, consigo enviar apenas um item.

Gostaria de uma sugestão de como eu posso estar criando este array, se alguém tiver disponibilidade para me ajudar, passar algum exemplo eu fico agradecido.

Segue o meu código :

TS :

//função que criei para quando clicar no checkbox ele capturar o objeto selecionado
produtoEscolhido(produto, isChecked){
if(isChecked) {
this.produtosEscolhidos = produto;
let produtos = [this.produtosEscolhidos];
console.log(produtos);
}
}

HTML :

//a lista que esta retornando, com um ionChange para executar a função a cada clique do checkbox
<ion-list *ngFor=“let produto of produtosLista | async”>

{{produto.descricao}}
<ion-checkbox [(ngModel)]=“produto.selecionado” (ionChange)=“produtoEscolhido(produto, $event.checked)”>

  <button ion-button color="dark" (click)="escolherProdutos()">Escolher</button>