-
-
Notifications
You must be signed in to change notification settings - Fork 998
Expand file tree
/
Copy pathlaravel-gaps.stub
More file actions
108 lines (90 loc) · 3.45 KB
/
Copy pathlaravel-gaps.stub
File metadata and controls
108 lines (90 loc) · 3.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php
/**
* PHPStan stub: methods that exist on the CONCRETE Laravel classes our code uses at
* runtime, but are not declared on the looser contracts/interfaces we type-hint against.
*
* Leantime intentionally does NOT use Larastan, so vanilla PHPStan only sees the contract
* (e.g. ConnectionInterface) and reports the concrete method (e.g. getDriverName()) as
* undefined — even though the runtime object (Illuminate\Database\Connection) always has it.
*
* These @method tags merge onto the real interfaces/classes; native members are unaffected.
* Each entry is documented with the concrete class that actually provides the method.
*/
namespace Illuminate\Database;
/**
* Provided at runtime by the abstract Illuminate\Database\Connection that
* DatabaseManager::connection() always returns.
*
* @method string getDriverName()
* @method \PDO getPdo()
* @method \Illuminate\Database\Query\Grammars\Grammar getQueryGrammar()
*/
interface ConnectionInterface {}
namespace Illuminate\Contracts\Cache;
/**
* The concrete Illuminate\Cache\Repository (what Cache::store() returns) forwards lock() via
* __call to its underlying store when that store is a LockProvider (Redis/File/Database/...).
* StartSession::cache() is typed against this contract and uses it for session locking.
*
* @method \Illuminate\Cache\Lock lock(string $name, int $seconds = 0, ?string $owner = null)
*/
interface Repository {}
namespace Illuminate\Contracts\Filesystem;
/**
* Provided by the concrete Illuminate\Filesystem\FilesystemAdapter (and the Cloud contract
* for url()/temporaryUrl()). Storage::disk() returns that adapter.
*
* @method string url(string $path)
* @method string temporaryUrl(string $path, \DateTimeInterface $expiration, array $options = [])
* @method string|false mimeType(string $path)
*/
interface Filesystem {}
namespace Illuminate\Contracts\Foundation;
/**
* Provided by Illuminate\Foundation\Application (which Leantime\Core\Application extends).
*
* @method void rebinding(string $abstract, \Closure $callback)
* @method string getCachedConfigPath()
* @method string detectEnvironment(\Closure $callback)
*/
interface Application {}
namespace Illuminate\Container;
/**
* terminating() lives on Illuminate\Foundation\Application; the container instance Leantime
* passes around is that application.
*
* @method void terminating(\Closure|string $callback)
*/
class Container {}
namespace Illuminate\Contracts\Auth;
/**
* Provided by the concrete Illuminate\Auth\AuthManager bound to 'auth'.
*
* @method string getDefaultDriver()
* @method \Illuminate\Contracts\Auth\Authenticatable|null user()
*/
interface Factory {}
/**
* viaRemember()/getRecallerName()/logoutCurrentDevice() are provided by the concrete
* session guard (Illuminate\Auth\SessionGuard) that AuthManager::guard() returns.
*
* @method bool viaRemember()
* @method string getRecallerName()
* @method void logoutCurrentDevice()
*/
interface Guard {}
namespace Illuminate\Support;
/**
* addRealMinutes() is a Carbon magic method (Carbon 3 dropped its @method annotation but the
* __call magic still resolves it). Used by StartSession exactly as upstream Laravel does.
*
* @method \Illuminate\Support\Carbon addRealMinutes(int $value = 1)
*/
class Carbon {}
namespace Laravel\Socialite\Contracts;
/**
* setScopes() is provided by the concrete Laravel\Socialite\Two\AbstractProvider.
*
* @method \Laravel\Socialite\Contracts\Provider setScopes(array|string $scopes)
*/
interface Provider {}