```ts
export function layConveyor(floor: string[], row: number, col: number, length: number): string[] {
  if (length <= 0) throw new Error("Run must cover at least one cell");
  if (row < 0 || row >= floor.length) throw new Error("Row out of bounds");
  const width = floor[0].length;
  if (col < 0 || col + length > width) throw new Error("Conveyor run leaves the plan");

  const result = [...floor];
  for (let i = 0; i < length; i++) {
    if (result[row][col + i] !== ".") throw new Error("Run covers a non-open cell");
    result[row] = result[row].substring(0, col + i) + "=" + result[row].substring(col + i + 1);
  }
  return result;
}
```