Algorithm. Input: pointers to k unsorted arrays of different lengths. Needed output: k sorted arrays $k = \Theta(n)$

The arrays consist only natural numbers $1$ to $n$

The sum of the length of all arrays = $\Theta(n)$

It should return the $k$ original arrays, each sorted on its own.

The running time should be at worst $\Theta(n)$.
How is it even possible? There's something I must be missing because I have no idea how to approach this.
The data I gave you is all the given data. Any ideas?

Using counting sort on each array won't work, for it will be $\Theta(n^2)$, but maybe a different approach using this method?
You can solve the issue by using some pointers. First, run counting sort algorithm on all arrays in $\Theta(n)$ (suppose all of them are in a set). In the meanwhile, when running the algorithm, set a pointer for each number of each array  to the sorted index of that number.

Using this data structure, you will have $k$ sorted arrays at the end.