<?php //9992cbcadb6b35b1370ff49cb0b6927d
/** @noinspection all */

namespace LaravelIdea\Helper\Modules\Payroll\Entities {

    use Illuminate\Contracts\Database\Query\Expression;
    use Illuminate\Contracts\Support\Arrayable;
    use Illuminate\Pagination\LengthAwarePaginator;
    use Illuminate\Pagination\Paginator;
    use LaravelIdea\Helper\_BaseBuilder;
    use LaravelIdea\Helper\_BaseCollection;
    use Modules\Payroll\Entities\Payroll;
    use Modules\Payroll\Entities\PayrollItem;
    use Modules\Payroll\Entities\PayrollItemMeta;
    use Modules\Payroll\Entities\PayrollPayment;
    use Modules\Payroll\Entities\PayrollTemplate;
    use Modules\Payroll\Entities\PayrollTemplateItem;
    
    /**
     * @method PayrollItemMeta|null getOrPut($key, \Closure $value)
     * @method PayrollItemMeta|$this shift(int $count = 1)
     * @method PayrollItemMeta|null firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollItemMeta|$this pop(int $count = 1)
     * @method PayrollItemMeta|null pull($key, \Closure $default = null)
     * @method PayrollItemMeta|null last(callable $callback = null, \Closure $default = null)
     * @method PayrollItemMeta|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method PayrollItemMeta|null sole(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollItemMeta|null get($key, \Closure $default = null)
     * @method PayrollItemMeta|null first(callable $callback = null, \Closure $default = null)
     * @method PayrollItemMeta|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method PayrollItemMeta|null find($key, $default = null)
     * @method PayrollItemMeta[] all()
     */
    class _IH_PayrollItemMeta_C extends _BaseCollection {
        /**
         * @param int $size
         * @return PayrollItemMeta[][]
         */
        public function chunk($size)
        {
            return [];
        }
    }
    
    /**
     * @method _IH_PayrollItemMeta_QB whereId($value)
     * @method _IH_PayrollItemMeta_QB wherePayrollId($value)
     * @method _IH_PayrollItemMeta_QB wherePayrollItemId($value)
     * @method _IH_PayrollItemMeta_QB wherePercentage($value)
     * @method _IH_PayrollItemMeta_QB whereName($value)
     * @method _IH_PayrollItemMeta_QB whereType($value)
     * @method _IH_PayrollItemMeta_QB whereAmountType($value)
     * @method _IH_PayrollItemMeta_QB whereAmount($value)
     * @method _IH_PayrollItemMeta_QB whereCreatedAt($value)
     * @method _IH_PayrollItemMeta_QB whereUpdatedAt($value)
     * @method PayrollItemMeta baseSole(array|string $columns = ['*'])
     * @method PayrollItemMeta create(array $attributes = [])
     * @method PayrollItemMeta createOrFirst(array $attributes = [], array $values = [])
     * @method PayrollItemMeta createOrRestore(array $attributes = [], array $values = [])
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] cursor()
     * @method PayrollItemMeta|null|_IH_PayrollItemMeta_C|PayrollItemMeta[] find($id, array|string $columns = ['*'])
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method PayrollItemMeta|_IH_PayrollItemMeta_C|PayrollItemMeta[] findOr($id, array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollItemMeta|_IH_PayrollItemMeta_C|PayrollItemMeta[] findOrFail($id, array|string $columns = ['*'])
     * @method PayrollItemMeta|_IH_PayrollItemMeta_C|PayrollItemMeta[] findOrNew($id, array|string $columns = ['*'])
     * @method PayrollItemMeta first(array|string $columns = ['*'])
     * @method PayrollItemMeta firstOr(array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollItemMeta firstOrCreate(array $attributes = [], array $values = [])
     * @method PayrollItemMeta firstOrFail(array|string $columns = ['*'])
     * @method PayrollItemMeta firstOrNew(array $attributes = [], array $values = [])
     * @method PayrollItemMeta firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method PayrollItemMeta forceCreate(array $attributes)
     * @method PayrollItemMeta forceCreateQuietly(array $attributes = [])
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] fromQuery(string $query, array $bindings = [])
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] get(array|string $columns = ['*'])
     * @method PayrollItemMeta getModel()
     * @method PayrollItemMeta[] getModels(array|string $columns = ['*'])
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] hydrate(array $items)
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] lazy(int $chunkSize = 1000)
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_PayrollItemMeta_C|PayrollItemMeta[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method PayrollItemMeta make(array $attributes = [])
     * @method PayrollItemMeta newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|PayrollItemMeta[]|_IH_PayrollItemMeta_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollItemMeta restoreOrCreate(array $attributes = [], array $values = [])
     * @method Paginator|PayrollItemMeta[]|_IH_PayrollItemMeta_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollItemMeta sole(array|string $columns = ['*'])
     * @method PayrollItemMeta updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_PayrollItemMeta_QB extends _BaseBuilder {}
    
    /**
     * @method PayrollItem|null getOrPut($key, \Closure $value)
     * @method PayrollItem|$this shift(int $count = 1)
     * @method PayrollItem|null firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollItem|$this pop(int $count = 1)
     * @method PayrollItem|null pull($key, \Closure $default = null)
     * @method PayrollItem|null last(callable $callback = null, \Closure $default = null)
     * @method PayrollItem|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method PayrollItem|null sole(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollItem|null get($key, \Closure $default = null)
     * @method PayrollItem|null first(callable $callback = null, \Closure $default = null)
     * @method PayrollItem|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method PayrollItem|null find($key, $default = null)
     * @method PayrollItem[] all()
     */
    class _IH_PayrollItem_C extends _BaseCollection {
        /**
         * @param int $size
         * @return PayrollItem[][]
         */
        public function chunk($size)
        {
            return [];
        }
    }
    
