```
// Imports not required for this task.

export function flatten(items: readonly unknown[], depth?: number): unknown[] {
  if (depth === undefined) depth = Infinity;

  if (!Number.isInteger(depth) || depth < 0) {
    throw new Error('Depth must be a non-negative integer or Infinity.');
  }

  return items.flatMap(item => {
    if (depth === 0) return typeof item === 'undefined' ? item : [item]; // Treat undefined as value

    if (Array.isArray(item)) {
      const filteredItems: unknown[] = [];

      for (const nested of item) {
        if (depth > 1) {
          filteredItems.push(...flatten(Array.from(nested), depth - 1));
        } else if (filteredItems.length === 0 && typeof nested !== 'undefined') {
          filteredItems.push([nested]);
        }
      }

      return filteredItems;
    }

    // If not an array, and not undefined, return it
    return [item];
  });
}
```