title: I want to write a custom directive for ui-grid with different input columnDefs
body: <p>This is my Controller</p>
  
  <pre><code>$scope.usersList = {};
  
  $scope.usersList = {
      paginationPageSizes: [10,15, 20],
      paginationPageSize: 10,
      columnDefs: [
          { name: 'userId', cellTemplate: '&lt;div class="ui-grid-cell-contents"&gt;&lt;a ui-sref="appSetting.userSelected({userId: row.entity.userId})"&gt;{{ row.entity.userId }}&lt;/a&gt;&lt;/div&gt;' },
          { name: 'firstName' },
          { name: 'lastName' },
          { name: 'emailId' },
          {
              name: 'action',
              cellTemplate: '&lt;div&gt;' +
                      '  &lt;button  ng-click="grid.appScope.sampledetails()"&gt;Delete&lt;/button&gt;' +
                      '&lt;/div&gt;',
              enableSorting: false,
              enableColumnMenu: false
          }
      ]
  };
  </code></pre>
  
  <p>and this is my .cshtml</p>
  
  <pre><code>&lt;div id="grid1" ui-grid="gridOptions" class="grid"&gt;&lt;/div&gt;
  </code></pre>
  
  <p>I want to write this in such a way that it should be used in other .cshmtls, but the columnDefs varies depending on table column name. How should I write in such a way that ths user should give the columnsDefs in directive along with pagination?</p>