    /**
     * @method _IH_PayrollItem_QB whereId($value)
     * @method _IH_PayrollItem_QB whereName($value)
     * @method _IH_PayrollItem_QB whereType($value)
     * @method _IH_PayrollItem_QB whereAmountType($value)
     * @method _IH_PayrollItem_QB whereAmount($value)
     * @method _IH_PayrollItem_QB whereDescription($value)
     * @method _IH_PayrollItem_QB whereCreatedAt($value)
     * @method _IH_PayrollItem_QB whereUpdatedAt($value)
     * @method PayrollItem baseSole(array|string $columns = ['*'])
     * @method PayrollItem create(array $attributes = [])
     * @method PayrollItem createOrFirst(array $attributes = [], array $values = [])
     * @method PayrollItem createOrRestore(array $attributes = [], array $values = [])
     * @method _IH_PayrollItem_C|PayrollItem[] cursor()
     * @method PayrollItem|null|_IH_PayrollItem_C|PayrollItem[] find($id, array|string $columns = ['*'])
     * @method _IH_PayrollItem_C|PayrollItem[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method PayrollItem|_IH_PayrollItem_C|PayrollItem[] findOr($id, array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollItem|_IH_PayrollItem_C|PayrollItem[] findOrFail($id, array|string $columns = ['*'])
     * @method PayrollItem|_IH_PayrollItem_C|PayrollItem[] findOrNew($id, array|string $columns = ['*'])
     * @method PayrollItem first(array|string $columns = ['*'])
     * @method PayrollItem firstOr(array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollItem firstOrCreate(array $attributes = [], array $values = [])
     * @method PayrollItem firstOrFail(array|string $columns = ['*'])
     * @method PayrollItem firstOrNew(array $attributes = [], array $values = [])
     * @method PayrollItem firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method PayrollItem forceCreate(array $attributes)
     * @method PayrollItem forceCreateQuietly(array $attributes = [])
     * @method _IH_PayrollItem_C|PayrollItem[] fromQuery(string $query, array $bindings = [])
     * @method _IH_PayrollItem_C|PayrollItem[] get(array|string $columns = ['*'])
     * @method PayrollItem getModel()
     * @method PayrollItem[] getModels(array|string $columns = ['*'])
     * @method _IH_PayrollItem_C|PayrollItem[] hydrate(array $items)
     * @method _IH_PayrollItem_C|PayrollItem[] lazy(int $chunkSize = 1000)
     * @method _IH_PayrollItem_C|PayrollItem[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_PayrollItem_C|PayrollItem[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method PayrollItem make(array $attributes = [])
     * @method PayrollItem newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|PayrollItem[]|_IH_PayrollItem_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollItem restoreOrCreate(array $attributes = [], array $values = [])
     * @method Paginator|PayrollItem[]|_IH_PayrollItem_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollItem sole(array|string $columns = ['*'])
     * @method PayrollItem updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_PayrollItem_QB extends _BaseBuilder {}
    
    /**
     * @method PayrollPayment|null getOrPut($key, \Closure $value)
     * @method PayrollPayment|$this shift(int $count = 1)
     * @method PayrollPayment|null firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollPayment|$this pop(int $count = 1)
     * @method PayrollPayment|null pull($key, \Closure $default = null)
     * @method PayrollPayment|null last(callable $callback = null, \Closure $default = null)
     * @method PayrollPayment|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method PayrollPayment|null sole(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollPayment|null get($key, \Closure $default = null)
     * @method PayrollPayment|null first(callable $callback = null, \Closure $default = null)
     * @method PayrollPayment|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method PayrollPayment|null find($key, $default = null)
     * @method PayrollPayment[] all()
     */
    class _IH_PayrollPayment_C extends _BaseCollection {
        /**
         * @param int $size
         * @return PayrollPayment[][]
         */
        public function chunk($size)
        {
            return [];
        }
    }
    
