ag-grid provides a way to get selected rows using api.getSelectedRows()
function. And provides a way to set all rows using api.setRowData([])
function.
Ag-grid doesn't provide any method to do that. You can check it here Accessing Data Ag-grid and here Grid Api.
I guest the reason is because you can do it through a loop, as you mentioned before.
let items: Array = [];
this.gridApi.forEachNode(function(node) {
items.push(node.data);
});
Or if the source of your ag-grid is linked through angular there is no need to loop over the grid (assuming that the data grid has not pending changes)