@@ -100,7 +100,7 @@ class Builder implements BuilderContract
100
100
/**
101
101
* The columns that should be returned.
102
102
*
103
- * @var array|null
103
+ * @var array<string|\Illuminate\Contracts\Database\Query\Expression> |null
104
104
*/
105
105
public $ columns ;
106
106
@@ -278,7 +278,7 @@ public function __construct(
278
278
/**
279
279
* Set the columns to be selected.
280
280
*
281
- * @param array| mixed $columns
281
+ * @param mixed $columns
282
282
* @return $this
283
283
*/
284
284
public function select ($ columns = ['* ' ])
@@ -432,7 +432,7 @@ protected function prependDatabaseNameIfCrossDatabaseQuery($query)
432
432
/**
433
433
* Add a new select column to the query.
434
434
*
435
- * @param array| mixed $column
435
+ * @param mixed $column
436
436
* @return $this
437
437
*/
438
438
public function addSelect ($ column )
@@ -3019,7 +3019,7 @@ public function toRawSql()
3019
3019
* Execute a query for a single record by ID.
3020
3020
*
3021
3021
* @param int|string $id
3022
- * @param array| string $columns
3022
+ * @param string|\Illuminate\Contracts\Database\Query\Expression|array< string|\Illuminate\Contracts\Database\Query\Expression> $columns
3023
3023
* @return object|null
3024
3024
*/
3025
3025
public function find ($ id , $ columns = ['* ' ])
@@ -3033,7 +3033,7 @@ public function find($id, $columns = ['*'])
3033
3033
* @template TValue
3034
3034
*
3035
3035
* @param mixed $id
3036
- * @param (\Closure(): TValue)|list< string>| string $columns
3036
+ * @param (\Closure(): TValue)|string|\Illuminate\Contracts\Database\Query\Expression|array< string|\Illuminate\Contracts\Database\Query\Expression> $columns
3037
3037
* @param (\Closure(): TValue)|null $callback
3038
3038
* @return object|TValue
3039
3039
*/
@@ -3096,7 +3096,7 @@ public function soleValue($column)
3096
3096
/**
3097
3097
* Execute the query as a "select" statement.
3098
3098
*
3099
- * @param array| string $columns
3099
+ * @param string|\Illuminate\Contracts\Database\Query\Expression|array< string|\Illuminate\Contracts\Database\Query\Expression> $columns
3100
3100
* @return \Illuminate\Support\Collection<int, \stdClass>
3101
3101
*/
3102
3102
public function get ($ columns = ['* ' ])
@@ -3152,7 +3152,7 @@ protected function withoutGroupLimitKeys($items)
3152
3152
* Paginate the given query into a simple paginator.
3153
3153
*
3154
3154
* @param int|\Closure $perPage
3155
- * @param array| string $columns
3155
+ * @param string|\Illuminate\Contracts\Database\Query\Expression|array< string|\Illuminate\Contracts\Database\Query\Expression> $columns
3156
3156
* @param string $pageName
3157
3157
* @param int|null $page
3158
3158
* @param \Closure|int|null $total
@@ -3180,7 +3180,7 @@ public function paginate($perPage = 15, $columns = ['*'], $pageName = 'page', $p
3180
3180
* This is more efficient on larger data-sets, etc.
3181
3181
*
3182
3182
* @param int $perPage
3183
- * @param array| string $columns
3183
+ * @param string|\Illuminate\Contracts\Database\Query\Expression|array< string|\Illuminate\Contracts\Database\Query\Expression> $columns
3184
3184
* @param string $pageName
3185
3185
* @param int|null $page
3186
3186
* @return \Illuminate\Contracts\Pagination\Paginator
@@ -3203,7 +3203,7 @@ public function simplePaginate($perPage = 15, $columns = ['*'], $pageName = 'pag
3203
3203
* This is more efficient on larger data-sets, etc.
3204
3204
*
3205
3205
* @param int|null $perPage
3206
- * @param array| string $columns
3206
+ * @param string|\Illuminate\Contracts\Database\Query\Expression|array< string|\Illuminate\Contracts\Database\Query\Expression> $columns
3207
3207
* @param string $cursorName
3208
3208
* @param \Illuminate\Pagination\Cursor|string|null $cursor
3209
3209
* @return \Illuminate\Contracts\Pagination\CursorPaginator
@@ -3250,7 +3250,7 @@ protected function ensureOrderForCursorPagination($shouldReverse = false)
3250
3250
/**
3251
3251
* Get the count of the total records for the paginator.
3252
3252
*
3253
- * @param array $columns
3253
+ * @param array<string|\Illuminate\Contracts\Database\Query\Expression> $columns
3254
3254
* @return int
3255
3255
*/
3256
3256
public function getCountForPagination ($ columns = ['* ' ])
@@ -3272,8 +3272,8 @@ public function getCountForPagination($columns = ['*'])
3272
3272
/**
3273
3273
* Run a pagination count query.
3274
3274
*
3275
- * @param array $columns
3276
- * @return array
3275
+ * @param array<string|\Illuminate\Contracts\Database\Query\Expression> $columns
3276
+ * @return array<mixed>
3277
3277
*/
3278
3278
protected function runPaginationCountQuery ($ columns = ['* ' ])
3279
3279
{
@@ -3313,7 +3313,8 @@ protected function cloneForPaginationCount()
3313
3313
/**
3314
3314
* Remove the column aliases since they will break count queries.
3315
3315
*
3316
- * @return array
3316
+ * @param array<string|\Illuminate\Contracts\Database\Query\Expression> $columns
3317
+ * @return array<string|\Illuminate\Contracts\Database\Query\Expression>
3317
3318
*/
3318
3319
protected function withoutSelectAliases (array $ columns )
3319
3320
{
@@ -3677,9 +3678,11 @@ protected function setAggregate($function, $columns)
3677
3678
*
3678
3679
* After running the callback, the columns are reset to the original value.
3679
3680
*
3680
- * @param array $columns
3681
- * @param callable $callback
3682
- * @return mixed
3681
+ * @template TResult
3682
+ *
3683
+ * @param array<string|\Illuminate\Contracts\Database\Query\Expression> $columns
3684
+ * @param callable(): TResult $callback
3685
+ * @return TResult
3683
3686
*/
3684
3687
protected function onceWithColumns ($ columns , $ callback )
3685
3688
{
@@ -4081,7 +4084,7 @@ protected function forSubQuery()
4081
4084
/**
4082
4085
* Get all of the query builder's columns in a text-only array with all expressions evaluated.
4083
4086
*
4084
- * @return array
4087
+ * @return list<string>
4085
4088
*/
4086
4089
public function getColumns ()
4087
4090
{
0 commit comments