public function computed(callable $dataCallback) : ColumnMappingDefiner
    {
        return new ColumnMappingDefiner(
            function (IColumn $column) use ($dataCallback) {
                $this->column($column);
                $this->componentIdCallableMap[$column->getComponentId()] = $dataCallback;
            },
            function ($componentId) use ($dataCallback) {
                $this->componentIdCallableMap[$componentId] = $dataCallback;
            }
        );
    }