    /**
     * @method _IH_PayrollPayment_QB whereId($value)
     * @method _IH_PayrollPayment_QB whereCreatedById($value)
     * @method _IH_PayrollPayment_QB whereBranchId($value)
     * @method _IH_PayrollPayment_QB wherePayrollId($value)
     * @method _IH_PayrollPayment_QB wherePaymentTypeId($value)
     * @method _IH_PayrollPayment_QB wherePaymentDetailId($value)
     * @method _IH_PayrollPayment_QB whereAmount($value)
     * @method _IH_PayrollPayment_QB whereSubmittedOn($value)
     * @method _IH_PayrollPayment_QB whereNotes($value)
     * @method _IH_PayrollPayment_QB whereCreatedAt($value)
     * @method _IH_PayrollPayment_QB whereUpdatedAt($value)
     * @method PayrollPayment baseSole(array|string $columns = ['*'])
     * @method PayrollPayment create(array $attributes = [])
     * @method PayrollPayment createOrFirst(array $attributes = [], array $values = [])
     * @method PayrollPayment createOrRestore(array $attributes = [], array $values = [])
     * @method _IH_PayrollPayment_C|PayrollPayment[] cursor()
     * @method PayrollPayment|null|_IH_PayrollPayment_C|PayrollPayment[] find($id, array|string $columns = ['*'])
     * @method _IH_PayrollPayment_C|PayrollPayment[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method PayrollPayment|_IH_PayrollPayment_C|PayrollPayment[] findOr($id, array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollPayment|_IH_PayrollPayment_C|PayrollPayment[] findOrFail($id, array|string $columns = ['*'])
     * @method PayrollPayment|_IH_PayrollPayment_C|PayrollPayment[] findOrNew($id, array|string $columns = ['*'])
     * @method PayrollPayment first(array|string $columns = ['*'])
     * @method PayrollPayment firstOr(array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollPayment firstOrCreate(array $attributes = [], array $values = [])
     * @method PayrollPayment firstOrFail(array|string $columns = ['*'])
     * @method PayrollPayment firstOrNew(array $attributes = [], array $values = [])
     * @method PayrollPayment firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method PayrollPayment forceCreate(array $attributes)
     * @method PayrollPayment forceCreateQuietly(array $attributes = [])
     * @method _IH_PayrollPayment_C|PayrollPayment[] fromQuery(string $query, array $bindings = [])
     * @method _IH_PayrollPayment_C|PayrollPayment[] get(array|string $columns = ['*'])
     * @method PayrollPayment getModel()
     * @method PayrollPayment[] getModels(array|string $columns = ['*'])
     * @method _IH_PayrollPayment_C|PayrollPayment[] hydrate(array $items)
     * @method _IH_PayrollPayment_C|PayrollPayment[] lazy(int $chunkSize = 1000)
     * @method _IH_PayrollPayment_C|PayrollPayment[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_PayrollPayment_C|PayrollPayment[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method PayrollPayment make(array $attributes = [])
     * @method PayrollPayment newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|PayrollPayment[]|_IH_PayrollPayment_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollPayment restoreOrCreate(array $attributes = [], array $values = [])
     * @method Paginator|PayrollPayment[]|_IH_PayrollPayment_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollPayment sole(array|string $columns = ['*'])
     * @method PayrollPayment updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_PayrollPayment_QB extends _BaseBuilder {}
    
    /**
     * @method PayrollTemplateItem|null getOrPut($key, \Closure $value)
     * @method PayrollTemplateItem|$this shift(int $count = 1)
     * @method PayrollTemplateItem|null firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollTemplateItem|$this pop(int $count = 1)
     * @method PayrollTemplateItem|null pull($key, \Closure $default = null)
     * @method PayrollTemplateItem|null last(callable $callback = null, \Closure $default = null)
     * @method PayrollTemplateItem|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method PayrollTemplateItem|null sole(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollTemplateItem|null get($key, \Closure $default = null)
     * @method PayrollTemplateItem|null first(callable $callback = null, \Closure $default = null)
     * @method PayrollTemplateItem|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method PayrollTemplateItem|null find($key, $default = null)
     * @method PayrollTemplateItem[] all()
     */
    class _IH_PayrollTemplateItem_C extends _BaseCollection {
        /**
         * @param int $size
         * @return PayrollTemplateItem[][]
         */
        public function chunk($size)
        {
            return [];
        }
    }
    
