<?php //88cab4d84948376fe287f3610357d6e1
/** @noinspection all */

namespace LaravelIdea\Helper\Spatie\MediaLibrary\Tests\TestSupport\TestModels {

    use Illuminate\Contracts\Database\Query\Expression;
    use Illuminate\Contracts\Support\Arrayable;
    use Illuminate\Pagination\LengthAwarePaginator;
    use Illuminate\Pagination\Paginator;
    use Illuminate\Support\Collection;
    use LaravelIdea\Helper\_BaseBuilder;
    use LaravelIdea\Helper\_BaseCollection;
    use Spatie\MediaLibrary\MediaCollections\Models\Collections\MediaCollection;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestCustomMediaModel;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestCustomMediaWithCustomKeyName;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModel;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithConversion;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithConversionQueued;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithConversionsOnOtherDisk;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithConversionUsingModelInstance;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithCustomLoadingAttribute;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithMorphMap;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithMorphMapInSideModel;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithMultipleConversions;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithoutMediaConversions;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithPreviewConversion;
    use Spatie\MediaLibrary\Tests\TestSupport\TestModels\TestModelWithResponsiveImages;

    /**
     * @method TestCustomMediaModel getOrPut($key, \Closure $value)
     * @method TestCustomMediaModel|$this shift(int $count = 1)
     * @method TestCustomMediaModel firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestCustomMediaModel|$this pop(int $count = 1)
     * @method TestCustomMediaModel|null pull($key, \Closure $default = null)
     * @method TestCustomMediaModel|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestCustomMediaModel|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestCustomMediaModel sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestCustomMediaModel|null get(null $key, \Closure $default = null)
     * @method TestCustomMediaModel|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestCustomMediaModel|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestCustomMediaModel|null find($key, $default = null)
     * @method TestCustomMediaModel[] all()
     */
    class _IH_TestCustomMediaModel_C extends MediaCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestCustomMediaModel[][]|Collection<_IH_TestCustomMediaModel_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method _IH_TestCustomMediaModel_QB whereId($value)
     * @method _IH_TestCustomMediaModel_QB whereModelId($value)
     * @method _IH_TestCustomMediaModel_QB whereModelType($value)
     * @method _IH_TestCustomMediaModel_QB whereUuid($value)
     * @method _IH_TestCustomMediaModel_QB whereCollectionName($value)
     * @method _IH_TestCustomMediaModel_QB whereName($value)
     * @method _IH_TestCustomMediaModel_QB whereFileName($value)
     * @method _IH_TestCustomMediaModel_QB whereMimeType($value)
     * @method _IH_TestCustomMediaModel_QB whereDisk($value)
     * @method _IH_TestCustomMediaModel_QB whereConversionsDisk($value)
     * @method _IH_TestCustomMediaModel_QB whereSize($value)
     * @method _IH_TestCustomMediaModel_QB whereManipulations($value)
     * @method _IH_TestCustomMediaModel_QB whereCustomProperties($value)
     * @method _IH_TestCustomMediaModel_QB whereGeneratedConversions($value)
     * @method _IH_TestCustomMediaModel_QB whereResponsiveImages($value)
     * @method _IH_TestCustomMediaModel_QB whereOrderColumn($value)
     * @method _IH_TestCustomMediaModel_QB whereCreatedAt($value)
     * @method _IH_TestCustomMediaModel_QB whereUpdatedAt($value)
     * @method _IH_TestCustomMediaModel_QB whereIsCover($value)
     * @method TestCustomMediaModel create(array $attributes = [])
     * @method TestCustomMediaModel createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestCustomMediaModel createOrRestore($attributes = [], $values = [])
     * @method TestCustomMediaModel createQuietly(array $attributes = [])
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] cursor()
     * @method TestCustomMediaModel[] eagerLoadRelations(array $models)
     * @method TestCustomMediaModel|null|_IH_TestCustomMediaModel_C|TestCustomMediaModel[] find($id, array|string $columns = ['*'])
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestCustomMediaModel|_IH_TestCustomMediaModel_C|TestCustomMediaModel[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestCustomMediaModel|_IH_TestCustomMediaModel_C|TestCustomMediaModel[] findOrFail($id, array|string $columns = ['*'])
     * @method TestCustomMediaModel|_IH_TestCustomMediaModel_C|TestCustomMediaModel[] findOrNew($id, array|string $columns = ['*'])
     * @method TestCustomMediaModel findSole($id, array|string $columns = ['*'])
     * @method TestCustomMediaModel|null first(array|string $columns = ['*'])
     * @method TestCustomMediaModel firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestCustomMediaModel firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestCustomMediaModel firstOrFail(array|string $columns = ['*'])
     * @method TestCustomMediaModel firstOrNew(array $attributes = [], array $values = [])
     * @method TestCustomMediaModel|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestCustomMediaModel forceCreate(array $attributes)
     * @method TestCustomMediaModel forceCreateQuietly(array $attributes = [])
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] get(array|string $columns = ['*'])
     * @method TestCustomMediaModel getModel()
     * @method TestCustomMediaModel[] getModels(array|string $columns = ['*'])
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] hydrate(array $items)
     * @method TestCustomMediaModel incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] lazy(int $chunkSize = 1000)
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestCustomMediaModel_C|TestCustomMediaModel[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestCustomMediaModel make(array $attributes = [])
     * @method TestCustomMediaModel newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestCustomMediaModel[]|_IH_TestCustomMediaModel_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestCustomMediaModel restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestCustomMediaModel[]|_IH_TestCustomMediaModel_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestCustomMediaModel sole(array|string $columns = ['*'])
     * @method TestCustomMediaModel updateOrCreate(array $attributes, array $values = [])
     * @method _IH_TestCustomMediaModel_QB ordered()
     */
    class _IH_TestCustomMediaModel_QB extends _BaseBuilder {}

    /**
     * @method TestCustomMediaWithCustomKeyName getOrPut($key, \Closure $value)
     * @method TestCustomMediaWithCustomKeyName|$this shift(int $count = 1)
     * @method TestCustomMediaWithCustomKeyName firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestCustomMediaWithCustomKeyName|$this pop(int $count = 1)
     * @method TestCustomMediaWithCustomKeyName|null pull($key, \Closure $default = null)
     * @method TestCustomMediaWithCustomKeyName|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestCustomMediaWithCustomKeyName|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestCustomMediaWithCustomKeyName sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestCustomMediaWithCustomKeyName|null get(null $key, \Closure $default = null)
     * @method TestCustomMediaWithCustomKeyName|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestCustomMediaWithCustomKeyName|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestCustomMediaWithCustomKeyName|null find($key, $default = null)
     * @method TestCustomMediaWithCustomKeyName[] all()
     */
    class _IH_TestCustomMediaWithCustomKeyName_C extends MediaCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestCustomMediaWithCustomKeyName[][]|Collection<_IH_TestCustomMediaWithCustomKeyName_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereId($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereModelId($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereModelType($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereUuid($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereCollectionName($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereName($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereFileName($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereMimeType($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereDisk($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereConversionsDisk($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereSize($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereManipulations($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereCustomProperties($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereGeneratedConversions($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereResponsiveImages($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereOrderColumn($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereCreatedAt($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereUpdatedAt($value)
     * @method _IH_TestCustomMediaWithCustomKeyName_QB whereIsCover($value)
     * @method TestCustomMediaWithCustomKeyName create(array $attributes = [])
     * @method TestCustomMediaWithCustomKeyName createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestCustomMediaWithCustomKeyName createOrRestore($attributes = [], $values = [])
     * @method TestCustomMediaWithCustomKeyName createQuietly(array $attributes = [])
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] cursor()
     * @method TestCustomMediaWithCustomKeyName[] eagerLoadRelations(array $models)
     * @method TestCustomMediaWithCustomKeyName|null|_IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] find($id, array|string $columns = ['*'])
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName|_IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestCustomMediaWithCustomKeyName|_IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] findOrFail($id, array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName|_IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] findOrNew($id, array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName findSole($id, array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName|null first(array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestCustomMediaWithCustomKeyName firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestCustomMediaWithCustomKeyName firstOrFail(array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName firstOrNew(array $attributes = [], array $values = [])
     * @method TestCustomMediaWithCustomKeyName|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestCustomMediaWithCustomKeyName forceCreate(array $attributes)
     * @method TestCustomMediaWithCustomKeyName forceCreateQuietly(array $attributes = [])
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] get(array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName getModel()
     * @method TestCustomMediaWithCustomKeyName[] getModels(array|string $columns = ['*'])
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] hydrate(array $items)
     * @method TestCustomMediaWithCustomKeyName incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] lazy(int $chunkSize = 1000)
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestCustomMediaWithCustomKeyName_C|TestCustomMediaWithCustomKeyName[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestCustomMediaWithCustomKeyName make(array $attributes = [])
     * @method TestCustomMediaWithCustomKeyName newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestCustomMediaWithCustomKeyName[]|_IH_TestCustomMediaWithCustomKeyName_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestCustomMediaWithCustomKeyName restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestCustomMediaWithCustomKeyName[]|_IH_TestCustomMediaWithCustomKeyName_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestCustomMediaWithCustomKeyName sole(array|string $columns = ['*'])
     * @method TestCustomMediaWithCustomKeyName updateOrCreate(array $attributes, array $values = [])
     * @method _IH_TestCustomMediaWithCustomKeyName_QB ordered()
     */
    class _IH_TestCustomMediaWithCustomKeyName_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithConversionQueued getOrPut($key, \Closure $value)
     * @method TestModelWithConversionQueued|$this shift(int $count = 1)
     * @method TestModelWithConversionQueued firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversionQueued|$this pop(int $count = 1)
     * @method TestModelWithConversionQueued|null pull($key, \Closure $default = null)
     * @method TestModelWithConversionQueued|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversionQueued|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithConversionQueued sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversionQueued|null get(null $key, \Closure $default = null)
     * @method TestModelWithConversionQueued|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversionQueued|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithConversionQueued|null find($key, $default = null)
     * @method TestModelWithConversionQueued[] all()
     */
    class _IH_TestModelWithConversionQueued_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithConversionQueued[][]|Collection<_IH_TestModelWithConversionQueued_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithConversionQueued create(array $attributes = [])
     * @method TestModelWithConversionQueued createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversionQueued createOrRestore($attributes = [], $values = [])
     * @method TestModelWithConversionQueued createQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] cursor()
     * @method TestModelWithConversionQueued[] eagerLoadRelations(array $models)
     * @method TestModelWithConversionQueued|null|_IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithConversionQueued|_IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversionQueued|_IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithConversionQueued|_IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithConversionQueued findSole($id, array|string $columns = ['*'])
     * @method TestModelWithConversionQueued|null first(array|string $columns = ['*'])
     * @method TestModelWithConversionQueued firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversionQueued firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversionQueued firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithConversionQueued firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithConversionQueued|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithConversionQueued forceCreate(array $attributes)
     * @method TestModelWithConversionQueued forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] get(array|string $columns = ['*'])
     * @method TestModelWithConversionQueued getModel()
     * @method TestModelWithConversionQueued[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] hydrate(array $items)
     * @method TestModelWithConversionQueued incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithConversionQueued_C|TestModelWithConversionQueued[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithConversionQueued make(array $attributes = [])
     * @method TestModelWithConversionQueued newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithConversionQueued[]|_IH_TestModelWithConversionQueued_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithConversionQueued restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithConversionQueued[]|_IH_TestModelWithConversionQueued_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithConversionQueued sole(array|string $columns = ['*'])
     * @method TestModelWithConversionQueued updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithConversionQueued_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithConversionUsingModelInstance getOrPut($key, \Closure $value)
     * @method TestModelWithConversionUsingModelInstance|$this shift(int $count = 1)
     * @method TestModelWithConversionUsingModelInstance firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversionUsingModelInstance|$this pop(int $count = 1)
     * @method TestModelWithConversionUsingModelInstance|null pull($key, \Closure $default = null)
     * @method TestModelWithConversionUsingModelInstance|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversionUsingModelInstance|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithConversionUsingModelInstance sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversionUsingModelInstance|null get(null $key, \Closure $default = null)
     * @method TestModelWithConversionUsingModelInstance|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversionUsingModelInstance|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithConversionUsingModelInstance|null find($key, $default = null)
     * @method TestModelWithConversionUsingModelInstance[] all()
     */
    class _IH_TestModelWithConversionUsingModelInstance_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithConversionUsingModelInstance[][]|Collection<_IH_TestModelWithConversionUsingModelInstance_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithConversionUsingModelInstance create(array $attributes = [])
     * @method TestModelWithConversionUsingModelInstance createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversionUsingModelInstance createOrRestore($attributes = [], $values = [])
     * @method TestModelWithConversionUsingModelInstance createQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] cursor()
     * @method TestModelWithConversionUsingModelInstance[] eagerLoadRelations(array $models)
     * @method TestModelWithConversionUsingModelInstance|null|_IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance|_IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversionUsingModelInstance|_IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance|_IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance findSole($id, array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance|null first(array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversionUsingModelInstance firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversionUsingModelInstance firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithConversionUsingModelInstance|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithConversionUsingModelInstance forceCreate(array $attributes)
     * @method TestModelWithConversionUsingModelInstance forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] get(array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance getModel()
     * @method TestModelWithConversionUsingModelInstance[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] hydrate(array $items)
     * @method TestModelWithConversionUsingModelInstance incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithConversionUsingModelInstance_C|TestModelWithConversionUsingModelInstance[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithConversionUsingModelInstance make(array $attributes = [])
     * @method TestModelWithConversionUsingModelInstance newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithConversionUsingModelInstance[]|_IH_TestModelWithConversionUsingModelInstance_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithConversionUsingModelInstance restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithConversionUsingModelInstance[]|_IH_TestModelWithConversionUsingModelInstance_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithConversionUsingModelInstance sole(array|string $columns = ['*'])
     * @method TestModelWithConversionUsingModelInstance updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithConversionUsingModelInstance_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithConversion getOrPut($key, \Closure $value)
     * @method TestModelWithConversion|$this shift(int $count = 1)
     * @method TestModelWithConversion firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversion|$this pop(int $count = 1)
     * @method TestModelWithConversion|null pull($key, \Closure $default = null)
     * @method TestModelWithConversion|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversion|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithConversion sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversion|null get(null $key, \Closure $default = null)
     * @method TestModelWithConversion|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversion|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithConversion|null find($key, $default = null)
     * @method TestModelWithConversion[] all()
     */
    class _IH_TestModelWithConversion_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithConversion[][]|Collection<_IH_TestModelWithConversion_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithConversion create(array $attributes = [])
     * @method TestModelWithConversion createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversion createOrRestore($attributes = [], $values = [])
     * @method TestModelWithConversion createQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] cursor()
     * @method TestModelWithConversion[] eagerLoadRelations(array $models)
     * @method TestModelWithConversion|null|_IH_TestModelWithConversion_C|TestModelWithConversion[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithConversion|_IH_TestModelWithConversion_C|TestModelWithConversion[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversion|_IH_TestModelWithConversion_C|TestModelWithConversion[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithConversion|_IH_TestModelWithConversion_C|TestModelWithConversion[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithConversion findSole($id, array|string $columns = ['*'])
     * @method TestModelWithConversion|null first(array|string $columns = ['*'])
     * @method TestModelWithConversion firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversion firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversion firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithConversion firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithConversion|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithConversion forceCreate(array $attributes)
     * @method TestModelWithConversion forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] get(array|string $columns = ['*'])
     * @method TestModelWithConversion getModel()
     * @method TestModelWithConversion[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] hydrate(array $items)
     * @method TestModelWithConversion incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithConversion_C|TestModelWithConversion[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithConversion make(array $attributes = [])
     * @method TestModelWithConversion newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithConversion[]|_IH_TestModelWithConversion_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithConversion restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithConversion[]|_IH_TestModelWithConversion_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithConversion sole(array|string $columns = ['*'])
     * @method TestModelWithConversion updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithConversion_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithConversionsOnOtherDisk getOrPut($key, \Closure $value)
     * @method TestModelWithConversionsOnOtherDisk|$this shift(int $count = 1)
     * @method TestModelWithConversionsOnOtherDisk firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversionsOnOtherDisk|$this pop(int $count = 1)
     * @method TestModelWithConversionsOnOtherDisk|null pull($key, \Closure $default = null)
     * @method TestModelWithConversionsOnOtherDisk|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversionsOnOtherDisk|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithConversionsOnOtherDisk sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithConversionsOnOtherDisk|null get(null $key, \Closure $default = null)
     * @method TestModelWithConversionsOnOtherDisk|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithConversionsOnOtherDisk|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithConversionsOnOtherDisk|null find($key, $default = null)
     * @method TestModelWithConversionsOnOtherDisk[] all()
     */
    class _IH_TestModelWithConversionsOnOtherDisk_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithConversionsOnOtherDisk[][]|Collection<_IH_TestModelWithConversionsOnOtherDisk_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithConversionsOnOtherDisk create(array $attributes = [])
     * @method TestModelWithConversionsOnOtherDisk createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversionsOnOtherDisk createOrRestore($attributes = [], $values = [])
     * @method TestModelWithConversionsOnOtherDisk createQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] cursor()
     * @method TestModelWithConversionsOnOtherDisk[] eagerLoadRelations(array $models)
     * @method TestModelWithConversionsOnOtherDisk|null|_IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk|_IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversionsOnOtherDisk|_IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk|_IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk findSole($id, array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk|null first(array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithConversionsOnOtherDisk firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithConversionsOnOtherDisk firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithConversionsOnOtherDisk|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithConversionsOnOtherDisk forceCreate(array $attributes)
     * @method TestModelWithConversionsOnOtherDisk forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] get(array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk getModel()
     * @method TestModelWithConversionsOnOtherDisk[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] hydrate(array $items)
     * @method TestModelWithConversionsOnOtherDisk incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithConversionsOnOtherDisk_C|TestModelWithConversionsOnOtherDisk[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithConversionsOnOtherDisk make(array $attributes = [])
     * @method TestModelWithConversionsOnOtherDisk newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithConversionsOnOtherDisk[]|_IH_TestModelWithConversionsOnOtherDisk_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithConversionsOnOtherDisk restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithConversionsOnOtherDisk[]|_IH_TestModelWithConversionsOnOtherDisk_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithConversionsOnOtherDisk sole(array|string $columns = ['*'])
     * @method TestModelWithConversionsOnOtherDisk updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithConversionsOnOtherDisk_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithCustomLoadingAttribute getOrPut($key, \Closure $value)
     * @method TestModelWithCustomLoadingAttribute|$this shift(int $count = 1)
     * @method TestModelWithCustomLoadingAttribute firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithCustomLoadingAttribute|$this pop(int $count = 1)
     * @method TestModelWithCustomLoadingAttribute|null pull($key, \Closure $default = null)
     * @method TestModelWithCustomLoadingAttribute|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithCustomLoadingAttribute|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithCustomLoadingAttribute sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithCustomLoadingAttribute|null get(null $key, \Closure $default = null)
     * @method TestModelWithCustomLoadingAttribute|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithCustomLoadingAttribute|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithCustomLoadingAttribute|null find($key, $default = null)
     * @method TestModelWithCustomLoadingAttribute[] all()
     */
    class _IH_TestModelWithCustomLoadingAttribute_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithCustomLoadingAttribute[][]|Collection<_IH_TestModelWithCustomLoadingAttribute_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithCustomLoadingAttribute create(array $attributes = [])
     * @method TestModelWithCustomLoadingAttribute createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithCustomLoadingAttribute createOrRestore($attributes = [], $values = [])
     * @method TestModelWithCustomLoadingAttribute createQuietly(array $attributes = [])
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] cursor()
     * @method TestModelWithCustomLoadingAttribute[] eagerLoadRelations(array $models)
     * @method TestModelWithCustomLoadingAttribute|null|_IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute|_IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithCustomLoadingAttribute|_IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute|_IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute findSole($id, array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute|null first(array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithCustomLoadingAttribute firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithCustomLoadingAttribute firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithCustomLoadingAttribute|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithCustomLoadingAttribute forceCreate(array $attributes)
     * @method TestModelWithCustomLoadingAttribute forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] get(array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute getModel()
     * @method TestModelWithCustomLoadingAttribute[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] hydrate(array $items)
     * @method TestModelWithCustomLoadingAttribute incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithCustomLoadingAttribute_C|TestModelWithCustomLoadingAttribute[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithCustomLoadingAttribute make(array $attributes = [])
     * @method TestModelWithCustomLoadingAttribute newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithCustomLoadingAttribute[]|_IH_TestModelWithCustomLoadingAttribute_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithCustomLoadingAttribute restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithCustomLoadingAttribute[]|_IH_TestModelWithCustomLoadingAttribute_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithCustomLoadingAttribute sole(array|string $columns = ['*'])
     * @method TestModelWithCustomLoadingAttribute updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithCustomLoadingAttribute_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithMorphMapInSideModel getOrPut($key, \Closure $value)
     * @method TestModelWithMorphMapInSideModel|$this shift(int $count = 1)
     * @method TestModelWithMorphMapInSideModel firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithMorphMapInSideModel|$this pop(int $count = 1)
     * @method TestModelWithMorphMapInSideModel|null pull($key, \Closure $default = null)
     * @method TestModelWithMorphMapInSideModel|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithMorphMapInSideModel|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithMorphMapInSideModel sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithMorphMapInSideModel|null get(null $key, \Closure $default = null)
     * @method TestModelWithMorphMapInSideModel|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithMorphMapInSideModel|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithMorphMapInSideModel|null find($key, $default = null)
     * @method TestModelWithMorphMapInSideModel[] all()
     */
    class _IH_TestModelWithMorphMapInSideModel_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithMorphMapInSideModel[][]|Collection<_IH_TestModelWithMorphMapInSideModel_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithMorphMapInSideModel create(array $attributes = [])
     * @method TestModelWithMorphMapInSideModel createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithMorphMapInSideModel createOrRestore($attributes = [], $values = [])
     * @method TestModelWithMorphMapInSideModel createQuietly(array $attributes = [])
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] cursor()
     * @method TestModelWithMorphMapInSideModel[] eagerLoadRelations(array $models)
     * @method TestModelWithMorphMapInSideModel|null|_IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel|_IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithMorphMapInSideModel|_IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel|_IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel findSole($id, array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel|null first(array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithMorphMapInSideModel firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithMorphMapInSideModel firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithMorphMapInSideModel|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithMorphMapInSideModel forceCreate(array $attributes)
     * @method TestModelWithMorphMapInSideModel forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] get(array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel getModel()
     * @method TestModelWithMorphMapInSideModel[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] hydrate(array $items)
     * @method TestModelWithMorphMapInSideModel incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithMorphMapInSideModel_C|TestModelWithMorphMapInSideModel[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithMorphMapInSideModel make(array $attributes = [])
     * @method TestModelWithMorphMapInSideModel newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithMorphMapInSideModel[]|_IH_TestModelWithMorphMapInSideModel_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithMorphMapInSideModel restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithMorphMapInSideModel[]|_IH_TestModelWithMorphMapInSideModel_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithMorphMapInSideModel sole(array|string $columns = ['*'])
     * @method TestModelWithMorphMapInSideModel updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithMorphMapInSideModel_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithMorphMap getOrPut($key, \Closure $value)
     * @method TestModelWithMorphMap|$this shift(int $count = 1)
     * @method TestModelWithMorphMap firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithMorphMap|$this pop(int $count = 1)
     * @method TestModelWithMorphMap|null pull($key, \Closure $default = null)
     * @method TestModelWithMorphMap|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithMorphMap|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithMorphMap sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithMorphMap|null get(null $key, \Closure $default = null)
     * @method TestModelWithMorphMap|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithMorphMap|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithMorphMap|null find($key, $default = null)
     * @method TestModelWithMorphMap[] all()
     */
    class _IH_TestModelWithMorphMap_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithMorphMap[][]|Collection<_IH_TestModelWithMorphMap_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithMorphMap create(array $attributes = [])
     * @method TestModelWithMorphMap createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithMorphMap createOrRestore($attributes = [], $values = [])
     * @method TestModelWithMorphMap createQuietly(array $attributes = [])
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] cursor()
     * @method TestModelWithMorphMap[] eagerLoadRelations(array $models)
     * @method TestModelWithMorphMap|null|_IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithMorphMap|_IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithMorphMap|_IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithMorphMap|_IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithMorphMap findSole($id, array|string $columns = ['*'])
     * @method TestModelWithMorphMap|null first(array|string $columns = ['*'])
     * @method TestModelWithMorphMap firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithMorphMap firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithMorphMap firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithMorphMap firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithMorphMap|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithMorphMap forceCreate(array $attributes)
     * @method TestModelWithMorphMap forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] get(array|string $columns = ['*'])
     * @method TestModelWithMorphMap getModel()
     * @method TestModelWithMorphMap[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] hydrate(array $items)
     * @method TestModelWithMorphMap incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithMorphMap_C|TestModelWithMorphMap[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithMorphMap make(array $attributes = [])
     * @method TestModelWithMorphMap newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithMorphMap[]|_IH_TestModelWithMorphMap_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithMorphMap restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithMorphMap[]|_IH_TestModelWithMorphMap_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithMorphMap sole(array|string $columns = ['*'])
     * @method TestModelWithMorphMap updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithMorphMap_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithMultipleConversions getOrPut($key, \Closure $value)
     * @method TestModelWithMultipleConversions|$this shift(int $count = 1)
     * @method TestModelWithMultipleConversions firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithMultipleConversions|$this pop(int $count = 1)
     * @method TestModelWithMultipleConversions|null pull($key, \Closure $default = null)
     * @method TestModelWithMultipleConversions|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithMultipleConversions|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithMultipleConversions sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithMultipleConversions|null get(null $key, \Closure $default = null)
     * @method TestModelWithMultipleConversions|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithMultipleConversions|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithMultipleConversions|null find($key, $default = null)
     * @method TestModelWithMultipleConversions[] all()
     */
    class _IH_TestModelWithMultipleConversions_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithMultipleConversions[][]|Collection<_IH_TestModelWithMultipleConversions_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithMultipleConversions create(array $attributes = [])
     * @method TestModelWithMultipleConversions createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithMultipleConversions createOrRestore($attributes = [], $values = [])
     * @method TestModelWithMultipleConversions createQuietly(array $attributes = [])
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] cursor()
     * @method TestModelWithMultipleConversions[] eagerLoadRelations(array $models)
     * @method TestModelWithMultipleConversions|null|_IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions|_IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithMultipleConversions|_IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions|_IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions findSole($id, array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions|null first(array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithMultipleConversions firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithMultipleConversions firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithMultipleConversions|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithMultipleConversions forceCreate(array $attributes)
     * @method TestModelWithMultipleConversions forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] get(array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions getModel()
     * @method TestModelWithMultipleConversions[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] hydrate(array $items)
     * @method TestModelWithMultipleConversions incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithMultipleConversions_C|TestModelWithMultipleConversions[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithMultipleConversions make(array $attributes = [])
     * @method TestModelWithMultipleConversions newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithMultipleConversions[]|_IH_TestModelWithMultipleConversions_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithMultipleConversions restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithMultipleConversions[]|_IH_TestModelWithMultipleConversions_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithMultipleConversions sole(array|string $columns = ['*'])
     * @method TestModelWithMultipleConversions updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithMultipleConversions_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithPreviewConversion getOrPut($key, \Closure $value)
     * @method TestModelWithPreviewConversion|$this shift(int $count = 1)
     * @method TestModelWithPreviewConversion firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithPreviewConversion|$this pop(int $count = 1)
     * @method TestModelWithPreviewConversion|null pull($key, \Closure $default = null)
     * @method TestModelWithPreviewConversion|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithPreviewConversion|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithPreviewConversion sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithPreviewConversion|null get(null $key, \Closure $default = null)
     * @method TestModelWithPreviewConversion|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithPreviewConversion|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithPreviewConversion|null find($key, $default = null)
     * @method TestModelWithPreviewConversion[] all()
     */
    class _IH_TestModelWithPreviewConversion_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithPreviewConversion[][]|Collection<_IH_TestModelWithPreviewConversion_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithPreviewConversion create(array $attributes = [])
     * @method TestModelWithPreviewConversion createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithPreviewConversion createOrRestore($attributes = [], $values = [])
     * @method TestModelWithPreviewConversion createQuietly(array $attributes = [])
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] cursor()
     * @method TestModelWithPreviewConversion[] eagerLoadRelations(array $models)
     * @method TestModelWithPreviewConversion|null|_IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion|_IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithPreviewConversion|_IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion|_IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion findSole($id, array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion|null first(array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithPreviewConversion firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithPreviewConversion firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithPreviewConversion|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithPreviewConversion forceCreate(array $attributes)
     * @method TestModelWithPreviewConversion forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] get(array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion getModel()
     * @method TestModelWithPreviewConversion[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] hydrate(array $items)
     * @method TestModelWithPreviewConversion incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithPreviewConversion_C|TestModelWithPreviewConversion[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithPreviewConversion make(array $attributes = [])
     * @method TestModelWithPreviewConversion newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithPreviewConversion[]|_IH_TestModelWithPreviewConversion_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithPreviewConversion restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithPreviewConversion[]|_IH_TestModelWithPreviewConversion_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithPreviewConversion sole(array|string $columns = ['*'])
     * @method TestModelWithPreviewConversion updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithPreviewConversion_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithResponsiveImages getOrPut($key, \Closure $value)
     * @method TestModelWithResponsiveImages|$this shift(int $count = 1)
     * @method TestModelWithResponsiveImages firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithResponsiveImages|$this pop(int $count = 1)
     * @method TestModelWithResponsiveImages|null pull($key, \Closure $default = null)
     * @method TestModelWithResponsiveImages|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithResponsiveImages|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithResponsiveImages sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithResponsiveImages|null get(null $key, \Closure $default = null)
     * @method TestModelWithResponsiveImages|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithResponsiveImages|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithResponsiveImages|null find($key, $default = null)
     * @method TestModelWithResponsiveImages[] all()
     */
    class _IH_TestModelWithResponsiveImages_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithResponsiveImages[][]|Collection<_IH_TestModelWithResponsiveImages_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithResponsiveImages create(array $attributes = [])
     * @method TestModelWithResponsiveImages createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithResponsiveImages createOrRestore($attributes = [], $values = [])
     * @method TestModelWithResponsiveImages createQuietly(array $attributes = [])
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] cursor()
     * @method TestModelWithResponsiveImages[] eagerLoadRelations(array $models)
     * @method TestModelWithResponsiveImages|null|_IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages|_IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithResponsiveImages|_IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages|_IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages findSole($id, array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages|null first(array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithResponsiveImages firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithResponsiveImages firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithResponsiveImages|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithResponsiveImages forceCreate(array $attributes)
     * @method TestModelWithResponsiveImages forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] get(array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages getModel()
     * @method TestModelWithResponsiveImages[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] hydrate(array $items)
     * @method TestModelWithResponsiveImages incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithResponsiveImages_C|TestModelWithResponsiveImages[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithResponsiveImages make(array $attributes = [])
     * @method TestModelWithResponsiveImages newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithResponsiveImages[]|_IH_TestModelWithResponsiveImages_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithResponsiveImages restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithResponsiveImages[]|_IH_TestModelWithResponsiveImages_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithResponsiveImages sole(array|string $columns = ['*'])
     * @method TestModelWithResponsiveImages updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithResponsiveImages_QB extends _BaseBuilder {}

    /**
     * @method TestModelWithoutMediaConversions getOrPut($key, \Closure $value)
     * @method TestModelWithoutMediaConversions|$this shift(int $count = 1)
     * @method TestModelWithoutMediaConversions firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModelWithoutMediaConversions|$this pop(int $count = 1)
     * @method TestModelWithoutMediaConversions|null pull($key, \Closure $default = null)
     * @method TestModelWithoutMediaConversions|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithoutMediaConversions|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModelWithoutMediaConversions sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModelWithoutMediaConversions|null get(null $key, \Closure $default = null)
     * @method TestModelWithoutMediaConversions|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModelWithoutMediaConversions|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModelWithoutMediaConversions|null find($key, $default = null)
     * @method TestModelWithoutMediaConversions[] all()
     */
    class _IH_TestModelWithoutMediaConversions_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModelWithoutMediaConversions[][]|Collection<_IH_TestModelWithoutMediaConversions_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModelWithoutMediaConversions create(array $attributes = [])
     * @method TestModelWithoutMediaConversions createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithoutMediaConversions createOrRestore($attributes = [], $values = [])
     * @method TestModelWithoutMediaConversions createQuietly(array $attributes = [])
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] cursor()
     * @method TestModelWithoutMediaConversions[] eagerLoadRelations(array $models)
     * @method TestModelWithoutMediaConversions|null|_IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions|_IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithoutMediaConversions|_IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions|_IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions findSole($id, array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions|null first(array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModelWithoutMediaConversions firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModelWithoutMediaConversions firstOrFail(array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions firstOrNew(array $attributes = [], array $values = [])
     * @method TestModelWithoutMediaConversions|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModelWithoutMediaConversions forceCreate(array $attributes)
     * @method TestModelWithoutMediaConversions forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] get(array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions getModel()
     * @method TestModelWithoutMediaConversions[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] hydrate(array $items)
     * @method TestModelWithoutMediaConversions incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModelWithoutMediaConversions_C|TestModelWithoutMediaConversions[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModelWithoutMediaConversions make(array $attributes = [])
     * @method TestModelWithoutMediaConversions newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModelWithoutMediaConversions[]|_IH_TestModelWithoutMediaConversions_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModelWithoutMediaConversions restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModelWithoutMediaConversions[]|_IH_TestModelWithoutMediaConversions_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModelWithoutMediaConversions sole(array|string $columns = ['*'])
     * @method TestModelWithoutMediaConversions updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModelWithoutMediaConversions_QB extends _BaseBuilder {}

    /**
     * @method TestModel getOrPut($key, \Closure $value)
     * @method TestModel|$this shift(int $count = 1)
     * @method TestModel firstOrFail(callable|string $key = null, $operator = null, $value = null)
     * @method TestModel|$this pop(int $count = 1)
     * @method TestModel|null pull($key, \Closure $default = null)
     * @method TestModel|null last(callable|null $callback = null, \Closure $default = null)
     * @method TestModel|$this random(callable|int|null $number = null, bool $preserveKeys = false)
     * @method TestModel sole(callable|null|string $key = null, $operator = null, $value = null)
     * @method TestModel|null get(null $key, \Closure $default = null)
     * @method TestModel|null first(callable|null $callback = null, \Closure $default = null)
     * @method TestModel|null firstWhere(callable|string $key, $operator = null, $value = null)
     * @method TestModel|null find($key, $default = null)
     * @method TestModel[] all()
     */
    class _IH_TestModel_C extends _BaseCollection {
        /**
         * @param int $size
         * @param bool $preserveKeys
         * @return TestModel[][]|Collection<_IH_TestModel_C>
         */
        public function chunk($size, $preserveKeys = true)
        {
            return [];
        }
    }

    /**
     * @method TestModel create(array $attributes = [])
     * @method TestModel createOrFirst(array $attributes = [], array|\Closure $values = [])
     * @method TestModel createOrRestore($attributes = [], $values = [])
     * @method TestModel createQuietly(array $attributes = [])
     * @method _IH_TestModel_C|TestModel[] cursor()
     * @method TestModel[] eagerLoadRelations(array $models)
     * @method TestModel|null|_IH_TestModel_C|TestModel[] find($id, array|string $columns = ['*'])
     * @method _IH_TestModel_C|TestModel[] findMany(array|Arrayable $ids, array|string $columns = ['*'])
     * @method TestModel|_IH_TestModel_C|TestModel[] findOr($id, \Closure|string|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModel|_IH_TestModel_C|TestModel[] findOrFail($id, array|string $columns = ['*'])
     * @method TestModel|_IH_TestModel_C|TestModel[] findOrNew($id, array|string $columns = ['*'])
     * @method TestModel findSole($id, array|string $columns = ['*'])
     * @method TestModel|null first(array|string $columns = ['*'])
     * @method TestModel firstOr(\Closure|string[] $columns = ['*'], \Closure|null $callback = null)
     * @method TestModel firstOrCreate(array $attributes = [], array|\Closure $values = [])
     * @method TestModel firstOrFail(array|string $columns = ['*'])
     * @method TestModel firstOrNew(array $attributes = [], array $values = [])
     * @method TestModel|null firstWhere(array|\Closure|Expression|string $column, $operator = null, $value = null, string $boolean = 'and')
     * @method TestModel forceCreate(array $attributes)
     * @method TestModel forceCreateQuietly(array $attributes = [])
     * @method _IH_TestModel_C|TestModel[] fromQuery(string $query, array $bindings = [])
     * @method _IH_TestModel_C|TestModel[] get(array|string $columns = ['*'])
     * @method TestModel getModel()
     * @method TestModel[] getModels(array|string $columns = ['*'])
     * @method _IH_TestModel_C|TestModel[] hydrate(array $items)
     * @method TestModel incrementOrCreate(array $attributes, string $column = 'count', float|int $default = 1, float|int $step = 1, array $extra = [])
     * @method _IH_TestModel_C|TestModel[] lazy(int $chunkSize = 1000)
     * @method _IH_TestModel_C|TestModel[] lazyById(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method _IH_TestModel_C|TestModel[] lazyByIdDesc(int $chunkSize = 1000, null|string $column = null, null|string $alias = null)
     * @method TestModel make(array $attributes = [])
     * @method TestModel newModelInstance(array $attributes = [])
     * @method LengthAwarePaginator|TestModel[]|_IH_TestModel_C paginate(\Closure|int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null, \Closure|int|null $total = null)
     * @method TestModel restoreOrCreate($attributes = [], $values = [])
     * @method Paginator|TestModel[]|_IH_TestModel_C simplePaginate(int|null $perPage = null, array|string $columns = ['*'], string $pageName = 'page', int|null $page = null)
     * @method TestModel sole(array|string $columns = ['*'])
     * @method TestModel updateOrCreate(array $attributes, array $values = [])
     */
    class _IH_TestModel_QB extends _BaseBuilder {}
}
