```ts
export function layerConfigs(layers: Array<Record<string, unknown>>): Record<string, unknown> {
    if (!Array.isArray(layers)) {
        throw new Error("Input must be a list.");
    }

    return layers.reduce((result, layer) => {
        if (typeof layer !== "object" || layer === null) {
            throw new Error("Each layer must be a mapping.");
        }

        for (const [key, value] of Object.entries(layer)) {
            if (value === null) {
                delete result[key];
            } else if (typeof value === "object" && value !== null && typeof result[key] === "object" && result[key] !== null) {
                result[key] = layerConfigs([result[key], value]);
            } else {
                result[key] = value;
            }
        }

        return result;
    }, {});
}
```