    /**
     * @method _IH_PayrollTemplateItem_QB whereId($value)
     * @method _IH_PayrollTemplateItem_QB wherePayrollTemplateId($value)
     * @method _IH_PayrollTemplateItem_QB wherePayrollItemId($value)
     * @method _IH_PayrollTemplateItem_QB whereCreatedAt($value)
     * @method _IH_PayrollTemplateItem_QB whereUpdatedAt($value)
     * @method PayrollTemplateItem baseSole(array|string $columns = ['*'])
     * @method PayrollTemplateItem create(array $attributes = [])
     * @method PayrollTemplateItem createOrFirst(array $attributes = [], array $values = [])
     * @method PayrollTemplateItem createOrRestore(array $attributes = [], array $values = [])
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] cursor()
     * @method PayrollTemplateItem|null|_IH_PayrollTemplateItem_C|PayrollTemplateItem[] find($id, array|string $columns = ['*'])
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method PayrollTemplateItem|_IH_PayrollTemplateItem_C|PayrollTemplateItem[] findOr($id, array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollTemplateItem|_IH_PayrollTemplateItem_C|PayrollTemplateItem[] findOrFail($id, array|string $columns = ['*'])
     * @method PayrollTemplateItem|_IH_PayrollTemplateItem_C|PayrollTemplateItem[] findOrNew($id, array|string $columns = ['*'])
     * @method PayrollTemplateItem first(array|string $columns = ['*'])
     * @method PayrollTemplateItem firstOr(array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollTemplateItem firstOrCreate(array $attributes = [], array $values = [])
     * @method PayrollTemplateItem firstOrFail(array|string $columns = ['*'])
     * @method PayrollTemplateItem firstOrNew(array $attributes = [], array $values = [])
     * @method PayrollTemplateItem firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method PayrollTemplateItem forceCreate(array $attributes)
     * @method PayrollTemplateItem forceCreateQuietly(array $attributes = [])
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] fromQuery(string $query, array $bindings = [])
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] get(array|string $columns = ['*'])
     * @method PayrollTemplateItem getModel()
     * @method PayrollTemplateItem[] getModels(array|string $columns = ['*'])
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] hydrate(array $items)
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] lazy(int $chunkSize = 1000)
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_PayrollTemplateItem_C|PayrollTemplateItem[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method PayrollTemplateItem make(array $attributes = [])
     * @method PayrollTemplateItem newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|PayrollTemplateItem[]|_IH_PayrollTemplateItem_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollTemplateItem restoreOrCreate(array $attributes = [], array $values = [])
     * @method Paginator|PayrollTemplateItem[]|_IH_PayrollTemplateItem_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollTemplateItem sole(array|string $columns = ['*'])
     * @method PayrollTemplateItem updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_PayrollTemplateItem_QB extends _BaseBuilder {}
    
    /**
     * @method PayrollTemplate|null getOrPut($key, \Closure $value)
     * @method PayrollTemplate|$this shift(int $count = 1)
     * @method PayrollTemplate|null firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollTemplate|$this pop(int $count = 1)
     * @method PayrollTemplate|null pull($key, \Closure $default = null)
     * @method PayrollTemplate|null last(callable $callback = null, \Closure $default = null)
     * @method PayrollTemplate|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method PayrollTemplate|null sole(callable|string $key = null, $operator = null, $value = null)
     * @method PayrollTemplate|null get($key, \Closure $default = null)
     * @method PayrollTemplate|null first(callable $callback = null, \Closure $default = null)
     * @method PayrollTemplate|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method PayrollTemplate|null find($key, $default = null)
     * @method PayrollTemplate[] all()
     */
    class _IH_PayrollTemplate_C extends _BaseCollection {
        /**
         * @param int $size
         * @return PayrollTemplate[][]
         */
        public function chunk($size)
        {
            return [];
        }
    }
    
    /**
     * @method _IH_PayrollTemplate_QB whereId($value)
     * @method _IH_PayrollTemplate_QB whereName($value)
     * @method _IH_PayrollTemplate_QB whereWorkDuration($value)
     * @method _IH_PayrollTemplate_QB whereDurationUnit($value)
     * @method _IH_PayrollTemplate_QB whereAmountPerDuration($value)
     * @method _IH_PayrollTemplate_QB whereTotalDurationAmount($value)
     * @method _IH_PayrollTemplate_QB wherePicture($value)
     * @method _IH_PayrollTemplate_QB whereDescription($value)
     * @method _IH_PayrollTemplate_QB whereItems($value)
     * @method _IH_PayrollTemplate_QB whereCreatedAt($value)
     * @method _IH_PayrollTemplate_QB whereUpdatedAt($value)
     * @method PayrollTemplate baseSole(array|string $columns = ['*'])
     * @method PayrollTemplate create(array $attributes = [])
     * @method PayrollTemplate createOrFirst(array $attributes = [], array $values = [])
     * @method PayrollTemplate createOrRestore(array $attributes = [], array $values = [])
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] cursor()
     * @method PayrollTemplate|null|_IH_PayrollTemplate_C|PayrollTemplate[] find($id, array|string $columns = ['*'])
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method PayrollTemplate|_IH_PayrollTemplate_C|PayrollTemplate[] findOr($id, array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollTemplate|_IH_PayrollTemplate_C|PayrollTemplate[] findOrFail($id, array|string $columns = ['*'])
     * @method PayrollTemplate|_IH_PayrollTemplate_C|PayrollTemplate[] findOrNew($id, array|string $columns = ['*'])
     * @method PayrollTemplate first(array|string $columns = ['*'])
     * @method PayrollTemplate firstOr(array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method PayrollTemplate firstOrCreate(array $attributes = [], array $values = [])
     * @method PayrollTemplate firstOrFail(array|string $columns = ['*'])
     * @method PayrollTemplate firstOrNew(array $attributes = [], array $values = [])
     * @method PayrollTemplate firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method PayrollTemplate forceCreate(array $attributes)
     * @method PayrollTemplate forceCreateQuietly(array $attributes = [])
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] fromQuery(string $query, array $bindings = [])
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] get(array|string $columns = ['*'])
     * @method PayrollTemplate getModel()
     * @method PayrollTemplate[] getModels(array|string $columns = ['*'])
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] hydrate(array $items)
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] lazy(int $chunkSize = 1000)
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_PayrollTemplate_C|PayrollTemplate[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method PayrollTemplate make(array $attributes = [])
     * @method PayrollTemplate newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|PayrollTemplate[]|_IH_PayrollTemplate_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollTemplate restoreOrCreate(array $attributes = [], array $values = [])
     * @method Paginator|PayrollTemplate[]|_IH_PayrollTemplate_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method PayrollTemplate sole(array|string $columns = ['*'])
     * @method PayrollTemplate updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_PayrollTemplate_QB extends _BaseBuilder {}
    
    /**
     * @method Payroll|null getOrPut($key, \Closure $value)
     * @method Payroll|$this shift(int $count = 1)
     * @method Payroll|null firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method Payroll|$this pop(int $count = 1)
     * @method Payroll|null pull($key, \Closure $default = null)
     * @method Payroll|null last(callable $callback = null, \Closure $default = null)
     * @method Payroll|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method Payroll|null sole(callable|string $key = null, $operator = null, $value = null)
     * @method Payroll|null get($key, \Closure $default = null)
     * @method Payroll|null first(callable $callback = null, \Closure $default = null)
     * @method Payroll|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method Payroll|null find($key, $default = null)
     * @method Payroll[] all()
     */
    class _IH_Payroll_C extends _BaseCollection {
        /**
         * @param int $size
         * @return Payroll[][]
         */
        public function chunk($size)
        {
            return [];
        }
    }
    
    /**
     * @method _IH_Payroll_QB whereId($value)
     * @method _IH_Payroll_QB whereBranchId($value)
     * @method _IH_Payroll_QB whereCurrencyId($value)
     * @method _IH_Payroll_QB whereCreatedById($value)
     * @method _IH_Payroll_QB wherePayrollTemplateId($value)
     * @method _IH_Payroll_QB whereUserId($value)
     * @method _IH_Payroll_QB whereEmployeeName($value)
     * @method _IH_Payroll_QB whereBankName($value)
     * @method _IH_Payroll_QB whereAccountNumber($value)
     * @method _IH_Payroll_QB whereDescription($value)
     * @method _IH_Payroll_QB whereComments($value)
     * @method _IH_Payroll_QB whereWorkDuration($value)
     * @method _IH_Payroll_QB whereDurationUnit($value)
     * @method _IH_Payroll_QB whereAmountPerDuration($value)
     * @method _IH_Payroll_QB whereTotalDurationAmount($value)
     * @method _IH_Payroll_QB whereGrossAmount($value)
     * @method _IH_Payroll_QB whereTotalAllowances($value)
     * @method _IH_Payroll_QB whereTotalDeductions($value)
     * @method _IH_Payroll_QB whereRecurring($value)
     * @method _IH_Payroll_QB whereRecurFrequency($value)
     * @method _IH_Payroll_QB whereRecurStartDate($value)
     * @method _IH_Payroll_QB whereRecurEndDate($value)
     * @method _IH_Payroll_QB whereRecurNextDate($value)
     * @method _IH_Payroll_QB whereRecurType($value)
     * @method _IH_Payroll_QB whereCreatedAt($value)
     * @method _IH_Payroll_QB whereUpdatedAt($value)
     * @method Payroll baseSole(array|string $columns = ['*'])
     * @method Payroll create(array $attributes = [])
     * @method Payroll createOrFirst(array $attributes = [], array $values = [])
     * @method Payroll createOrRestore(array $attributes = [], array $values = [])
     * @method _IH_Payroll_C|Payroll[] cursor()
     * @method Payroll|null|_IH_Payroll_C|Payroll[] find($id, array|string $columns = ['*'])
     * @method _IH_Payroll_C|Payroll[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method Payroll|_IH_Payroll_C|Payroll[] findOr($id, array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method Payroll|_IH_Payroll_C|Payroll[] findOrFail($id, array|string $columns = ['*'])
     * @method Payroll|_IH_Payroll_C|Payroll[] findOrNew($id, array|string $columns = ['*'])
     * @method Payroll first(array|string $columns = ['*'])
     * @method Payroll firstOr(array|\Closure|string $columns = ['*'], \Closure $callback = null)
     * @method Payroll firstOrCreate(array $attributes = [], array $values = [])
     * @method Payroll firstOrFail(array|string $columns = ['*'])
     * @method Payroll firstOrNew(array $attributes = [], array $values = [])
     * @method Payroll firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method Payroll forceCreate(array $attributes)
     * @method Payroll forceCreateQuietly(array $attributes = [])
     * @method _IH_Payroll_C|Payroll[] fromQuery(string $query, array $bindings = [])
     * @method _IH_Payroll_C|Payroll[] get(array|string $columns = ['*'])
     * @method Payroll getModel()
     * @method Payroll[] getModels(array|string $columns = ['*'])
     * @method _IH_Payroll_C|Payroll[] hydrate(array $items)
     * @method _IH_Payroll_C|Payroll[] lazy(int $chunkSize = 1000)
     * @method _IH_Payroll_C|Payroll[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_Payroll_C|Payroll[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method Payroll make(array $attributes = [])
     * @method Payroll newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|Payroll[]|_IH_Payroll_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method Payroll restoreOrCreate(array $attributes = [], array $values = [])
     * @method Paginator|Payroll[]|_IH_Payroll_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method Payroll sole(array|string $columns = ['*'])
     * @method Payroll updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_Payroll_QB extends _BaseBuilder {}
}