@orieljs/framework 0.1.0-alpha.3 → 0.1.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-WEGTH46M.js → chunk-A5XRLEWM.js} +3 -3
- package/dist/{chunk-3ZRPBRAE.js → chunk-BSQKOLSK.js} +5 -1
- package/dist/chunk-BSQKOLSK.js.map +1 -0
- package/dist/{chunk-IRHK7GH7.js → chunk-PM5YTG57.js} +138 -3
- package/dist/chunk-PM5YTG57.js.map +1 -0
- package/dist/{chunk-I2OMKIQZ.js → chunk-WNJP46B7.js} +2770 -204
- package/dist/chunk-WNJP46B7.js.map +1 -0
- package/dist/contracts.d.ts +197 -132
- package/dist/contracts.js +5 -1
- package/dist/index.d.ts +920 -323
- package/dist/index.js +1340 -2122
- package/dist/index.js.map +1 -1
- package/dist/jsx-runtime.js +3 -3
- package/dist/{testing--F6FODc_.d.ts → testing-BErengYY.d.ts} +290 -91
- package/dist/testing.d.ts +1 -1
- package/dist/testing.js +3 -3
- package/package.json +30 -30
- package/dist/chunk-3ZRPBRAE.js.map +0 -1
- package/dist/chunk-HU43NADT.js +0 -745
- package/dist/chunk-HU43NADT.js.map +0 -1
- package/dist/chunk-I2OMKIQZ.js.map +0 -1
- package/dist/chunk-IRHK7GH7.js.map +0 -1
- package/dist/chunk-S7YC43IH.js +0 -93
- package/dist/chunk-S7YC43IH.js.map +0 -1
- package/dist/chunk-TIE5OAMF.js +0 -474
- package/dist/chunk-TIE5OAMF.js.map +0 -1
- package/dist/chunk-UPZAML2Q.js +0 -3653
- package/dist/chunk-UPZAML2Q.js.map +0 -1
- package/dist/jsx-runtime-CZ6JqBQo.d.ts +0 -345
- /package/dist/{chunk-WEGTH46M.js.map → chunk-A5XRLEWM.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { C as ClassRegistry$3, a as Class$j, S as ServiceProvider$u, A as Application$c, b as Abstract$j, c as ConfigRepository$3 } from './index.d-DOlTeG-8.js';
|
|
2
|
-
import { Token as Token$j, ServiceProviderClass as ServiceProviderClass$a } from './contracts.js';
|
|
3
|
-
export { RouteList, RouteName } from './contracts.js';
|
|
4
|
-
import { T as Target, B as BusFake, E as EventFake, M as MailFake, N as NotificationFake, Q as QueueFake, F as FakeDisk } from './testing
|
|
5
|
-
export { C as Component, a as ComponentResult, b as Computed, c as CorruptComponentPayloadError, d as ErrorBag, I as InvalidLiveRequestError, L as Live, e as LiveComponentManager, f as LiveComponentNotFoundError, g as LiveError, h as LiveProps, i as LiveServiceProvider, j as Locked, k as MethodNotCallableError, O as On, P as
|
|
2
|
+
import { Token as Token$j, ServiceProviderClass as ServiceProviderClass$a, Notification as Notification$4 } from './contracts.js';
|
|
3
|
+
export { InertiaPage, RouteList, RouteName } from './contracts.js';
|
|
4
|
+
import { T as Target, B as BusFake, E as EventFake, M as MailFake, N as NotificationFake, Q as QueueFake, F as FakeDisk } from './testing-BErengYY.js';
|
|
5
|
+
export { C as Component, a as ComponentResult, b as Computed, c as CorruptComponentPayloadError, d as ErrorBag, I as InvalidLiveRequestError, L as Live, e as LiveComponentManager, f as LiveComponentNotFoundError, g as LiveError, h as LiveProps, i as LiveServiceProvider, j as Locked, k as MethodNotCallableError, O as On, P as PERSISTENT_MIDDLEWARE, l as Paginated, m as Pagination, n as PaginationProps, o as PaginationSource, p as PendingEvent, q as PersistentMiddleware, r as PropertyNotUpdatableError, s as TestRequestScope, t as Testable, U as UPDATE_URI, W as WithPagination, u as componentName, v as live, w as persistentMiddleware } from './testing-BErengYY.js';
|
|
6
6
|
import { IncomingMessage, ServerResponse } from 'node:http';
|
|
7
7
|
import { Kysely, RawBuilder, CompiledQuery, QueryResult, SqliteDatabase, SqliteStatement, Dialect } from 'kysely';
|
|
8
8
|
import Redis$1, { Redis } from 'ioredis';
|
|
@@ -357,6 +357,13 @@ declare function tap<T>(target: T, callback: (target: T) => void): T;
|
|
|
357
357
|
/** Calls fn up to `times` times (attempt numbers are 1-based). Rethrows the last error, or the first one `when` rejects. */
|
|
358
358
|
declare function retry<T>(times: number, fn: (attempt: number) => T | Promise<T>, sleepMs?: number | ((attempt: number) => number), when?: (error: unknown) => boolean): Promise<T>;
|
|
359
359
|
|
|
360
|
+
/**
|
|
361
|
+
* Laravel's __(): the line for `key` with `:placeholders` filled (`:name`, `:Name` capitalized, `:NAME` upper-cased),
|
|
362
|
+
* longest placeholder first. A key with no line comes back as is, so a sentence can be its own key:
|
|
363
|
+
* __('auth.failed'), __('auth.throttle', { seconds: 30 }), __('A reset link will be sent if the account exists.').
|
|
364
|
+
*/
|
|
365
|
+
declare function __(key: string, replace?: Record<string, string | number>): string;
|
|
366
|
+
|
|
360
367
|
interface ConfigRepository$2 {
|
|
361
368
|
has(key: string): boolean;
|
|
362
369
|
/** Dot notation: get('database.connections.sqlite.database'). */
|
|
@@ -417,59 +424,6 @@ interface Container$i {
|
|
|
417
424
|
}
|
|
418
425
|
declare const Container$i: Token$h<Container$i>;
|
|
419
426
|
|
|
420
|
-
interface ServiceProvider$s {
|
|
421
|
-
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
422
|
-
register?(): void;
|
|
423
|
-
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
424
|
-
boot?(): void | Promise<void>;
|
|
425
|
-
}
|
|
426
|
-
type ServiceProviderClass$9 = new (app: Application$b) => ServiceProvider$s;
|
|
427
|
-
interface Application$b extends Container$i {
|
|
428
|
-
readonly version: string;
|
|
429
|
-
basePath(path?: string): string;
|
|
430
|
-
appPath(path?: string): string;
|
|
431
|
-
bootstrapPath(path?: string): string;
|
|
432
|
-
configPath(path?: string): string;
|
|
433
|
-
databasePath(path?: string): string;
|
|
434
|
-
publicPath(path?: string): string;
|
|
435
|
-
resourcePath(path?: string): string;
|
|
436
|
-
storagePath(path?: string): string;
|
|
437
|
-
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
438
|
-
environment(): string;
|
|
439
|
-
environment(...environments: string[]): boolean;
|
|
440
|
-
isProduction(): boolean;
|
|
441
|
-
isLocal(): boolean;
|
|
442
|
-
runningInConsole(): boolean;
|
|
443
|
-
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
444
|
-
setRunningInConsole(value?: boolean): void;
|
|
445
|
-
runningUnitTests(): boolean;
|
|
446
|
-
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
447
|
-
register(provider: ServiceProvider$s | ServiceProviderClass$9): Promise<ServiceProvider$s>;
|
|
448
|
-
getProviders(): ServiceProvider$s[];
|
|
449
|
-
boot(): Promise<void>;
|
|
450
|
-
isBooted(): boolean;
|
|
451
|
-
booting(callback: (app: Application$b) => void | Promise<void>): void;
|
|
452
|
-
booted(callback: (app: Application$b) => void | Promise<void>): void;
|
|
453
|
-
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
454
|
-
handle(request: Request): Promise<Response>;
|
|
455
|
-
/** Register a callback that terminate() runs, in registration order. */
|
|
456
|
-
terminating(callback: () => void | Promise<void>): void;
|
|
457
|
-
terminate(): Promise<void>;
|
|
458
|
-
}
|
|
459
|
-
declare const Application$b: Token$j<Application$b>;
|
|
460
|
-
/** The object passed to Application.configure().withExceptions(e => …), like Laravel's Exceptions class. */
|
|
461
|
-
interface ExceptionsConfigurator$1 {
|
|
462
|
-
/** Custom reporting. Return false to stop the default logging. */
|
|
463
|
-
report(callback: (error: unknown) => void | boolean | Promise<void | boolean>): this;
|
|
464
|
-
/** Custom rendering. Return undefined to fall through to the default rendering. */
|
|
465
|
-
render(callback: (error: unknown, request: unknown) => Response | undefined | Promise<Response | undefined>): this;
|
|
466
|
-
/** Never report errors of these classes. */
|
|
467
|
-
dontReport(...classes: Array<abstract new (...args: never[]) => Error>): this;
|
|
468
|
-
}
|
|
469
|
-
interface Htmlable$1 {
|
|
470
|
-
toHtml(): string;
|
|
471
|
-
}
|
|
472
|
-
|
|
473
427
|
/** The session of the current request (scoped). Loaded and saved by the StartSession middleware. */
|
|
474
428
|
interface Session$6 {
|
|
475
429
|
getId(): string;
|
|
@@ -532,6 +486,8 @@ interface HttpRequest$6 {
|
|
|
532
486
|
header(name: string, defaultValue: string): string;
|
|
533
487
|
bearerToken(): string | undefined;
|
|
534
488
|
ip(): string | undefined;
|
|
489
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
490
|
+
content(): string;
|
|
535
491
|
expectsJson(): boolean;
|
|
536
492
|
ajax(): boolean;
|
|
537
493
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -591,6 +547,61 @@ interface HttpKernel$1 {
|
|
|
591
547
|
}
|
|
592
548
|
declare const HttpKernel$1: Token$j<HttpKernel$1>;
|
|
593
549
|
|
|
550
|
+
interface ServiceProvider$s {
|
|
551
|
+
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
552
|
+
register?(): void;
|
|
553
|
+
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
554
|
+
boot?(): void | Promise<void>;
|
|
555
|
+
}
|
|
556
|
+
type ServiceProviderClass$9 = new (app: Application$b) => ServiceProvider$s;
|
|
557
|
+
interface Application$b extends Container$i {
|
|
558
|
+
readonly version: string;
|
|
559
|
+
basePath(path?: string): string;
|
|
560
|
+
appPath(path?: string): string;
|
|
561
|
+
bootstrapPath(path?: string): string;
|
|
562
|
+
configPath(path?: string): string;
|
|
563
|
+
databasePath(path?: string): string;
|
|
564
|
+
publicPath(path?: string): string;
|
|
565
|
+
resourcePath(path?: string): string;
|
|
566
|
+
storagePath(path?: string): string;
|
|
567
|
+
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
568
|
+
environment(): string;
|
|
569
|
+
environment(...environments: string[]): boolean;
|
|
570
|
+
isProduction(): boolean;
|
|
571
|
+
isLocal(): boolean;
|
|
572
|
+
runningInConsole(): boolean;
|
|
573
|
+
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
574
|
+
setRunningInConsole(value?: boolean): void;
|
|
575
|
+
runningUnitTests(): boolean;
|
|
576
|
+
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
577
|
+
register(provider: ServiceProvider$s | ServiceProviderClass$9): Promise<ServiceProvider$s>;
|
|
578
|
+
getProviders(): ServiceProvider$s[];
|
|
579
|
+
boot(): Promise<void>;
|
|
580
|
+
isBooted(): boolean;
|
|
581
|
+
booting(callback: (app: Application$b) => void | Promise<void>): void;
|
|
582
|
+
booted(callback: (app: Application$b) => void | Promise<void>): void;
|
|
583
|
+
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
584
|
+
handle(request: Request): Promise<Response>;
|
|
585
|
+
/** Register a callback that terminate() runs, in registration order. */
|
|
586
|
+
terminating(callback: () => void | Promise<void>): void;
|
|
587
|
+
terminate(): Promise<void>;
|
|
588
|
+
}
|
|
589
|
+
declare const Application$b: Token$j<Application$b>;
|
|
590
|
+
/** The object passed to Application.configure().withExceptions(e => …), like Laravel's Exceptions class. */
|
|
591
|
+
interface ExceptionsConfigurator$1 {
|
|
592
|
+
/** Custom reporting. Return false to stop the default logging. */
|
|
593
|
+
report(callback: (error: unknown) => void | boolean | Promise<void | boolean>): this;
|
|
594
|
+
/** Custom rendering. Return undefined to fall through to the default rendering. */
|
|
595
|
+
render(callback: (error: unknown, request: unknown) => Response | undefined | Promise<Response | undefined>): this;
|
|
596
|
+
/** Never report errors of these classes. */
|
|
597
|
+
dontReport(...classes: Array<abstract new (...args: never[]) => Error>): this;
|
|
598
|
+
/** Render errors as JSON when the callback returns true, whatever the Accept header. */
|
|
599
|
+
shouldRenderJsonWhen(callback: (request: HttpRequest$6, error: unknown) => boolean): this;
|
|
600
|
+
}
|
|
601
|
+
interface Htmlable$1 {
|
|
602
|
+
toHtml(): string;
|
|
603
|
+
}
|
|
604
|
+
|
|
594
605
|
type ErrorKind$j = 'Http' | 'Server' | 'ModelNotFound' | 'Validation' | 'Authentication' | 'Authorization' | 'TokenMismatch' | 'BindingResolution' | 'CircularDependency' | 'ContainerNotAvailable';
|
|
595
606
|
/** Every error thrown by the framework implements this. The exception handler switches on `kind`. */
|
|
596
607
|
interface OrielError$j extends Error {
|
|
@@ -640,8 +651,9 @@ declare class Container$h implements Container$k {
|
|
|
640
651
|
}
|
|
641
652
|
|
|
642
653
|
interface RoutingOptions {
|
|
643
|
-
web
|
|
644
|
-
|
|
654
|
+
/** One route file or several, loaded in order: web: ['routes/web.ts', 'routes/settings.ts', 'routes/auth.ts']. */
|
|
655
|
+
web?: string | string[];
|
|
656
|
+
api?: string | string[];
|
|
645
657
|
console?: string;
|
|
646
658
|
/** A URI such as '/up', not a file. */
|
|
647
659
|
health?: string;
|
|
@@ -667,7 +679,7 @@ declare class ApplicationBuilder {
|
|
|
667
679
|
type LifecycleCallback = (app: Application$b) => void | Promise<void>;
|
|
668
680
|
declare class Application$a extends Container$h implements Application$b {
|
|
669
681
|
private readonly base;
|
|
670
|
-
readonly version = "0.1.0-alpha.
|
|
682
|
+
readonly version = "0.1.0-alpha.5";
|
|
671
683
|
private readonly providers;
|
|
672
684
|
private readonly bootingCallbacks;
|
|
673
685
|
private readonly bootedCallbacks;
|
|
@@ -865,6 +877,11 @@ interface OrielError$i extends Error {
|
|
|
865
877
|
|
|
866
878
|
/** Options a job class may declare as public fields. Their presence (or implementing ShouldQueue) makes things queueable. */
|
|
867
879
|
interface ShouldQueue$5 {
|
|
880
|
+
/**
|
|
881
|
+
* Marks the class as queued at run time: `implements ShouldQueue` leaves no trace once compiled, so the interface
|
|
882
|
+
* asks for `readonly shouldQueue = true`. Jobs, listeners, mailables and notifications carrying it are queued.
|
|
883
|
+
*/
|
|
884
|
+
readonly shouldQueue: true;
|
|
868
885
|
connection?: string;
|
|
869
886
|
queue?: string;
|
|
870
887
|
/** Seconds. */
|
|
@@ -1000,7 +1017,8 @@ declare class MailMessage {
|
|
|
1000
1017
|
introLines: string[];
|
|
1001
1018
|
actionData?: MailMessageAction;
|
|
1002
1019
|
outroLines: string[];
|
|
1003
|
-
|
|
1020
|
+
/** Unset: "Regards," and config('app.name'), as Laravel's template. */
|
|
1021
|
+
salutationLine?: string;
|
|
1004
1022
|
toAddresses: MailRecipient$1[];
|
|
1005
1023
|
ccAddresses: MailRecipient$1[];
|
|
1006
1024
|
bccAddresses: MailRecipient$1[];
|
|
@@ -1042,18 +1060,11 @@ declare class MailNotificationChannel implements NotificationChannel {
|
|
|
1042
1060
|
}
|
|
1043
1061
|
|
|
1044
1062
|
declare const NOTIFICATIONS_TABLE = "notifications";
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
readonly updatedAt: Date;
|
|
1051
|
-
readAt: Date | undefined;
|
|
1052
|
-
markAsRead(): Promise<void>;
|
|
1053
|
-
markAsUnread(): Promise<void>;
|
|
1054
|
-
}
|
|
1055
|
-
/** notifiable_type + notifiable_id together, never id alone. */
|
|
1056
|
-
declare function fetchNotifications(notifiableType: string, notifiableId: unknown, filter?: 'all' | 'read' | 'unread'): Promise<DatabaseNotificationRecord[]>;
|
|
1063
|
+
/**
|
|
1064
|
+
* Laravel's DatabaseChannel: one row in `notifications` per notifiable, with what toDatabase() (or toArray())
|
|
1065
|
+
* returns as JSON. The row is keyed as `user.notifications()` reads it: `notifiable_type` is the model's morph class
|
|
1066
|
+
* (its morph map alias, else its class name) and it goes to the model's own connection.
|
|
1067
|
+
*/
|
|
1057
1068
|
declare class DatabaseNotificationChannel implements NotificationChannel {
|
|
1058
1069
|
send(notifiable: Notifiable$2, notification: Notification$3): Promise<void>;
|
|
1059
1070
|
}
|
|
@@ -1129,19 +1140,17 @@ declare class SendQueuedNotifications implements Job$5 {
|
|
|
1129
1140
|
|
|
1130
1141
|
type NotifiableConstructor = new (...args: any[]) => object;
|
|
1131
1142
|
/**
|
|
1132
|
-
*
|
|
1133
|
-
*
|
|
1134
|
-
*
|
|
1135
|
-
* (
|
|
1143
|
+
* Laravel's RoutesNotifications trait: `notify()`, `notifyNow()` and `routeNotificationFor()`. Apps use
|
|
1144
|
+
* `Notifiable` from '@orieljs/framework', which adds the database notifications relations. Custom routing per
|
|
1145
|
+
* channel follows Laravel's order: a `routeNotificationFor<Channel>()` method (Studly name) wins if present, else
|
|
1146
|
+
* 'mail' reads `email`/`getAttribute('email')`, 'database' returns the instance itself (the database channel derives
|
|
1147
|
+
* the row from it), and anything else is unrouted (`undefined`).
|
|
1136
1148
|
*/
|
|
1137
|
-
declare function
|
|
1149
|
+
declare function RoutesNotifications<TBase extends NotifiableConstructor>(Base: TBase): {
|
|
1138
1150
|
new (...args: any[]): {
|
|
1139
1151
|
routeNotificationFor(channel: string, notification: Notification$3): unknown;
|
|
1140
1152
|
notify(notification: Notification$3): Promise<void>;
|
|
1141
1153
|
notifyNow(notification: Notification$3, channels?: string[]): Promise<void>;
|
|
1142
|
-
notifications(): Promise<DatabaseNotificationRecord[]>;
|
|
1143
|
-
unreadNotifications(): Promise<DatabaseNotificationRecord[]>;
|
|
1144
|
-
readNotifications(): Promise<DatabaseNotificationRecord[]>;
|
|
1145
1154
|
};
|
|
1146
1155
|
} & TBase;
|
|
1147
1156
|
|
|
@@ -1385,47 +1394,6 @@ interface Container$e {
|
|
|
1385
1394
|
}
|
|
1386
1395
|
declare const Container$e: Token$e<Container$e>;
|
|
1387
1396
|
|
|
1388
|
-
interface ServiceProvider$p {
|
|
1389
|
-
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
1390
|
-
register?(): void;
|
|
1391
|
-
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
1392
|
-
boot?(): void | Promise<void>;
|
|
1393
|
-
}
|
|
1394
|
-
type ServiceProviderClass$7 = new (app: Application$7) => ServiceProvider$p;
|
|
1395
|
-
interface Application$7 extends Container$e {
|
|
1396
|
-
readonly version: string;
|
|
1397
|
-
basePath(path?: string): string;
|
|
1398
|
-
appPath(path?: string): string;
|
|
1399
|
-
bootstrapPath(path?: string): string;
|
|
1400
|
-
configPath(path?: string): string;
|
|
1401
|
-
databasePath(path?: string): string;
|
|
1402
|
-
publicPath(path?: string): string;
|
|
1403
|
-
resourcePath(path?: string): string;
|
|
1404
|
-
storagePath(path?: string): string;
|
|
1405
|
-
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
1406
|
-
environment(): string;
|
|
1407
|
-
environment(...environments: string[]): boolean;
|
|
1408
|
-
isProduction(): boolean;
|
|
1409
|
-
isLocal(): boolean;
|
|
1410
|
-
runningInConsole(): boolean;
|
|
1411
|
-
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
1412
|
-
setRunningInConsole(value?: boolean): void;
|
|
1413
|
-
runningUnitTests(): boolean;
|
|
1414
|
-
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
1415
|
-
register(provider: ServiceProvider$p | ServiceProviderClass$7): Promise<ServiceProvider$p>;
|
|
1416
|
-
getProviders(): ServiceProvider$p[];
|
|
1417
|
-
boot(): Promise<void>;
|
|
1418
|
-
isBooted(): boolean;
|
|
1419
|
-
booting(callback: (app: Application$7) => void | Promise<void>): void;
|
|
1420
|
-
booted(callback: (app: Application$7) => void | Promise<void>): void;
|
|
1421
|
-
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
1422
|
-
handle(request: Request): Promise<Response>;
|
|
1423
|
-
/** Register a callback that terminate() runs, in registration order. */
|
|
1424
|
-
terminating(callback: () => void | Promise<void>): void;
|
|
1425
|
-
terminate(): Promise<void>;
|
|
1426
|
-
}
|
|
1427
|
-
declare const Application$7: Token$j<Application$7>;
|
|
1428
|
-
|
|
1429
1397
|
/** The session of the current request (scoped). Loaded and saved by the StartSession middleware. */
|
|
1430
1398
|
interface Session$5 {
|
|
1431
1399
|
getId(): string;
|
|
@@ -1488,6 +1456,8 @@ interface HttpRequest$5 {
|
|
|
1488
1456
|
header(name: string, defaultValue: string): string;
|
|
1489
1457
|
bearerToken(): string | undefined;
|
|
1490
1458
|
ip(): string | undefined;
|
|
1459
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
1460
|
+
content(): string;
|
|
1491
1461
|
expectsJson(): boolean;
|
|
1492
1462
|
ajax(): boolean;
|
|
1493
1463
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -1521,6 +1491,47 @@ interface Middleware$5 {
|
|
|
1521
1491
|
}
|
|
1522
1492
|
type MiddlewareClass$1 = new (...args: any[]) => Middleware$5;
|
|
1523
1493
|
|
|
1494
|
+
interface ServiceProvider$p {
|
|
1495
|
+
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
1496
|
+
register?(): void;
|
|
1497
|
+
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
1498
|
+
boot?(): void | Promise<void>;
|
|
1499
|
+
}
|
|
1500
|
+
type ServiceProviderClass$7 = new (app: Application$7) => ServiceProvider$p;
|
|
1501
|
+
interface Application$7 extends Container$e {
|
|
1502
|
+
readonly version: string;
|
|
1503
|
+
basePath(path?: string): string;
|
|
1504
|
+
appPath(path?: string): string;
|
|
1505
|
+
bootstrapPath(path?: string): string;
|
|
1506
|
+
configPath(path?: string): string;
|
|
1507
|
+
databasePath(path?: string): string;
|
|
1508
|
+
publicPath(path?: string): string;
|
|
1509
|
+
resourcePath(path?: string): string;
|
|
1510
|
+
storagePath(path?: string): string;
|
|
1511
|
+
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
1512
|
+
environment(): string;
|
|
1513
|
+
environment(...environments: string[]): boolean;
|
|
1514
|
+
isProduction(): boolean;
|
|
1515
|
+
isLocal(): boolean;
|
|
1516
|
+
runningInConsole(): boolean;
|
|
1517
|
+
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
1518
|
+
setRunningInConsole(value?: boolean): void;
|
|
1519
|
+
runningUnitTests(): boolean;
|
|
1520
|
+
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
1521
|
+
register(provider: ServiceProvider$p | ServiceProviderClass$7): Promise<ServiceProvider$p>;
|
|
1522
|
+
getProviders(): ServiceProvider$p[];
|
|
1523
|
+
boot(): Promise<void>;
|
|
1524
|
+
isBooted(): boolean;
|
|
1525
|
+
booting(callback: (app: Application$7) => void | Promise<void>): void;
|
|
1526
|
+
booted(callback: (app: Application$7) => void | Promise<void>): void;
|
|
1527
|
+
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
1528
|
+
handle(request: Request): Promise<Response>;
|
|
1529
|
+
/** Register a callback that terminate() runs, in registration order. */
|
|
1530
|
+
terminating(callback: () => void | Promise<void>): void;
|
|
1531
|
+
terminate(): Promise<void>;
|
|
1532
|
+
}
|
|
1533
|
+
declare const Application$7: Token$j<Application$7>;
|
|
1534
|
+
|
|
1524
1535
|
/** Public method names of a controller (excludes non-function members). */
|
|
1525
1536
|
type ActionMethods$1<C> = {
|
|
1526
1537
|
[K in keyof C]: C[K] extends (...args: any[]) => unknown ? K : never;
|
|
@@ -1538,7 +1549,7 @@ interface Route$2 {
|
|
|
1538
1549
|
readonly uri: string;
|
|
1539
1550
|
getName(): string | undefined;
|
|
1540
1551
|
name(name: string): this;
|
|
1541
|
-
middleware(...middleware: MiddlewareReference$1[]): this;
|
|
1552
|
+
middleware(...middleware: Array<MiddlewareReference$1 | readonly MiddlewareReference$1[]>): this;
|
|
1542
1553
|
withoutMiddleware(...middleware: MiddlewareReference$1[]): this;
|
|
1543
1554
|
where(parameter: string, pattern: string): this;
|
|
1544
1555
|
where(patterns: Record<string, string>): this;
|
|
@@ -1546,7 +1557,7 @@ interface Route$2 {
|
|
|
1546
1557
|
interface RouteRegistrar$1 {
|
|
1547
1558
|
prefix(prefix: string): RouteRegistrar$1;
|
|
1548
1559
|
name(prefix: string): RouteRegistrar$1;
|
|
1549
|
-
middleware(...middleware: MiddlewareReference$1[]): RouteRegistrar$1;
|
|
1560
|
+
middleware(...middleware: Array<MiddlewareReference$1 | readonly MiddlewareReference$1[]>): RouteRegistrar$1;
|
|
1550
1561
|
controller(controller: Class$e<unknown>): RouteRegistrar$1;
|
|
1551
1562
|
group(routes: () => void | Promise<void>): Promise<void>;
|
|
1552
1563
|
}
|
|
@@ -1574,7 +1585,7 @@ interface Router$1 {
|
|
|
1574
1585
|
fallback(action: RouteAction$1): Route$2;
|
|
1575
1586
|
prefix(prefix: string): RouteRegistrar$1;
|
|
1576
1587
|
name(prefix: string): RouteRegistrar$1;
|
|
1577
|
-
middleware(...middleware: MiddlewareReference$1[]): RouteRegistrar$1;
|
|
1588
|
+
middleware(...middleware: Array<MiddlewareReference$1 | readonly MiddlewareReference$1[]>): RouteRegistrar$1;
|
|
1578
1589
|
controller(controller: Class$e<unknown>): RouteRegistrar$1;
|
|
1579
1590
|
/** Explicit model binding: Route.model('author', User). */
|
|
1580
1591
|
model(parameter: string, model: Class$e<unknown>): void;
|
|
@@ -1601,6 +1612,12 @@ interface UrlGenerator$1 {
|
|
|
1601
1612
|
current(): string;
|
|
1602
1613
|
previous(fallback?: string): string;
|
|
1603
1614
|
hasRoute(name: string): boolean;
|
|
1615
|
+
/** A URL to a named route with a `signature` query (HMAC-SHA256 keyed by APP_KEY); `expiration` adds `expires`. */
|
|
1616
|
+
signedRoute(name: string, parameters?: unknown, expiration?: Date | number, absolute?: boolean): string;
|
|
1617
|
+
/** signedRoute() that expires: a Date, or seconds from now. */
|
|
1618
|
+
temporarySignedRoute(name: string, expiration: Date | number, parameters?: unknown, absolute?: boolean): string;
|
|
1619
|
+
/** Whether the request URL carries a valid, unexpired signature (`absolute: false` signs the path only). */
|
|
1620
|
+
hasValidSignature(request: HttpRequest$5, absolute?: boolean): boolean;
|
|
1604
1621
|
}
|
|
1605
1622
|
declare const UrlGenerator$1: Token$j<UrlGenerator$1>;
|
|
1606
1623
|
|
|
@@ -1670,7 +1687,8 @@ declare class RouteDefinition implements Route$2 {
|
|
|
1670
1687
|
getName(): string | undefined;
|
|
1671
1688
|
/** Appends, like Laravel's $action['as'] .= $name. */
|
|
1672
1689
|
name(name: string): this;
|
|
1673
|
-
middleware(
|
|
1690
|
+
/** middleware('auth', 'verified') or middleware(['auth', 'verified']). */
|
|
1691
|
+
middleware(...middleware: Array<MiddlewareReference$1 | readonly MiddlewareReference$1[]>): this;
|
|
1674
1692
|
withoutMiddleware(...middleware: MiddlewareReference$1[]): this;
|
|
1675
1693
|
where(parameter: string | Record<string, string>, pattern?: string): this;
|
|
1676
1694
|
gatherMiddleware(): MiddlewareReference$1[];
|
|
@@ -1710,7 +1728,7 @@ declare class GroupRegistrar implements RouteRegistrar$1 {
|
|
|
1710
1728
|
constructor(router: GroupHost);
|
|
1711
1729
|
prefix(prefix: string): this;
|
|
1712
1730
|
name(prefix: string): this;
|
|
1713
|
-
middleware(...middleware: MiddlewareReference$1[]): this;
|
|
1731
|
+
middleware(...middleware: Array<MiddlewareReference$1 | readonly MiddlewareReference$1[]>): this;
|
|
1714
1732
|
controller(controller: Class$e<unknown>): this;
|
|
1715
1733
|
group(routes: () => void | Promise<void>): Promise<void>;
|
|
1716
1734
|
get<C>(uri: string, action: ControllerAction$1<C> | RouteClosure$1 | InvokableClass$1 | string): RouteDefinition;
|
|
@@ -1760,7 +1778,7 @@ declare class BaseRouter implements Router$1 {
|
|
|
1760
1778
|
fallback(action: RouteAction$1): RouteDefinition;
|
|
1761
1779
|
prefix(prefix: string): GroupRegistrar;
|
|
1762
1780
|
name(prefix: string): GroupRegistrar;
|
|
1763
|
-
middleware(...middleware: MiddlewareReference$1[]): GroupRegistrar;
|
|
1781
|
+
middleware(...middleware: Array<MiddlewareReference$1 | readonly MiddlewareReference$1[]>): GroupRegistrar;
|
|
1764
1782
|
controller(controller: Class$e<unknown>): GroupRegistrar;
|
|
1765
1783
|
/**
|
|
1766
1784
|
* Laravel's Route::group(attributes, callback). A synchronous callback's attributes are popped before this
|
|
@@ -1776,6 +1794,12 @@ declare class BaseRouter implements Router$1 {
|
|
|
1776
1794
|
getPatternVersion(): number;
|
|
1777
1795
|
getBinder(parameter: string): RouteBinder | undefined;
|
|
1778
1796
|
getModel(parameter: string): Class$e<unknown> | undefined;
|
|
1797
|
+
/**
|
|
1798
|
+
* Binds a matched route's raw parameter values as a request to it would: Route.bind() callbacks, Route.model(),
|
|
1799
|
+
* then implicit binding through the RouteModelResolver of `container`. A missing model throws
|
|
1800
|
+
* RouteModelNotFoundError (404). Live uses it to check a page route's `can:` middleware again on each update.
|
|
1801
|
+
*/
|
|
1802
|
+
substituteBindings(route: RouteDefinition, values: Readonly<Record<string, string | undefined>>, container: Container$e): Promise<Record<string, unknown>>;
|
|
1779
1803
|
aliasMiddleware(name: string, middleware: MiddlewareClass$1): this;
|
|
1780
1804
|
/** The middleware aliases (Laravel's Router::getMiddleware()). */
|
|
1781
1805
|
getMiddleware(): Record<string, MiddlewareClass$1>;
|
|
@@ -1820,6 +1844,20 @@ declare class BaseUrlGenerator implements UrlGenerator$1 {
|
|
|
1820
1844
|
/** The Referer header, then the session's previous URL, then `fallback`, then the root (Laravel's order). */
|
|
1821
1845
|
previous(fallback?: string): string;
|
|
1822
1846
|
hasRoute(name: string): boolean;
|
|
1847
|
+
/**
|
|
1848
|
+
* Laravel's URL::signedRoute(): the route URL with its parameters sorted by name, then a `signature` query (the
|
|
1849
|
+
* HMAC-SHA256 of that URL, keyed by APP_KEY). `expiration` (a Date, or seconds from now) adds `expires`.
|
|
1850
|
+
* `absolute: false` signs the path only (checked by `signed:relative`).
|
|
1851
|
+
*/
|
|
1852
|
+
signedRoute(name: string, parameters?: unknown, expiration?: Date | number, absolute?: boolean): string;
|
|
1853
|
+
/** Laravel's URL::temporarySignedRoute(): a signed URL that expires at `expiration` (a Date, or seconds from now). */
|
|
1854
|
+
temporarySignedRoute(name: string, expiration: Date | number, parameters?: unknown, absolute?: boolean): string;
|
|
1855
|
+
/** The request URL carries a correct signature (current or previous APP_KEY) that hasn't expired. */
|
|
1856
|
+
hasValidSignature(request: HttpRequest$5, absolute?: boolean): boolean;
|
|
1857
|
+
/** The signature matches the URL without its `signature` query, in a constant-time comparison. */
|
|
1858
|
+
hasCorrectSignature(request: HttpRequest$5, absolute?: boolean): boolean;
|
|
1859
|
+
/** No `expires` query, or one that is still in the future. */
|
|
1860
|
+
signatureHasNotExpired(request: HttpRequest$5): boolean;
|
|
1823
1861
|
}
|
|
1824
1862
|
|
|
1825
1863
|
/** A middleware reference after alias and group expansion: 'throttle:60,1' → { cls: Throttle, parameters: ['60', '1'] }. */
|
|
@@ -1934,6 +1972,21 @@ declare class RoutingError extends Error implements OrielError$g {
|
|
|
1934
1972
|
readonly status = 500;
|
|
1935
1973
|
readonly name = "RoutingError";
|
|
1936
1974
|
}
|
|
1975
|
+
/** A signed URL whose signature is missing, wrong or expired (Laravel's InvalidSignatureException). */
|
|
1976
|
+
declare class InvalidUrlSignatureError extends Error implements OrielError$g {
|
|
1977
|
+
readonly kind: "Http";
|
|
1978
|
+
readonly status = 403;
|
|
1979
|
+
readonly name = "InvalidUrlSignatureError";
|
|
1980
|
+
constructor();
|
|
1981
|
+
}
|
|
1982
|
+
/** Too many requests in the window (Laravel's ThrottleRequestsException): 429 with Retry-After and X-RateLimit-*. */
|
|
1983
|
+
declare class ThrottleRequestsError extends Error implements OrielError$g {
|
|
1984
|
+
readonly headers: Record<string, string>;
|
|
1985
|
+
readonly kind: "Http";
|
|
1986
|
+
readonly status = 429;
|
|
1987
|
+
readonly name = "ThrottleRequestsError";
|
|
1988
|
+
constructor(headers?: Record<string, string>);
|
|
1989
|
+
}
|
|
1937
1990
|
|
|
1938
1991
|
type ResourceMethod = 'index' | 'create' | 'store' | 'show' | 'edit' | 'update' | 'destroy';
|
|
1939
1992
|
interface ResourceRoute {
|
|
@@ -1957,6 +2010,29 @@ declare function toResponse(request: unknown, value: unknown): Promise<Response>
|
|
|
1957
2010
|
*/
|
|
1958
2011
|
declare const Route$1: Facade$a<BaseRouter, object>;
|
|
1959
2012
|
|
|
2013
|
+
/**
|
|
2014
|
+
* Dispatched by the health route (`/up`) on every request (Laravel's DiagnosingHealth event). A listener checks
|
|
2015
|
+
* something the application needs, such as the database or the cache, and throws when it fails: `/up` then answers
|
|
2016
|
+
* 500 with "Application experiencing problems", and the exception is reported.
|
|
2017
|
+
*
|
|
2018
|
+
* Event.listen(DiagnosingHealth, async () => { await DB.select('select 1') })
|
|
2019
|
+
*/
|
|
2020
|
+
declare class DiagnosingHealth {
|
|
2021
|
+
}
|
|
2022
|
+
interface HealthPage {
|
|
2023
|
+
/** False when a check failed: the page says so and the status is 500 (default true). */
|
|
2024
|
+
healthy?: boolean;
|
|
2025
|
+
/** How long the request took, shown when given. */
|
|
2026
|
+
milliseconds?: number;
|
|
2027
|
+
/** The page title (default "Oriel"). */
|
|
2028
|
+
appName?: string;
|
|
2029
|
+
}
|
|
2030
|
+
/**
|
|
2031
|
+
* The health route's page (Laravel's health-up view): "Application up", or "Application experiencing problems" with
|
|
2032
|
+
* status 500. Self-contained HTML with inline CSS: it loads nothing, so it answers even when the assets don't.
|
|
2033
|
+
*/
|
|
2034
|
+
declare function healthResponse(page?: HealthPage): Response;
|
|
2035
|
+
|
|
1960
2036
|
/** A route file may export a function instead of (or as well as) calling the Route facade at the top level. */
|
|
1961
2037
|
type RouteFileCallback = (router: Router$1) => void | Promise<void>;
|
|
1962
2038
|
/**
|
|
@@ -1965,15 +2041,15 @@ type RouteFileCallback = (router: Router$1) => void | Promise<void>;
|
|
|
1965
2041
|
* A default export that is a function is called with the router.
|
|
1966
2042
|
*/
|
|
1967
2043
|
declare function loadRoutesFrom(app: Application$7, router: Router$1, file: string): Promise<void>;
|
|
1968
|
-
/** The health route's page (Laravel's `/up`): 200 as long as the application boots and handles requests. */
|
|
1969
|
-
declare function healthResponse(): Response;
|
|
1970
2044
|
|
|
1971
2045
|
/**
|
|
1972
|
-
* Binds the Router and the UrlGenerator,
|
|
1973
|
-
*
|
|
1974
|
-
* (Laravel's
|
|
2046
|
+
* Binds the Router and the UrlGenerator, registers the `signed` and `throttle` middleware, and once the app has booted
|
|
2047
|
+
* loads the files given to withRouting(): the health URI (which dispatches DiagnosingHealth), then the web files in the
|
|
2048
|
+
* `web` middleware group, then the api files under the api prefix in the `api` group (Laravel's
|
|
2049
|
+
* ApplicationBuilder::withRouting).
|
|
1975
2050
|
*/
|
|
1976
2051
|
declare class RoutingServiceProvider extends ServiceProvider$o {
|
|
2052
|
+
#private;
|
|
1977
2053
|
register(): void;
|
|
1978
2054
|
/**
|
|
1979
2055
|
* The files load in a booted() callback, after every provider's boot() (Laravel's withRouting does the same), so
|
|
@@ -1983,6 +2059,25 @@ declare class RoutingServiceProvider extends ServiceProvider$o {
|
|
|
1983
2059
|
boot(): void;
|
|
1984
2060
|
}
|
|
1985
2061
|
|
|
2062
|
+
/**
|
|
2063
|
+
* Laravel's ThrottleRequests (`throttle:<maxAttempts>,<decayMinutes>[,<prefix>]`): counts the client's requests
|
|
2064
|
+
* (the signed-in user, else the IP) in a window and answers 429 once there are too many. Responses carry
|
|
2065
|
+
* X-RateLimit-Limit and X-RateLimit-Remaining; the 429 adds Retry-After and X-RateLimit-Reset.
|
|
2066
|
+
*/
|
|
2067
|
+
declare class ThrottleRequests implements Middleware$5 {
|
|
2068
|
+
handle(request: HttpRequest$5, next: Next$6, maxAttempts?: string, decayMinutes?: string, prefix?: string): Promise<Response>;
|
|
2069
|
+
/** The signed-in user's identifier, else the client IP, hashed (Laravel's resolveRequestSignature()). */
|
|
2070
|
+
protected resolveRequestSignature(request: HttpRequest$5): string;
|
|
2071
|
+
}
|
|
2072
|
+
|
|
2073
|
+
/**
|
|
2074
|
+
* Laravel's ValidateSignature (`signed`, `signed:relative`): the request URL must carry a valid, unexpired
|
|
2075
|
+
* signature from URL.signedRoute()/temporarySignedRoute(), else 403. `relative` checks a path-only signature.
|
|
2076
|
+
*/
|
|
2077
|
+
declare class ValidateSignature implements Middleware$5 {
|
|
2078
|
+
handle(request: HttpRequest$5, next: Next$6, ...parameters: string[]): Promise<Response>;
|
|
2079
|
+
}
|
|
2080
|
+
|
|
1986
2081
|
/** A typed, runtime-unique key for container bindings. */
|
|
1987
2082
|
interface Token$d<T> {
|
|
1988
2083
|
readonly id: symbol;
|
|
@@ -2019,78 +2114,6 @@ interface Container$d {
|
|
|
2019
2114
|
}
|
|
2020
2115
|
declare const Container$d: Token$d<Container$d>;
|
|
2021
2116
|
|
|
2022
|
-
interface ServiceProvider$n {
|
|
2023
|
-
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
2024
|
-
register?(): void;
|
|
2025
|
-
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
2026
|
-
boot?(): void | Promise<void>;
|
|
2027
|
-
}
|
|
2028
|
-
type ServiceProviderClass$6 = new (app: Application$6) => ServiceProvider$n;
|
|
2029
|
-
interface Application$6 extends Container$d {
|
|
2030
|
-
readonly version: string;
|
|
2031
|
-
basePath(path?: string): string;
|
|
2032
|
-
appPath(path?: string): string;
|
|
2033
|
-
bootstrapPath(path?: string): string;
|
|
2034
|
-
configPath(path?: string): string;
|
|
2035
|
-
databasePath(path?: string): string;
|
|
2036
|
-
publicPath(path?: string): string;
|
|
2037
|
-
resourcePath(path?: string): string;
|
|
2038
|
-
storagePath(path?: string): string;
|
|
2039
|
-
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
2040
|
-
environment(): string;
|
|
2041
|
-
environment(...environments: string[]): boolean;
|
|
2042
|
-
isProduction(): boolean;
|
|
2043
|
-
isLocal(): boolean;
|
|
2044
|
-
runningInConsole(): boolean;
|
|
2045
|
-
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
2046
|
-
setRunningInConsole(value?: boolean): void;
|
|
2047
|
-
runningUnitTests(): boolean;
|
|
2048
|
-
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
2049
|
-
register(provider: ServiceProvider$n | ServiceProviderClass$6): Promise<ServiceProvider$n>;
|
|
2050
|
-
getProviders(): ServiceProvider$n[];
|
|
2051
|
-
boot(): Promise<void>;
|
|
2052
|
-
isBooted(): boolean;
|
|
2053
|
-
booting(callback: (app: Application$6) => void | Promise<void>): void;
|
|
2054
|
-
booted(callback: (app: Application$6) => void | Promise<void>): void;
|
|
2055
|
-
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
2056
|
-
handle(request: Request): Promise<Response>;
|
|
2057
|
-
/** Register a callback that terminate() runs, in registration order. */
|
|
2058
|
-
terminating(callback: () => void | Promise<void>): void;
|
|
2059
|
-
terminate(): Promise<void>;
|
|
2060
|
-
}
|
|
2061
|
-
declare const Application$6: Token$j<Application$6>;
|
|
2062
|
-
interface ExceptionHandler {
|
|
2063
|
-
report(error: unknown): Promise<void>;
|
|
2064
|
-
shouldReport(error: unknown): boolean;
|
|
2065
|
-
/** `request` is the scoped HttpRequest (Contracts/Http) when available, else the raw Request. */
|
|
2066
|
-
render(request: unknown, error: unknown): Promise<Response>;
|
|
2067
|
-
}
|
|
2068
|
-
declare const ExceptionHandler: Token$j<ExceptionHandler>;
|
|
2069
|
-
/** The object passed to Application.configure().withExceptions(e => …), like Laravel's Exceptions class. */
|
|
2070
|
-
interface ExceptionsConfigurator {
|
|
2071
|
-
/** Custom reporting. Return false to stop the default logging. */
|
|
2072
|
-
report(callback: (error: unknown) => void | boolean | Promise<void | boolean>): this;
|
|
2073
|
-
/** Custom rendering. Return undefined to fall through to the default rendering. */
|
|
2074
|
-
render(callback: (error: unknown, request: unknown) => Response | undefined | Promise<Response | undefined>): this;
|
|
2075
|
-
/** Never report errors of these classes. */
|
|
2076
|
-
dontReport(...classes: Array<abstract new (...args: never[]) => Error>): this;
|
|
2077
|
-
}
|
|
2078
|
-
|
|
2079
|
-
interface ConfigRepository$1 {
|
|
2080
|
-
has(key: string): boolean;
|
|
2081
|
-
/** Dot notation: get('database.connections.sqlite.database'). */
|
|
2082
|
-
get<T = unknown>(key: string, defaultValue?: T): T;
|
|
2083
|
-
set(key: string, value: unknown): void;
|
|
2084
|
-
set(values: Record<string, unknown>): void;
|
|
2085
|
-
push(key: string, value: unknown): void;
|
|
2086
|
-
all(): Record<string, unknown>;
|
|
2087
|
-
}
|
|
2088
|
-
declare const ConfigRepository$1: Token$j<ConfigRepository$1>;
|
|
2089
|
-
/** Anything a controller can return that knows how to become a Response. */
|
|
2090
|
-
interface Responsable$1 {
|
|
2091
|
-
toResponse(request: unknown): Response | Promise<Response>;
|
|
2092
|
-
}
|
|
2093
|
-
|
|
2094
2117
|
/** The session of the current request (scoped). Loaded and saved by the StartSession middleware. */
|
|
2095
2118
|
interface Session$4 {
|
|
2096
2119
|
getId(): string;
|
|
@@ -2157,6 +2180,8 @@ interface HttpRequest$4 {
|
|
|
2157
2180
|
header(name: string, defaultValue: string): string;
|
|
2158
2181
|
bearerToken(): string | undefined;
|
|
2159
2182
|
ip(): string | undefined;
|
|
2183
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
2184
|
+
content(): string;
|
|
2160
2185
|
expectsJson(): boolean;
|
|
2161
2186
|
ajax(): boolean;
|
|
2162
2187
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -2224,6 +2249,80 @@ interface ResponseFactory$1 {
|
|
|
2224
2249
|
}
|
|
2225
2250
|
declare const ResponseFactory$1: Token$j<ResponseFactory$1>;
|
|
2226
2251
|
|
|
2252
|
+
interface ServiceProvider$n {
|
|
2253
|
+
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
2254
|
+
register?(): void;
|
|
2255
|
+
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
2256
|
+
boot?(): void | Promise<void>;
|
|
2257
|
+
}
|
|
2258
|
+
type ServiceProviderClass$6 = new (app: Application$6) => ServiceProvider$n;
|
|
2259
|
+
interface Application$6 extends Container$d {
|
|
2260
|
+
readonly version: string;
|
|
2261
|
+
basePath(path?: string): string;
|
|
2262
|
+
appPath(path?: string): string;
|
|
2263
|
+
bootstrapPath(path?: string): string;
|
|
2264
|
+
configPath(path?: string): string;
|
|
2265
|
+
databasePath(path?: string): string;
|
|
2266
|
+
publicPath(path?: string): string;
|
|
2267
|
+
resourcePath(path?: string): string;
|
|
2268
|
+
storagePath(path?: string): string;
|
|
2269
|
+
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
2270
|
+
environment(): string;
|
|
2271
|
+
environment(...environments: string[]): boolean;
|
|
2272
|
+
isProduction(): boolean;
|
|
2273
|
+
isLocal(): boolean;
|
|
2274
|
+
runningInConsole(): boolean;
|
|
2275
|
+
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
2276
|
+
setRunningInConsole(value?: boolean): void;
|
|
2277
|
+
runningUnitTests(): boolean;
|
|
2278
|
+
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
2279
|
+
register(provider: ServiceProvider$n | ServiceProviderClass$6): Promise<ServiceProvider$n>;
|
|
2280
|
+
getProviders(): ServiceProvider$n[];
|
|
2281
|
+
boot(): Promise<void>;
|
|
2282
|
+
isBooted(): boolean;
|
|
2283
|
+
booting(callback: (app: Application$6) => void | Promise<void>): void;
|
|
2284
|
+
booted(callback: (app: Application$6) => void | Promise<void>): void;
|
|
2285
|
+
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
2286
|
+
handle(request: Request): Promise<Response>;
|
|
2287
|
+
/** Register a callback that terminate() runs, in registration order. */
|
|
2288
|
+
terminating(callback: () => void | Promise<void>): void;
|
|
2289
|
+
terminate(): Promise<void>;
|
|
2290
|
+
}
|
|
2291
|
+
declare const Application$6: Token$j<Application$6>;
|
|
2292
|
+
interface ExceptionHandler {
|
|
2293
|
+
report(error: unknown): Promise<void>;
|
|
2294
|
+
shouldReport(error: unknown): boolean;
|
|
2295
|
+
/** `request` is the scoped HttpRequest (Contracts/Http) when available, else the raw Request. */
|
|
2296
|
+
render(request: unknown, error: unknown): Promise<Response>;
|
|
2297
|
+
}
|
|
2298
|
+
declare const ExceptionHandler: Token$j<ExceptionHandler>;
|
|
2299
|
+
/** The object passed to Application.configure().withExceptions(e => …), like Laravel's Exceptions class. */
|
|
2300
|
+
interface ExceptionsConfigurator {
|
|
2301
|
+
/** Custom reporting. Return false to stop the default logging. */
|
|
2302
|
+
report(callback: (error: unknown) => void | boolean | Promise<void | boolean>): this;
|
|
2303
|
+
/** Custom rendering. Return undefined to fall through to the default rendering. */
|
|
2304
|
+
render(callback: (error: unknown, request: unknown) => Response | undefined | Promise<Response | undefined>): this;
|
|
2305
|
+
/** Never report errors of these classes. */
|
|
2306
|
+
dontReport(...classes: Array<abstract new (...args: never[]) => Error>): this;
|
|
2307
|
+
/** Render errors as JSON when the callback returns true, whatever the Accept header. */
|
|
2308
|
+
shouldRenderJsonWhen(callback: (request: HttpRequest$4, error: unknown) => boolean): this;
|
|
2309
|
+
}
|
|
2310
|
+
|
|
2311
|
+
interface ConfigRepository$1 {
|
|
2312
|
+
has(key: string): boolean;
|
|
2313
|
+
/** Dot notation: get('database.connections.sqlite.database'). */
|
|
2314
|
+
get<T = unknown>(key: string, defaultValue?: T): T;
|
|
2315
|
+
set(key: string, value: unknown): void;
|
|
2316
|
+
set(values: Record<string, unknown>): void;
|
|
2317
|
+
push(key: string, value: unknown): void;
|
|
2318
|
+
all(): Record<string, unknown>;
|
|
2319
|
+
}
|
|
2320
|
+
declare const ConfigRepository$1: Token$j<ConfigRepository$1>;
|
|
2321
|
+
/** Anything a controller can return that knows how to become a Response. */
|
|
2322
|
+
interface Responsable$1 {
|
|
2323
|
+
toResponse(request: unknown): Response | Promise<Response>;
|
|
2324
|
+
}
|
|
2325
|
+
|
|
2227
2326
|
/** Public method names of a controller (excludes non-function members). */
|
|
2228
2327
|
type ActionMethods<C> = {
|
|
2229
2328
|
[K in keyof C]: C[K] extends (...args: any[]) => unknown ? K : never;
|
|
@@ -2241,7 +2340,7 @@ interface Route {
|
|
|
2241
2340
|
readonly uri: string;
|
|
2242
2341
|
getName(): string | undefined;
|
|
2243
2342
|
name(name: string): this;
|
|
2244
|
-
middleware(...middleware: MiddlewareReference[]): this;
|
|
2343
|
+
middleware(...middleware: Array<MiddlewareReference | readonly MiddlewareReference[]>): this;
|
|
2245
2344
|
withoutMiddleware(...middleware: MiddlewareReference[]): this;
|
|
2246
2345
|
where(parameter: string, pattern: string): this;
|
|
2247
2346
|
where(patterns: Record<string, string>): this;
|
|
@@ -2249,7 +2348,7 @@ interface Route {
|
|
|
2249
2348
|
interface RouteRegistrar {
|
|
2250
2349
|
prefix(prefix: string): RouteRegistrar;
|
|
2251
2350
|
name(prefix: string): RouteRegistrar;
|
|
2252
|
-
middleware(...middleware: MiddlewareReference[]): RouteRegistrar;
|
|
2351
|
+
middleware(...middleware: Array<MiddlewareReference | readonly MiddlewareReference[]>): RouteRegistrar;
|
|
2253
2352
|
controller(controller: Class$d<unknown>): RouteRegistrar;
|
|
2254
2353
|
group(routes: () => void | Promise<void>): Promise<void>;
|
|
2255
2354
|
}
|
|
@@ -2277,7 +2376,7 @@ interface Router {
|
|
|
2277
2376
|
fallback(action: RouteAction): Route;
|
|
2278
2377
|
prefix(prefix: string): RouteRegistrar;
|
|
2279
2378
|
name(prefix: string): RouteRegistrar;
|
|
2280
|
-
middleware(...middleware: MiddlewareReference[]): RouteRegistrar;
|
|
2379
|
+
middleware(...middleware: Array<MiddlewareReference | readonly MiddlewareReference[]>): RouteRegistrar;
|
|
2281
2380
|
controller(controller: Class$d<unknown>): RouteRegistrar;
|
|
2282
2381
|
/** Explicit model binding: Route.model('author', User). */
|
|
2283
2382
|
model(parameter: string, model: Class$d<unknown>): void;
|
|
@@ -2313,6 +2412,12 @@ interface UrlGenerator {
|
|
|
2313
2412
|
current(): string;
|
|
2314
2413
|
previous(fallback?: string): string;
|
|
2315
2414
|
hasRoute(name: string): boolean;
|
|
2415
|
+
/** A URL to a named route with a `signature` query (HMAC-SHA256 keyed by APP_KEY); `expiration` adds `expires`. */
|
|
2416
|
+
signedRoute(name: string, parameters?: unknown, expiration?: Date | number, absolute?: boolean): string;
|
|
2417
|
+
/** signedRoute() that expires: a Date, or seconds from now. */
|
|
2418
|
+
temporarySignedRoute(name: string, expiration: Date | number, parameters?: unknown, absolute?: boolean): string;
|
|
2419
|
+
/** Whether the request URL carries a valid, unexpired signature (`absolute: false` signs the path only). */
|
|
2420
|
+
hasValidSignature(request: HttpRequest$4, absolute?: boolean): boolean;
|
|
2316
2421
|
}
|
|
2317
2422
|
declare const UrlGenerator: Token$j<UrlGenerator>;
|
|
2318
2423
|
interface RedirectResponse$1 extends Responsable$1 {
|
|
@@ -2413,6 +2518,70 @@ declare abstract class ServiceProvider$m implements ServiceProvider$u {
|
|
|
2413
2518
|
protected mergeConfigFrom(defaults: Record<string, unknown>, key: string): void;
|
|
2414
2519
|
}
|
|
2415
2520
|
|
|
2521
|
+
/**
|
|
2522
|
+
* What a file's bytes show it to be, read from its leading bytes the way PHP's finfo reads them for Laravel (the file
|
|
2523
|
+
* validation rules, and the extension a stored upload gets). The client's file name and MIME type are never consulted.
|
|
2524
|
+
*/
|
|
2525
|
+
interface DetectedType {
|
|
2526
|
+
/** 'image/png', 'text/plain', …; 'application/octet-stream' when no format matches, 'application/x-empty' for no bytes. */
|
|
2527
|
+
readonly mime: string;
|
|
2528
|
+
/** The extensions that name the type, the usual one first. Empty when the bytes match no format. */
|
|
2529
|
+
readonly extensions: readonly string[];
|
|
2530
|
+
}
|
|
2531
|
+
declare const JPEG: DetectedType;
|
|
2532
|
+
declare const PNG: DetectedType;
|
|
2533
|
+
declare const GIF: DetectedType;
|
|
2534
|
+
declare const WEBP: DetectedType;
|
|
2535
|
+
declare const AVIF: DetectedType;
|
|
2536
|
+
declare const BMP: DetectedType;
|
|
2537
|
+
declare const SVG: DetectedType;
|
|
2538
|
+
declare const PDF: DetectedType;
|
|
2539
|
+
declare const HTML: DetectedType;
|
|
2540
|
+
declare const XML: DetectedType;
|
|
2541
|
+
declare const TEXT: DetectedType;
|
|
2542
|
+
declare const UNKNOWN: DetectedType;
|
|
2543
|
+
declare const EMPTY: DetectedType;
|
|
2544
|
+
/** The raster formats the image rule accepts: Laravel 12's jpg, jpeg, png, gif, bmp and webp, plus AVIF. */
|
|
2545
|
+
declare const RASTER_IMAGES: ReadonlySet<string>;
|
|
2546
|
+
/** Every format recognised by its bytes other than plain text. */
|
|
2547
|
+
declare const BINARY_AND_MARKUP_TYPES: readonly DetectedType[];
|
|
2548
|
+
/**
|
|
2549
|
+
* How much of a file is read to tell its type: the window checked for binary bytes (libmagic reads its first megabyte
|
|
2550
|
+
* too). Uploads read this much to be named, so naming and validation see the same bytes.
|
|
2551
|
+
*/
|
|
2552
|
+
declare const SNIFF_BYTES: number;
|
|
2553
|
+
/** The type the bytes show. */
|
|
2554
|
+
declare function detectFileType(bytes: Uint8Array): DetectedType;
|
|
2555
|
+
|
|
2556
|
+
declare const fileType_AVIF: typeof AVIF;
|
|
2557
|
+
declare const fileType_BINARY_AND_MARKUP_TYPES: typeof BINARY_AND_MARKUP_TYPES;
|
|
2558
|
+
declare const fileType_BMP: typeof BMP;
|
|
2559
|
+
type fileType_DetectedType = DetectedType;
|
|
2560
|
+
declare const fileType_EMPTY: typeof EMPTY;
|
|
2561
|
+
declare const fileType_GIF: typeof GIF;
|
|
2562
|
+
declare const fileType_HTML: typeof HTML;
|
|
2563
|
+
declare const fileType_JPEG: typeof JPEG;
|
|
2564
|
+
declare const fileType_PDF: typeof PDF;
|
|
2565
|
+
declare const fileType_PNG: typeof PNG;
|
|
2566
|
+
declare const fileType_RASTER_IMAGES: typeof RASTER_IMAGES;
|
|
2567
|
+
declare const fileType_SNIFF_BYTES: typeof SNIFF_BYTES;
|
|
2568
|
+
declare const fileType_SVG: typeof SVG;
|
|
2569
|
+
declare const fileType_TEXT: typeof TEXT;
|
|
2570
|
+
declare const fileType_UNKNOWN: typeof UNKNOWN;
|
|
2571
|
+
declare const fileType_WEBP: typeof WEBP;
|
|
2572
|
+
declare const fileType_XML: typeof XML;
|
|
2573
|
+
declare const fileType_detectFileType: typeof detectFileType;
|
|
2574
|
+
declare namespace fileType {
|
|
2575
|
+
export { fileType_AVIF as AVIF, fileType_BINARY_AND_MARKUP_TYPES as BINARY_AND_MARKUP_TYPES, fileType_BMP as BMP, type fileType_DetectedType as DetectedType, fileType_EMPTY as EMPTY, fileType_GIF as GIF, fileType_HTML as HTML, fileType_JPEG as JPEG, fileType_PDF as PDF, fileType_PNG as PNG, fileType_RASTER_IMAGES as RASTER_IMAGES, fileType_SNIFF_BYTES as SNIFF_BYTES, fileType_SVG as SVG, fileType_TEXT as TEXT, fileType_UNKNOWN as UNKNOWN, fileType_WEBP as WEBP, fileType_XML as XML, fileType_detectFileType as detectFileType };
|
|
2576
|
+
}
|
|
2577
|
+
|
|
2578
|
+
/**
|
|
2579
|
+
* Whether a JSON text nests objects and arrays deeper than `maxDepth`, found by scanning (no parsing, no recursion):
|
|
2580
|
+
* brackets inside strings don't count. The kernel answers 400 for such bodies (http.max_json_depth) before the
|
|
2581
|
+
* recursive input handling (sanitizing, TrimStrings, validation) could overflow the stack.
|
|
2582
|
+
*/
|
|
2583
|
+
declare function exceedsJsonDepth(text: string, maxDepth: number): boolean;
|
|
2584
|
+
|
|
2416
2585
|
/** The current container, only when it is a request scope (the kernel binds HttpRequest there). */
|
|
2417
2586
|
declare function requestScope(): Container$d | undefined;
|
|
2418
2587
|
declare function currentRequest(): HttpRequest$4 | undefined;
|
|
@@ -2454,7 +2623,10 @@ declare class HttpRedirector implements Redirector {
|
|
|
2454
2623
|
/** Pulls url.intended from the session (put there by guest()), else goes to `fallback`. */
|
|
2455
2624
|
intended(fallback?: string, status?: number): HttpRedirectResponse;
|
|
2456
2625
|
away(url: string, status?: number): HttpRedirectResponse;
|
|
2457
|
-
/**
|
|
2626
|
+
/**
|
|
2627
|
+
* Remembers where a guest was going (a GET page, else the previous URL), then redirects to `path`. Only the path
|
|
2628
|
+
* is stored, so intended() goes back on whichever host serves the app, and never to another site's Referer.
|
|
2629
|
+
*/
|
|
2458
2630
|
guest(path: string, status?: number): HttpRedirectResponse;
|
|
2459
2631
|
setIntendedUrl(url: string): void;
|
|
2460
2632
|
refresh(status?: number): HttpRedirectResponse;
|
|
@@ -2466,13 +2638,26 @@ declare function clientAddress(request: Request): string | undefined;
|
|
|
2466
2638
|
/** An uploaded file from a multipart body. store()/storeAs() go through the FilesystemManager. */
|
|
2467
2639
|
declare class FormUploadedFile implements UploadedFile$5 {
|
|
2468
2640
|
private readonly file;
|
|
2641
|
+
private readonly detected?;
|
|
2469
2642
|
readonly clientName: string;
|
|
2470
2643
|
readonly mimeType: string;
|
|
2471
2644
|
readonly size: number;
|
|
2645
|
+
/**
|
|
2646
|
+
* Reads the leading bytes first, so extension(), hashName() and store() name the file by its content. The request
|
|
2647
|
+
* builds its uploads this way.
|
|
2648
|
+
*/
|
|
2649
|
+
static fromFile(file: Blob & {
|
|
2650
|
+
readonly name?: string;
|
|
2651
|
+
}): Promise<FormUploadedFile>;
|
|
2472
2652
|
constructor(file: Blob & {
|
|
2473
2653
|
readonly name?: string;
|
|
2474
|
-
});
|
|
2475
|
-
/**
|
|
2654
|
+
}, detected?: fileType.DetectedType | undefined);
|
|
2655
|
+
/**
|
|
2656
|
+
* Laravel's extension(): the type the bytes show (guessExtension()), when they were read and match a known format.
|
|
2657
|
+
* Text and bytes no format matches keep the client's claim (its MIME type, else its file name) when it is a plain
|
|
2658
|
+
* extension, unless it names a format the bytes would have shown or one a browser renders or runs: otherwise 'txt'
|
|
2659
|
+
* for text, '' for the rest. Unread (built directly), the client's claim when it is a plain extension, else ''.
|
|
2660
|
+
*/
|
|
2476
2661
|
extension(): string;
|
|
2477
2662
|
clientExtension(): string;
|
|
2478
2663
|
/** A random 40-character name with the guessed extension. */
|
|
@@ -2489,6 +2674,8 @@ interface IncomingRequestOptions {
|
|
|
2489
2674
|
trustedProxies?: readonly string[];
|
|
2490
2675
|
/** Largest request body in bytes before a 413 (config http.max_body_size); null is unlimited. Default 8 MB. */
|
|
2491
2676
|
maxBodySize?: number | null;
|
|
2677
|
+
/** Deepest nesting of objects and arrays in a JSON body before a 400 (config http.max_json_depth); null is unlimited. Default 512. */
|
|
2678
|
+
maxJsonDepth?: number | null;
|
|
2492
2679
|
}
|
|
2493
2680
|
/** Exact match, IPv4 CIDR ('10.0.0.0/8') or '*'. */
|
|
2494
2681
|
declare function ipMatches(ip: string, patterns: readonly string[]): boolean;
|
|
@@ -2721,6 +2908,7 @@ declare function applyMiddlewareCallbacks(app: Application$6, kernel: Kernel$1):
|
|
|
2721
2908
|
type ReportCallback = (error: unknown) => void | boolean | Promise<void | boolean>;
|
|
2722
2909
|
type RenderCallback = (error: unknown, request: unknown) => Response | undefined | Promise<Response | undefined>;
|
|
2723
2910
|
type ErrorClass = abstract new (...args: never[]) => Error;
|
|
2911
|
+
type JsonWhenCallback = (request: HttpRequest$4, error: unknown) => boolean;
|
|
2724
2912
|
/** HTTP status for an error (spec §7). */
|
|
2725
2913
|
declare function statusFor(error: unknown): number;
|
|
2726
2914
|
/** "The title field is required. (and 2 more errors)" (Laravel's ValidationException::summarize). */
|
|
@@ -2735,6 +2923,10 @@ declare class ErrorHandler implements ExceptionHandler {
|
|
|
2735
2923
|
reportUsing(callback: ReportCallback): void;
|
|
2736
2924
|
renderUsing(callback: RenderCallback): void;
|
|
2737
2925
|
ignore(...classes: ErrorClass[]): void;
|
|
2926
|
+
/** Laravel's shouldRenderJsonWhen(): the callback decides JSON or HTML instead of the Accept header. */
|
|
2927
|
+
shouldRenderJsonWhen(callback: JsonWhenCallback): void;
|
|
2928
|
+
/** Laravel's shouldReturnJson(): the shouldRenderJsonWhen() callback when set, else request.expectsJson(). */
|
|
2929
|
+
protected shouldReturnJson(request: HttpRequest$4, error: unknown): boolean;
|
|
2738
2930
|
shouldReport(error: unknown): boolean;
|
|
2739
2931
|
/** Report callbacks first (returning false stops the default log), then LogManager.error(), else console.error. Once per error. */
|
|
2740
2932
|
report(error: unknown): Promise<void>;
|
|
@@ -2748,6 +2940,8 @@ declare class ExceptionsConfiguration implements ExceptionsConfigurator {
|
|
|
2748
2940
|
report(callback: ReportCallback): this;
|
|
2749
2941
|
render(callback: RenderCallback): this;
|
|
2750
2942
|
dontReport(...classes: ErrorClass[]): this;
|
|
2943
|
+
/** shouldRenderJsonWhen((request) => request.is('api/*')): JSON errors for those requests, whatever they accept. */
|
|
2944
|
+
shouldRenderJsonWhen(callback: (request: HttpRequest$4, error: unknown) => boolean): this;
|
|
2751
2945
|
}
|
|
2752
2946
|
/** Runs the withExceptions() callbacks against a handler (the provider does this when the handler is built). */
|
|
2753
2947
|
declare function applyExceptionCallbacks(app: Application$6, handler: ErrorHandler): void;
|
|
@@ -3001,6 +3195,11 @@ interface OrielError$e extends Error {
|
|
|
3001
3195
|
|
|
3002
3196
|
/** Options a job class may declare as public fields. Their presence (or implementing ShouldQueue) makes things queueable. */
|
|
3003
3197
|
interface ShouldQueue$4 {
|
|
3198
|
+
/**
|
|
3199
|
+
* Marks the class as queued at run time: `implements ShouldQueue` leaves no trace once compiled, so the interface
|
|
3200
|
+
* asks for `readonly shouldQueue = true`. Jobs, listeners, mailables and notifications carrying it are queued.
|
|
3201
|
+
*/
|
|
3202
|
+
readonly shouldQueue: true;
|
|
3004
3203
|
connection?: string;
|
|
3005
3204
|
queue?: string;
|
|
3006
3205
|
/** Seconds. */
|
|
@@ -3856,6 +4055,8 @@ interface ModelInstance$2 {
|
|
|
3856
4055
|
getTable(): string;
|
|
3857
4056
|
getRouteKey(): unknown;
|
|
3858
4057
|
getRouteKeyName(): string;
|
|
4058
|
+
/** The value stored in a polymorphic `*_type` column for this model: its morph map alias, else its class name. */
|
|
4059
|
+
getMorphClass(): string;
|
|
3859
4060
|
getAttribute<T = unknown>(key: string): T;
|
|
3860
4061
|
setAttribute(key: string, value: unknown): this;
|
|
3861
4062
|
fill(attributes: Row$4): this;
|
|
@@ -3908,6 +4109,28 @@ interface ConsoleKernel$3 {
|
|
|
3908
4109
|
command(signature: string, handler: (this: CommandContext$3, ...args: unknown[]) => number | void | Promise<number | void>): ClosureCommand$3;
|
|
3909
4110
|
}
|
|
3910
4111
|
declare const ConsoleKernel$3: Token$j<ConsoleKernel$3>;
|
|
4112
|
+
/**
|
|
4113
|
+
* A stored database notification (Laravel's DatabaseNotification model): one row of the `notifications` table, with
|
|
4114
|
+
* its snake_case columns. `user.notifications()`, `unreadNotifications()` and `readNotifications()` query these,
|
|
4115
|
+
* newest first.
|
|
4116
|
+
*/
|
|
4117
|
+
interface DatabaseNotification$1 extends ModelInstance$2 {
|
|
4118
|
+
/** A UUID. */
|
|
4119
|
+
readonly id: string;
|
|
4120
|
+
/** The notification's class name. */
|
|
4121
|
+
readonly type: string;
|
|
4122
|
+
/** What the notification's toDatabase() (or toArray()) returned. */
|
|
4123
|
+
readonly data: Record<string, unknown>;
|
|
4124
|
+
read_at: Date | null;
|
|
4125
|
+
readonly created_at: Date | null;
|
|
4126
|
+
readonly updated_at: Date | null;
|
|
4127
|
+
/** Sets read_at to now and saves, unless it is already read. */
|
|
4128
|
+
markAsRead(): Promise<void>;
|
|
4129
|
+
/** Clears read_at and saves, unless it is already unread. */
|
|
4130
|
+
markAsUnread(): Promise<void>;
|
|
4131
|
+
read(): boolean;
|
|
4132
|
+
unread(): boolean;
|
|
4133
|
+
}
|
|
3911
4134
|
|
|
3912
4135
|
type Operator$4 = '=' | '==' | '===' | '!=' | '!==' | '<>' | '<' | '<=' | '>' | '>=';
|
|
3913
4136
|
|
|
@@ -4673,7 +4896,10 @@ declare class LengthAwarePaginator<T> extends AbstractPaginator<T> {
|
|
|
4673
4896
|
hasMorePages(): boolean;
|
|
4674
4897
|
onLastPage(): boolean;
|
|
4675
4898
|
nextPageUrl(): string | null;
|
|
4676
|
-
/**
|
|
4899
|
+
/**
|
|
4900
|
+
* The page links Laravel renders: previous, the page window with '...' gaps, next. The labels are plain text
|
|
4901
|
+
* ("« Previous", "Next »"), not Laravel's `«` entities, so a page can print them as text.
|
|
4902
|
+
*/
|
|
4677
4903
|
linkCollection(): PaginationLink[];
|
|
4678
4904
|
/** Laravel's UrlWindow: the first pages, the slider around the current page and the last pages, with '...' between. */
|
|
4679
4905
|
protected elements(): Array<UrlRange | '...'>;
|
|
@@ -4720,6 +4946,13 @@ declare class Grammar {
|
|
|
4720
4946
|
compileOrders(query: Builder$1<unknown>): Sql | undefined;
|
|
4721
4947
|
compileWheres(wheres: readonly Where[], keyword?: 'where' | 'on'): Sql | undefined;
|
|
4722
4948
|
compileWhere(where: Where): Sql;
|
|
4949
|
+
/**
|
|
4950
|
+
* whereLike() per driver, as Laravel 12's grammars: Postgres compares the column as text with ilike (like when
|
|
4951
|
+
* case-sensitive); MySQL uses like (like binary); SQLite uses like, or glob with the pattern translated.
|
|
4952
|
+
*/
|
|
4953
|
+
compileWhereLike(where: Extract<Where, {
|
|
4954
|
+
type: 'like';
|
|
4955
|
+
}>): Sql;
|
|
4723
4956
|
compileJoin(joinClause: JoinClause): Sql;
|
|
4724
4957
|
compileHavings(havings: readonly Having[]): Sql | undefined;
|
|
4725
4958
|
compileLimitOffset(limit: number | undefined, offset: number | undefined): Sql | undefined;
|
|
@@ -4767,6 +5000,13 @@ type Where = {
|
|
|
4767
5000
|
values: readonly [unknown, unknown];
|
|
4768
5001
|
not: boolean;
|
|
4769
5002
|
boolean: WhereBoolean;
|
|
5003
|
+
} | {
|
|
5004
|
+
type: 'like';
|
|
5005
|
+
column: ColumnRef;
|
|
5006
|
+
value: string;
|
|
5007
|
+
caseSensitive: boolean;
|
|
5008
|
+
not: boolean;
|
|
5009
|
+
boolean: WhereBoolean;
|
|
4770
5010
|
} | {
|
|
4771
5011
|
type: 'column';
|
|
4772
5012
|
first: ColumnRef;
|
|
@@ -4809,6 +5049,8 @@ type SelectColumn = ColumnRef | {
|
|
|
4809
5049
|
as: string;
|
|
4810
5050
|
};
|
|
4811
5051
|
type NestedCallback<Q> = (query: Q) => unknown;
|
|
5052
|
+
/** The value when()'s callback receives: the condition's type without its falsy members. */
|
|
5053
|
+
type Truthy<V> = Exclude<V, false | 0 | 0n | '' | null | undefined>;
|
|
4812
5054
|
/** The key a selected column comes back under: 'users.name' → 'name', 'name as n' → 'n'. */
|
|
4813
5055
|
declare function columnKey(column: string): string;
|
|
4814
5056
|
/**
|
|
@@ -4859,6 +5101,16 @@ declare class Builder$1<T = Row$4> implements QueryBuilder$4<T> {
|
|
|
4859
5101
|
whereBetween(column: ColumnRef, values: readonly [unknown, unknown]): this;
|
|
4860
5102
|
orWhereBetween(column: ColumnRef, values: readonly [unknown, unknown]): this;
|
|
4861
5103
|
whereNotBetween(column: ColumnRef, values: readonly [unknown, unknown]): this;
|
|
5104
|
+
/**
|
|
5105
|
+
* Laravel's whereLike(): the value is the pattern, `%` and `_` included (`whereLike('title', `%${term}%`)`).
|
|
5106
|
+
* Case-insensitive unless caseSensitive: ilike on Postgres, like on MySQL and SQLite (their like already ignores
|
|
5107
|
+
* case: MySQL through the column's collation, SQLite for ASCII letters). Case-sensitive is like on Postgres,
|
|
5108
|
+
* like binary on MySQL and glob on SQLite.
|
|
5109
|
+
*/
|
|
5110
|
+
whereLike(column: ColumnRef, value: string, caseSensitive?: boolean, boolean?: WhereBoolean, not?: boolean): this;
|
|
5111
|
+
orWhereLike(column: ColumnRef, value: string, caseSensitive?: boolean): this;
|
|
5112
|
+
whereNotLike(column: ColumnRef, value: string, caseSensitive?: boolean, boolean?: WhereBoolean): this;
|
|
5113
|
+
orWhereNotLike(column: ColumnRef, value: string, caseSensitive?: boolean): this;
|
|
4862
5114
|
/** Compares two columns: whereColumn('updated_at', '>', 'created_at'). */
|
|
4863
5115
|
whereColumn(first: ColumnRef, operatorOrSecond: string, second?: ColumnRef, boolean?: WhereBoolean): this;
|
|
4864
5116
|
orWhereColumn(first: ColumnRef, operatorOrSecond: string, second?: ColumnRef): this;
|
|
@@ -4893,8 +5145,20 @@ declare class Builder$1<T = Row$4> implements QueryBuilder$4<T> {
|
|
|
4893
5145
|
forPage(page: number, perPage?: number): this;
|
|
4894
5146
|
lockForUpdate(): this;
|
|
4895
5147
|
sharedLock(): this;
|
|
4896
|
-
/**
|
|
4897
|
-
|
|
5148
|
+
/**
|
|
5149
|
+
* Laravel's when(): callback(query, value) runs when the value is truthy, otherwise(query, value) when it is falsy.
|
|
5150
|
+
* A function value is called with the query first and its result is the value. Truthiness is JavaScript's, so `'0'`
|
|
5151
|
+
* and `[]` are truthy: a `?active=0` filter applies, where Laravel would skip it. Returns the query; what the
|
|
5152
|
+
* callbacks return is ignored.
|
|
5153
|
+
*
|
|
5154
|
+
* @example
|
|
5155
|
+
* Post.query().when(request.query('q'), (query, q) => query.whereLike('title', `%${q}%`))
|
|
5156
|
+
*/
|
|
5157
|
+
when<V>(value: (query: this) => V, callback: (query: this, value: Truthy<V>) => unknown, otherwise?: (query: this, value: V) => unknown): this;
|
|
5158
|
+
when<V>(value: V, callback: (query: this, value: Truthy<V>) => unknown, otherwise?: (query: this, value: V) => unknown): this;
|
|
5159
|
+
/** Laravel's unless(): when() with the condition reversed. callback(query, value) runs when the value is falsy. */
|
|
5160
|
+
unless<V>(value: (query: this) => V, callback: (query: this, value: V) => unknown, otherwise?: (query: this, value: Truthy<V>) => unknown): this;
|
|
5161
|
+
unless<V>(value: V, callback: (query: this, value: V) => unknown, otherwise?: (query: this, value: Truthy<V>) => unknown): this;
|
|
4898
5162
|
tap(callback: (query: this) => unknown): this;
|
|
4899
5163
|
get(): Promise<Collection<T>>;
|
|
4900
5164
|
/** The raw rows, without a Collection around them. */
|
|
@@ -5215,6 +5479,10 @@ declare class Builder<M extends Model = Model> extends Builder$1<M> {
|
|
|
5215
5479
|
whereNull(columns: Column<M> | Expression | Array<Column<M> | Expression>): this;
|
|
5216
5480
|
whereNotNull(columns: Column<M> | Expression | Array<Column<M> | Expression>): this;
|
|
5217
5481
|
whereBetween(column: Column<M> | Expression, values: readonly [unknown, unknown]): this;
|
|
5482
|
+
whereLike(column: Column<M> | Expression, value: string, caseSensitive?: boolean, boolean?: WhereBoolean, not?: boolean): this;
|
|
5483
|
+
orWhereLike(column: Column<M> | Expression, value: string, caseSensitive?: boolean): this;
|
|
5484
|
+
whereNotLike(column: Column<M> | Expression, value: string, caseSensitive?: boolean, boolean?: WhereBoolean): this;
|
|
5485
|
+
orWhereNotLike(column: Column<M> | Expression, value: string, caseSensitive?: boolean): this;
|
|
5218
5486
|
orderBy(column: Column<M> | Expression, direction?: Direction | Uppercase<Direction>): this;
|
|
5219
5487
|
/** Newest first by the model's created_at column (or the given one). */
|
|
5220
5488
|
latest(column?: Column<M> | Expression): this;
|
|
@@ -5358,6 +5626,15 @@ interface StateContext {
|
|
|
5358
5626
|
}
|
|
5359
5627
|
type State = Row$4 | ((attributes: Row$4, context: StateContext) => Row$4);
|
|
5360
5628
|
type AnyFactory = Factory$b<any>;
|
|
5629
|
+
/**
|
|
5630
|
+
* A model's factory() typed as its own factory class (Laravel's `@use HasFactory<UserFactory>`): declare it in the
|
|
5631
|
+
* model, `declare static factory: HasFactory<UserFactory>` (with `import type`), and User.factory().unverified()
|
|
5632
|
+
* type-checks. The factory is still found at run time by name (database/factories/UserFactory.ts).
|
|
5633
|
+
*/
|
|
5634
|
+
type HasFactory<F> = {
|
|
5635
|
+
(): F;
|
|
5636
|
+
(count: number, state?: State): F & Many;
|
|
5637
|
+
} & (typeof Model)['factory'];
|
|
5361
5638
|
interface HasRelationship {
|
|
5362
5639
|
factory: AnyFactory;
|
|
5363
5640
|
relationship: string;
|
|
@@ -5791,12 +6068,21 @@ declare class Model implements ModelInstance$2 {
|
|
|
5791
6068
|
/** A new query of this model, with its global scopes. */
|
|
5792
6069
|
static query<C extends typeof Model>(this: C): ModelBuilder<C>;
|
|
5793
6070
|
static where<C extends typeof Model>(this: C, ...args: WhereArgs<Instance<C>, ModelBuilder<C>>): ModelBuilder<C>;
|
|
6071
|
+
/** Post.when(request.query('q'), (query, q) => query.whereLike('title', `%${q}%`)): a new query, then when(). */
|
|
6072
|
+
static when<C extends typeof Model, V>(this: C, value: (query: ModelBuilder<C>) => V, callback: (query: ModelBuilder<C>, value: Truthy<V>) => unknown, otherwise?: (query: ModelBuilder<C>, value: V) => unknown): ModelBuilder<C>;
|
|
6073
|
+
static when<C extends typeof Model, V>(this: C, value: V, callback: (query: ModelBuilder<C>, value: Truthy<V>) => unknown, otherwise?: (query: ModelBuilder<C>, value: V) => unknown): ModelBuilder<C>;
|
|
6074
|
+
/** A new query, then unless(): the callback runs when the value is falsy. */
|
|
6075
|
+
static unless<C extends typeof Model, V>(this: C, value: (query: ModelBuilder<C>) => V, callback: (query: ModelBuilder<C>, value: V) => unknown, otherwise?: (query: ModelBuilder<C>, value: Truthy<V>) => unknown): ModelBuilder<C>;
|
|
6076
|
+
static unless<C extends typeof Model, V>(this: C, value: V, callback: (query: ModelBuilder<C>, value: V) => unknown, otherwise?: (query: ModelBuilder<C>, value: Truthy<V>) => unknown): ModelBuilder<C>;
|
|
5794
6077
|
static whereKey<C extends typeof Model>(this: C, id: unknown): ModelBuilder<C>;
|
|
5795
6078
|
static whereIn<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression, values: readonly unknown[]): ModelBuilder<C>;
|
|
5796
6079
|
static whereNotIn<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression, values: readonly unknown[]): ModelBuilder<C>;
|
|
5797
6080
|
static whereNull<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression): ModelBuilder<C>;
|
|
5798
6081
|
static whereNotNull<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression): ModelBuilder<C>;
|
|
5799
6082
|
static whereBetween<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression, values: readonly [unknown, unknown]): ModelBuilder<C>;
|
|
6083
|
+
/** Post.whereLike('title', `%${term}%`): case-insensitive unless caseSensitive (see the query builder's whereLike()). */
|
|
6084
|
+
static whereLike<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression, value: string, caseSensitive?: boolean): ModelBuilder<C>;
|
|
6085
|
+
static whereNotLike<C extends typeof Model>(this: C, column: Column<Instance<C>> | Expression, value: string, caseSensitive?: boolean): ModelBuilder<C>;
|
|
5800
6086
|
static whereColumn<C extends typeof Model>(this: C, first: Column<Instance<C>>, operatorOrSecond: string, second?: Column<Instance<C>>): ModelBuilder<C>;
|
|
5801
6087
|
static whereRaw<C extends typeof Model>(this: C, sql: string, bindings?: readonly unknown[]): ModelBuilder<C>;
|
|
5802
6088
|
static select<C extends typeof Model>(this: C, ...columns: Array<Column<Instance<C>> | Expression>): ModelBuilder<C>;
|
|
@@ -6109,6 +6395,82 @@ declare class Pivot extends Model {
|
|
|
6109
6395
|
timestamps: boolean;
|
|
6110
6396
|
}
|
|
6111
6397
|
|
|
6398
|
+
/**
|
|
6399
|
+
* Laravel's DatabaseNotification: one row of the `notifications` table, which the database channel writes. A UUID
|
|
6400
|
+
* string key, `data` as an array cast and `read_at` as a datetime. `user.notifications()` returns these, newest first.
|
|
6401
|
+
*/
|
|
6402
|
+
declare class DatabaseNotification extends Model implements DatabaseNotification$1 {
|
|
6403
|
+
protected table: string | undefined;
|
|
6404
|
+
protected keyType: 'int' | 'string';
|
|
6405
|
+
incrementing: boolean;
|
|
6406
|
+
protected guarded: string[];
|
|
6407
|
+
protected casts: Readonly<Record<string, CastDefinition>>;
|
|
6408
|
+
$attributes?: {
|
|
6409
|
+
id: string;
|
|
6410
|
+
type: string;
|
|
6411
|
+
notifiable_type: string;
|
|
6412
|
+
notifiable_id: number | string;
|
|
6413
|
+
data: Record<string, unknown>;
|
|
6414
|
+
read_at: Date | null;
|
|
6415
|
+
created_at: Date | null;
|
|
6416
|
+
updated_at: Date | null;
|
|
6417
|
+
};
|
|
6418
|
+
readonly id: string;
|
|
6419
|
+
readonly type: string;
|
|
6420
|
+
readonly notifiable_type: string;
|
|
6421
|
+
readonly notifiable_id: number | string;
|
|
6422
|
+
readonly data: Record<string, unknown>;
|
|
6423
|
+
read_at: Date | null;
|
|
6424
|
+
readonly created_at: Date | null;
|
|
6425
|
+
readonly updated_at: Date | null;
|
|
6426
|
+
/** The model the notification was sent to. */
|
|
6427
|
+
notifiable<R extends Model = Model>(): MorphTo<R, this>;
|
|
6428
|
+
/** Sets read_at to now and saves, unless it is already read. */
|
|
6429
|
+
markAsRead(): Promise<void>;
|
|
6430
|
+
/** Clears read_at and saves, unless it is already unread. */
|
|
6431
|
+
markAsUnread(): Promise<void>;
|
|
6432
|
+
read(): boolean;
|
|
6433
|
+
unread(): boolean;
|
|
6434
|
+
/** `query.read()`: only read notifications. */
|
|
6435
|
+
static scopeRead(query: Builder<DatabaseNotification>): Builder<DatabaseNotification>;
|
|
6436
|
+
/** `query.unread()`: only unread notifications. */
|
|
6437
|
+
static scopeUnread(query: Builder<DatabaseNotification>): Builder<DatabaseNotification>;
|
|
6438
|
+
}
|
|
6439
|
+
/** Laravel's DatabaseNotificationCollection: what `await user.notifications().get()` returns. */
|
|
6440
|
+
declare class DatabaseNotificationCollection extends Collection<DatabaseNotification> {
|
|
6441
|
+
/** Marks every notification as read (one save each, as in Laravel). */
|
|
6442
|
+
markAsRead(): Promise<void>;
|
|
6443
|
+
/** Marks every notification as unread. */
|
|
6444
|
+
markAsUnread(): Promise<void>;
|
|
6445
|
+
}
|
|
6446
|
+
/**
|
|
6447
|
+
* The relation `notifications()`, `readNotifications()` and `unreadNotifications()` return: a morphMany over
|
|
6448
|
+
* DatabaseNotification whose results (get(), the loaded relation, eager loads) are DatabaseNotificationCollections.
|
|
6449
|
+
* Every builder method works on it: paginate(), count(), update({ read_at }), where(), …
|
|
6450
|
+
*/
|
|
6451
|
+
declare class DatabaseNotificationsRelation<P extends Model = Model> extends MorphMany<DatabaseNotification, P> {
|
|
6452
|
+
get(): Promise<DatabaseNotificationCollection>;
|
|
6453
|
+
getResults(): Promise<DatabaseNotificationCollection>;
|
|
6454
|
+
initRelation(models: P[], relation: string): P[];
|
|
6455
|
+
match(models: P[], results: DatabaseNotification[], relation: string): P[];
|
|
6456
|
+
}
|
|
6457
|
+
|
|
6458
|
+
type ModelConstructor = new (...args: any[]) => Model;
|
|
6459
|
+
/** What HasDatabaseNotifications adds to a model. */
|
|
6460
|
+
interface HasDatabaseNotificationsModel extends Model {
|
|
6461
|
+
/** The model's notifications, newest first: morphMany(DatabaseNotification, 'notifiable').latest(). */
|
|
6462
|
+
notifications(): DatabaseNotificationsRelation<this>;
|
|
6463
|
+
/** The read ones (read_at set). */
|
|
6464
|
+
readNotifications(): DatabaseNotificationsRelation<this>;
|
|
6465
|
+
/** The unread ones (read_at null). */
|
|
6466
|
+
unreadNotifications(): DatabaseNotificationsRelation<this>;
|
|
6467
|
+
}
|
|
6468
|
+
/**
|
|
6469
|
+
* Laravel's HasDatabaseNotifications: the notifications the database channel stored for this model, as queries.
|
|
6470
|
+
* `class User extends HasDatabaseNotifications(Model) {}`; apps get it through `Notifiable`.
|
|
6471
|
+
*/
|
|
6472
|
+
declare function HasDatabaseNotifications<TBase extends ModelConstructor>(Base: TBase): TBase & (new (...args: any[]) => HasDatabaseNotificationsModel);
|
|
6473
|
+
|
|
6112
6474
|
/**
|
|
6113
6475
|
* The morph map: the value stored in `*_type` columns for each model class (Laravel's Relation::morphMap()).
|
|
6114
6476
|
* Without an entry the class name is stored ('Post'). Returns the current map.
|
|
@@ -6426,7 +6788,11 @@ declare class RouteModelResolverImpl implements RouteModelResolver {
|
|
|
6426
6788
|
|
|
6427
6789
|
/** Laravel 11's config/database.php defaults (the app's config/database.ts wins, key by key). */
|
|
6428
6790
|
declare function databaseConfigDefaults(app: Pick<Application$4, 'databasePath'>): DatabaseConfig & Record<string, unknown>;
|
|
6429
|
-
/**
|
|
6791
|
+
/**
|
|
6792
|
+
* Points the paginators at the current request: ?page=, ?cursor=, the URL and the query string (Laravel's resolvers).
|
|
6793
|
+
* A bound PaginationState is asked first for the page and the path (Livewire's WithPagination replaces Laravel's
|
|
6794
|
+
* resolvers the same way); what it leaves undefined comes from the request.
|
|
6795
|
+
*/
|
|
6430
6796
|
declare function usePaginationResolvers(): void;
|
|
6431
6797
|
/**
|
|
6432
6798
|
* Binds the database layer: the DatabaseManager (a root singleton owning the pools) behind the DB facade, the
|
|
@@ -6514,6 +6880,16 @@ declare class ValidationErrorImpl extends Error implements ValidationError {
|
|
|
6514
6880
|
readonly name = "ValidationError";
|
|
6515
6881
|
constructor(errors: Record<string, string[]>, errorBag?: string, redirectTo?: string | undefined);
|
|
6516
6882
|
}
|
|
6883
|
+
/**
|
|
6884
|
+
* Laravel's ValidationException, for failing a request by hand:
|
|
6885
|
+
* `throw ValidationException.withMessages({ email: __('auth.failed') })`. Rendered like any validation error: 422 JSON,
|
|
6886
|
+
* or a redirect back with the errors.
|
|
6887
|
+
*/
|
|
6888
|
+
declare class ValidationException extends ValidationErrorImpl {
|
|
6889
|
+
/** Messages per field, each a string or a list. */
|
|
6890
|
+
static withMessages(messages: Record<string, string | readonly string[]>): ValidationException;
|
|
6891
|
+
constructor(errors: Record<string, string[]>, errorBag?: string, redirectTo?: string);
|
|
6892
|
+
}
|
|
6517
6893
|
declare class AuthorizationErrorImpl extends Error implements OrielError$c {
|
|
6518
6894
|
readonly kind: "Authorization";
|
|
6519
6895
|
readonly status = 403;
|
|
@@ -6592,6 +6968,8 @@ interface BuiltinRule {
|
|
|
6592
6968
|
replacements?(ctx: RuleContext): Record<string, string>;
|
|
6593
6969
|
/** Used when messageKey() isn't in DEFAULT_MESSAGES (e.g. an extend()ed rule with a custom message). */
|
|
6594
6970
|
defaultMessage?: string;
|
|
6971
|
+
/** An extend()ed rule's own message: it wins over the default lines, as Laravel's fallback messages do. */
|
|
6972
|
+
message?: string;
|
|
6595
6973
|
/** Runs even when the value is missing, blank, or null under nullable (the required* family, and accepted); a failure stops the field. */
|
|
6596
6974
|
implicit?: boolean;
|
|
6597
6975
|
}
|
|
@@ -6626,6 +7004,36 @@ declare function expandWildcardKeys(pattern: string, data: Record<string, unknow
|
|
|
6626
7004
|
/** Every built-in rule, merged. Later tasks (database rules) add their own spread here. */
|
|
6627
7005
|
declare const builtinRules: Record<string, BuiltinRule>;
|
|
6628
7006
|
|
|
7007
|
+
/**
|
|
7008
|
+
* Laravel's Illuminate\Validation\Rules\Password: a string of at least `min` characters (8 by default), plus the
|
|
7009
|
+
* checks you add: letters(), mixedCase(), numbers(), symbols(), max(). Every failing check adds its own message.
|
|
7010
|
+
* Rule.password() returns the application default (PasswordRule.defaults()). (Laravel's uncompromised() is not
|
|
7011
|
+
* ported: it calls an outside service.)
|
|
7012
|
+
*/
|
|
7013
|
+
declare class PasswordRule implements ValidationRule$4 {
|
|
7014
|
+
#private;
|
|
7015
|
+
constructor(min?: number);
|
|
7016
|
+
/** A password rule of at least `size` characters: PasswordRule.min(12).mixedCase(). */
|
|
7017
|
+
static min(size: number): PasswordRule;
|
|
7018
|
+
/**
|
|
7019
|
+
* With an argument, sets the default (Laravel's Password::defaults(fn () => ...), in a provider's boot());
|
|
7020
|
+
* `null` resets it. Without one, returns a copy of the default: PasswordRule.min(8) unless set.
|
|
7021
|
+
*/
|
|
7022
|
+
static defaults(): PasswordRule;
|
|
7023
|
+
static defaults(rule: PasswordRule | (() => PasswordRule) | null): void;
|
|
7024
|
+
min(size: number): this;
|
|
7025
|
+
max(size: number): this;
|
|
7026
|
+
/** At least one letter. */
|
|
7027
|
+
letters(): this;
|
|
7028
|
+
/** At least one uppercase and one lowercase letter. */
|
|
7029
|
+
mixedCase(): this;
|
|
7030
|
+
/** At least one number. */
|
|
7031
|
+
numbers(): this;
|
|
7032
|
+
/** At least one symbol (punctuation, a symbol or a space). */
|
|
7033
|
+
symbols(): this;
|
|
7034
|
+
validate(attribute: string, value: unknown, fail: (message: string) => void): void;
|
|
7035
|
+
}
|
|
7036
|
+
|
|
6629
7037
|
/**
|
|
6630
7038
|
* Base for the fluent builders. Each one reports under a built-in rule name (`in`, `unique`, `exists`), so when it
|
|
6631
7039
|
* runs inside a Validator its failure goes through exactly the same lookup as the string rule: custom messages
|
|
@@ -6672,6 +7080,8 @@ declare const Rule: {
|
|
|
6672
7080
|
in: (values: readonly unknown[]) => InRule;
|
|
6673
7081
|
unique: (table: string, column?: string) => UniqueRule;
|
|
6674
7082
|
exists: (table: string, column?: string) => ExistsRule;
|
|
7083
|
+
/** Laravel's Password::defaults(): the application's password rule (at least 8 characters unless PasswordRule.defaults() changed it). */
|
|
7084
|
+
password: () => PasswordRule;
|
|
6675
7085
|
};
|
|
6676
7086
|
|
|
6677
7087
|
/** See Task 9's writeup in the plan for exactly what this does and doesn't infer. */
|
|
@@ -7167,6 +7577,8 @@ interface HttpRequest$3 {
|
|
|
7167
7577
|
header(name: string, defaultValue: string): string;
|
|
7168
7578
|
bearerToken(): string | undefined;
|
|
7169
7579
|
ip(): string | undefined;
|
|
7580
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
7581
|
+
content(): string;
|
|
7170
7582
|
expectsJson(): boolean;
|
|
7171
7583
|
ajax(): boolean;
|
|
7172
7584
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -7370,16 +7782,6 @@ interface Container$9 {
|
|
|
7370
7782
|
}
|
|
7371
7783
|
declare const Container$9: Token$9<Container$9>;
|
|
7372
7784
|
|
|
7373
|
-
interface Arrayable$3<T = unknown> {
|
|
7374
|
-
toArray(): T;
|
|
7375
|
-
}
|
|
7376
|
-
/** The minimal collection surface contracts rely on (implemented by @orieljs/collections). */
|
|
7377
|
-
interface Enumerable$3<T> extends Iterable<T>, Arrayable$3<unknown[]> {
|
|
7378
|
-
all(): T[];
|
|
7379
|
-
count(): number;
|
|
7380
|
-
isEmpty(): boolean;
|
|
7381
|
-
}
|
|
7382
|
-
|
|
7383
7785
|
/** The session of the current request (scoped). Loaded and saved by the StartSession middleware. */
|
|
7384
7786
|
interface Session$2 {
|
|
7385
7787
|
getId(): string;
|
|
@@ -7458,6 +7860,8 @@ interface HttpRequest$2 {
|
|
|
7458
7860
|
header(name: string, defaultValue: string): string;
|
|
7459
7861
|
bearerToken(): string | undefined;
|
|
7460
7862
|
ip(): string | undefined;
|
|
7863
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
7864
|
+
content(): string;
|
|
7461
7865
|
expectsJson(): boolean;
|
|
7462
7866
|
ajax(): boolean;
|
|
7463
7867
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -7490,6 +7894,16 @@ interface Middleware$2 {
|
|
|
7490
7894
|
terminate?(request: HttpRequest$2, response: Response): Promise<void>;
|
|
7491
7895
|
}
|
|
7492
7896
|
|
|
7897
|
+
interface Arrayable$3<T = unknown> {
|
|
7898
|
+
toArray(): T;
|
|
7899
|
+
}
|
|
7900
|
+
/** The minimal collection surface contracts rely on (implemented by @orieljs/collections). */
|
|
7901
|
+
interface Enumerable$3<T> extends Iterable<T>, Arrayable$3<unknown[]> {
|
|
7902
|
+
all(): T[];
|
|
7903
|
+
count(): number;
|
|
7904
|
+
isEmpty(): boolean;
|
|
7905
|
+
}
|
|
7906
|
+
|
|
7493
7907
|
interface Cookie {
|
|
7494
7908
|
name: string;
|
|
7495
7909
|
value: string;
|
|
@@ -7914,27 +8328,6 @@ interface Container$8 {
|
|
|
7914
8328
|
}
|
|
7915
8329
|
declare const Container$8: Token$8<Container$8>;
|
|
7916
8330
|
|
|
7917
|
-
interface ConfigRepository {
|
|
7918
|
-
has(key: string): boolean;
|
|
7919
|
-
/** Dot notation: get('database.connections.sqlite.database'). */
|
|
7920
|
-
get<T = unknown>(key: string, defaultValue?: T): T;
|
|
7921
|
-
set(key: string, value: unknown): void;
|
|
7922
|
-
set(values: Record<string, unknown>): void;
|
|
7923
|
-
push(key: string, value: unknown): void;
|
|
7924
|
-
all(): Record<string, unknown>;
|
|
7925
|
-
}
|
|
7926
|
-
declare const ConfigRepository: Token$j<ConfigRepository>;
|
|
7927
|
-
|
|
7928
|
-
interface Arrayable$2<T = unknown> {
|
|
7929
|
-
toArray(): T;
|
|
7930
|
-
}
|
|
7931
|
-
/** The minimal collection surface contracts rely on (implemented by @orieljs/collections). */
|
|
7932
|
-
interface Enumerable$2<T> extends Iterable<T>, Arrayable$2<unknown[]> {
|
|
7933
|
-
all(): T[];
|
|
7934
|
-
count(): number;
|
|
7935
|
-
isEmpty(): boolean;
|
|
7936
|
-
}
|
|
7937
|
-
|
|
7938
8331
|
/** The session of the current request (scoped). Loaded and saved by the StartSession middleware. */
|
|
7939
8332
|
interface Session$1 {
|
|
7940
8333
|
getId(): string;
|
|
@@ -7997,6 +8390,8 @@ interface HttpRequest$1 {
|
|
|
7997
8390
|
header(name: string, defaultValue: string): string;
|
|
7998
8391
|
bearerToken(): string | undefined;
|
|
7999
8392
|
ip(): string | undefined;
|
|
8393
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
8394
|
+
content(): string;
|
|
8000
8395
|
expectsJson(): boolean;
|
|
8001
8396
|
ajax(): boolean;
|
|
8002
8397
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -8029,6 +8424,27 @@ interface Middleware$1 {
|
|
|
8029
8424
|
terminate?(request: HttpRequest$1, response: Response): Promise<void>;
|
|
8030
8425
|
}
|
|
8031
8426
|
|
|
8427
|
+
interface ConfigRepository {
|
|
8428
|
+
has(key: string): boolean;
|
|
8429
|
+
/** Dot notation: get('database.connections.sqlite.database'). */
|
|
8430
|
+
get<T = unknown>(key: string, defaultValue?: T): T;
|
|
8431
|
+
set(key: string, value: unknown): void;
|
|
8432
|
+
set(values: Record<string, unknown>): void;
|
|
8433
|
+
push(key: string, value: unknown): void;
|
|
8434
|
+
all(): Record<string, unknown>;
|
|
8435
|
+
}
|
|
8436
|
+
declare const ConfigRepository: Token$j<ConfigRepository>;
|
|
8437
|
+
|
|
8438
|
+
interface Arrayable$2<T = unknown> {
|
|
8439
|
+
toArray(): T;
|
|
8440
|
+
}
|
|
8441
|
+
/** The minimal collection surface contracts rely on (implemented by @orieljs/collections). */
|
|
8442
|
+
interface Enumerable$2<T> extends Iterable<T>, Arrayable$2<unknown[]> {
|
|
8443
|
+
all(): T[];
|
|
8444
|
+
count(): number;
|
|
8445
|
+
isEmpty(): boolean;
|
|
8446
|
+
}
|
|
8447
|
+
|
|
8032
8448
|
interface Hasher {
|
|
8033
8449
|
make(value: string): Promise<string>;
|
|
8034
8450
|
check(value: string, hashed: string): Promise<boolean>;
|
|
@@ -8120,6 +8536,8 @@ interface ModelInstance$1 {
|
|
|
8120
8536
|
getTable(): string;
|
|
8121
8537
|
getRouteKey(): unknown;
|
|
8122
8538
|
getRouteKeyName(): string;
|
|
8539
|
+
/** The value stored in a polymorphic `*_type` column for this model: its morph map alias, else its class name. */
|
|
8540
|
+
getMorphClass(): string;
|
|
8123
8541
|
getAttribute<T = unknown>(key: string): T;
|
|
8124
8542
|
setAttribute(key: string, value: unknown): this;
|
|
8125
8543
|
fill(attributes: Row$2): this;
|
|
@@ -8201,18 +8619,18 @@ interface MustVerifyEmail {
|
|
|
8201
8619
|
getEmailForVerification(): string;
|
|
8202
8620
|
}
|
|
8203
8621
|
|
|
8204
|
-
interface Notifiable {
|
|
8622
|
+
interface Notifiable$1 {
|
|
8205
8623
|
/** e.g. 'mail' → email address, 'database' → the model itself. */
|
|
8206
8624
|
routeNotificationFor(channel: string, notification: Notification): unknown;
|
|
8207
8625
|
}
|
|
8208
8626
|
interface Notification {
|
|
8209
8627
|
/** Optional id; set by the dispatcher when missing. */
|
|
8210
8628
|
id?: string;
|
|
8211
|
-
via(notifiable: Notifiable): string[];
|
|
8629
|
+
via(notifiable: Notifiable$1): string[];
|
|
8212
8630
|
/** Returns a Mailable (Contracts/Mail) or the Notifications MailMessage builder. */
|
|
8213
|
-
toMail?(notifiable: Notifiable): unknown;
|
|
8214
|
-
toDatabase?(notifiable: Notifiable): Record<string, unknown>;
|
|
8215
|
-
toArray?(notifiable: Notifiable): Record<string, unknown>;
|
|
8631
|
+
toMail?(notifiable: Notifiable$1): unknown;
|
|
8632
|
+
toDatabase?(notifiable: Notifiable$1): Record<string, unknown>;
|
|
8633
|
+
toArray?(notifiable: Notifiable$1): Record<string, unknown>;
|
|
8216
8634
|
}
|
|
8217
8635
|
|
|
8218
8636
|
declare abstract class ServiceProvider$b implements ServiceProvider$u {
|
|
@@ -8287,6 +8705,21 @@ declare class PasswordReset {
|
|
|
8287
8705
|
readonly user: Authenticatable;
|
|
8288
8706
|
constructor(user: Authenticatable);
|
|
8289
8707
|
}
|
|
8708
|
+
/** Fired by the registration action after a user signs up; the default listener sends the verification mail. */
|
|
8709
|
+
declare class Registered {
|
|
8710
|
+
readonly user: Authenticatable;
|
|
8711
|
+
constructor(user: Authenticatable);
|
|
8712
|
+
}
|
|
8713
|
+
/** Fired when a user verifies their email address. */
|
|
8714
|
+
declare class Verified {
|
|
8715
|
+
readonly user: Authenticatable & MustVerifyEmail;
|
|
8716
|
+
constructor(user: Authenticatable & MustVerifyEmail);
|
|
8717
|
+
}
|
|
8718
|
+
/** Fired when a login is refused for too many attempts (the starter kits' LoginRequest). */
|
|
8719
|
+
declare class Lockout {
|
|
8720
|
+
readonly request: HttpRequest$1;
|
|
8721
|
+
constructor(request: HttpRequest$1);
|
|
8722
|
+
}
|
|
8290
8723
|
|
|
8291
8724
|
/** What the default toMail() returns: Laravel's reset mail, as plain data (see the plan's notes). */
|
|
8292
8725
|
interface ResetPasswordMail {
|
|
@@ -8313,6 +8746,54 @@ declare class ResetPassword implements Notification {
|
|
|
8313
8746
|
resetUrl(notifiable: CanResetPassword): string;
|
|
8314
8747
|
}
|
|
8315
8748
|
|
|
8749
|
+
/** What the default toMail() returns: Laravel's verification mail, as plain data (the mail channel renders it). */
|
|
8750
|
+
interface VerifyEmailMail {
|
|
8751
|
+
subject: string;
|
|
8752
|
+
lines: string[];
|
|
8753
|
+
actionText: string;
|
|
8754
|
+
actionUrl: string;
|
|
8755
|
+
outroLines: string[];
|
|
8756
|
+
}
|
|
8757
|
+
/** The user the notification is for (AuthenticatableModel provides this). */
|
|
8758
|
+
type VerifiableUser = MustVerifyEmail & {
|
|
8759
|
+
getKey?(): unknown;
|
|
8760
|
+
getAuthIdentifier?(): unknown;
|
|
8761
|
+
};
|
|
8762
|
+
/**
|
|
8763
|
+
* Laravel's VerifyEmail notification: a link to the `verification.verify` route signed for
|
|
8764
|
+
* config('auth.verification.expire', 60) minutes, with the user's key as {id} and the sha1 of their email as {hash}.
|
|
8765
|
+
*/
|
|
8766
|
+
declare class VerifyEmail implements Notification {
|
|
8767
|
+
/** Build the verification URL yourself (e.g. for a SPA front end). */
|
|
8768
|
+
static createUrlUsing(callback: ((notifiable: VerifiableUser) => string) | undefined): void;
|
|
8769
|
+
/** Build the mail yourself (e.g. a MailMessage from the Notifications component). */
|
|
8770
|
+
static toMailUsing(callback: ((notifiable: VerifiableUser, url: string) => unknown) | undefined): void;
|
|
8771
|
+
via(): string[];
|
|
8772
|
+
toMail(notifiable: object): unknown;
|
|
8773
|
+
verificationUrl(notifiable: VerifiableUser): string;
|
|
8774
|
+
}
|
|
8775
|
+
|
|
8776
|
+
/**
|
|
8777
|
+
* Laravel's SendEmailVerificationNotification, listening for Registered (AuthServiceProvider registers it): a new
|
|
8778
|
+
* user who must verify their email, and hasn't, gets the VerifyEmail mail.
|
|
8779
|
+
*/
|
|
8780
|
+
declare class SendEmailVerificationNotification {
|
|
8781
|
+
handle(event: Registered): Promise<void>;
|
|
8782
|
+
}
|
|
8783
|
+
|
|
8784
|
+
/**
|
|
8785
|
+
* Laravel's EmailVerificationRequest, for the verification link's route (`auth` and `signed` middleware): the
|
|
8786
|
+
* signed-in user's key must equal the {id} parameter and the sha1 of their email the {hash} parameter, else 403.
|
|
8787
|
+
* `await EmailVerificationRequest.validate()` in the action, like a FormRequest.
|
|
8788
|
+
*/
|
|
8789
|
+
declare class EmailVerificationRequest {
|
|
8790
|
+
static validate(): Promise<Record<string, never>>;
|
|
8791
|
+
authorize(): boolean;
|
|
8792
|
+
rules(): Record<string, never>;
|
|
8793
|
+
/** Marks the signed-in user's email as verified and fires Verified, unless it already was. */
|
|
8794
|
+
fulfill(): Promise<void>;
|
|
8795
|
+
}
|
|
8796
|
+
|
|
8316
8797
|
/** The part of a model (Contracts/Database ModelInstance) the mixin needs. */
|
|
8317
8798
|
interface AuthModelBase {
|
|
8318
8799
|
getKey(): unknown;
|
|
@@ -8322,7 +8803,7 @@ interface AuthModelBase {
|
|
|
8322
8803
|
save(): Promise<boolean>;
|
|
8323
8804
|
}
|
|
8324
8805
|
type AuthModelConstructor = new (...args: any[]) => AuthModelBase;
|
|
8325
|
-
/**
|
|
8806
|
+
/** Send the email verification yourself instead of the VerifyEmail notification (undefined restores the default). */
|
|
8326
8807
|
declare function sendEmailVerificationUsing(callback: ((user: MustVerifyEmail) => Promise<void>) | undefined): void;
|
|
8327
8808
|
/** Sends a notification through user.notify() (the Notifications mixin), else the NotificationDispatcher token. */
|
|
8328
8809
|
declare function sendNotification(user: unknown, notification: Notification): Promise<void>;
|
|
@@ -8345,6 +8826,7 @@ declare function AuthenticatableModel<TBase extends AuthModelConstructor>(Base:
|
|
|
8345
8826
|
hasVerifiedEmail(): boolean;
|
|
8346
8827
|
markEmailAsVerified(): Promise<boolean>;
|
|
8347
8828
|
getEmailForVerification(): string;
|
|
8829
|
+
/** Sends the VerifyEmail notification (a signed link), or what sendEmailVerificationUsing() configured. */
|
|
8348
8830
|
sendEmailVerificationNotification(): Promise<void>;
|
|
8349
8831
|
getKey(): unknown;
|
|
8350
8832
|
getKeyName(): string;
|
|
@@ -8630,6 +9112,42 @@ declare class AccessGate implements Gate$1 {
|
|
|
8630
9112
|
getPolicyFor(target: unknown): PolicyClass | undefined;
|
|
8631
9113
|
}
|
|
8632
9114
|
|
|
9115
|
+
type AuthorizableConstructor = new (...args: any[]) => Authenticatable;
|
|
9116
|
+
/**
|
|
9117
|
+
* Laravel's Authorizable trait: `user.can('update', post)` asks the Gate about this user (Gate.forUser), whoever is
|
|
9118
|
+
* signed in. `class User extends Authorizable(AuthenticatableModel(Model)) {}`.
|
|
9119
|
+
*/
|
|
9120
|
+
declare function Authorizable<TBase extends AuthorizableConstructor>(Base: TBase): {
|
|
9121
|
+
new (...args: any[]): {
|
|
9122
|
+
/** Whether the user has the ability (every one, for a list); the arguments go to the policy or ability callback. */
|
|
9123
|
+
can(abilities: string | readonly string[], ...args: unknown[]): Promise<boolean>;
|
|
9124
|
+
/** Whether the user has any of the abilities. */
|
|
9125
|
+
canAny(abilities: string | readonly string[], ...args: unknown[]): Promise<boolean>;
|
|
9126
|
+
/** Whether the user lacks the ability (any one, for a list). */
|
|
9127
|
+
cant(abilities: string | readonly string[], ...args: unknown[]): Promise<boolean>;
|
|
9128
|
+
/** The same as cant(). */
|
|
9129
|
+
cannot(abilities: string | readonly string[], ...args: unknown[]): Promise<boolean>;
|
|
9130
|
+
getAuthIdentifierName(): string;
|
|
9131
|
+
getAuthIdentifier(): unknown;
|
|
9132
|
+
getAuthPassword(): string;
|
|
9133
|
+
getRememberToken(): string | undefined;
|
|
9134
|
+
setRememberToken(value: string): void;
|
|
9135
|
+
getRememberTokenName(): string;
|
|
9136
|
+
};
|
|
9137
|
+
} & TBase;
|
|
9138
|
+
|
|
9139
|
+
/**
|
|
9140
|
+
* The framework's base controller, with Laravel's AuthorizesRequests: `await this.authorize('update', post)` throws an
|
|
9141
|
+
* AuthorizationError (403, or the status the policy chose) unless the signed-in user may. The app's
|
|
9142
|
+
* `app/Http/Controllers/Controller.ts` extends it.
|
|
9143
|
+
*/
|
|
9144
|
+
declare abstract class Controller {
|
|
9145
|
+
/** Authorizes the ability for the signed-in user (the Gate's authorize()). */
|
|
9146
|
+
protected authorize(ability: string, ...args: unknown[]): Promise<void>;
|
|
9147
|
+
/** Authorizes the ability for the given user (Gate.forUser(user).authorize()). */
|
|
9148
|
+
protected authorizeForUser(user: Authenticatable | undefined, ability: string, ...args: unknown[]): Promise<void>;
|
|
9149
|
+
}
|
|
9150
|
+
|
|
8633
9151
|
/**
|
|
8634
9152
|
* Laravel's Authorize middleware (`can:update,post`). Each extra parameter is a quoted literal ('"draft"'), else the
|
|
8635
9153
|
* route parameter of that name (the bound model), else the name itself (a model name such as `Post`, which selects
|
|
@@ -9056,6 +9574,11 @@ interface OrielError$6 extends Error {
|
|
|
9056
9574
|
|
|
9057
9575
|
/** Options a job class may declare as public fields. Their presence (or implementing ShouldQueue) makes things queueable. */
|
|
9058
9576
|
interface ShouldQueue$3 {
|
|
9577
|
+
/**
|
|
9578
|
+
* Marks the class as queued at run time: `implements ShouldQueue` leaves no trace once compiled, so the interface
|
|
9579
|
+
* asks for `readonly shouldQueue = true`. Jobs, listeners, mailables and notifications carrying it are queued.
|
|
9580
|
+
*/
|
|
9581
|
+
readonly shouldQueue: true;
|
|
9059
9582
|
connection?: string;
|
|
9060
9583
|
queue?: string;
|
|
9061
9584
|
/** Seconds. */
|
|
@@ -9234,15 +9757,15 @@ declare class Dispatcher$1 implements EventDispatcher {
|
|
|
9234
9757
|
declare const QUEUE_OPTION_KEYS: readonly ["connection", "queue", "delay", "tries", "backoff", "timeout"];
|
|
9235
9758
|
type QueueOptionKey = (typeof QUEUE_OPTION_KEYS)[number];
|
|
9236
9759
|
/**
|
|
9237
|
-
* Whether a listener opts into queueing
|
|
9238
|
-
*
|
|
9239
|
-
*
|
|
9240
|
-
*
|
|
9241
|
-
*
|
|
9242
|
-
*
|
|
9243
|
-
*
|
|
9244
|
-
*
|
|
9245
|
-
* (not instead of it), so an existing `static queue = '...'` listener still works.
|
|
9760
|
+
* Whether a listener opts into queueing, like the Queue/Bus protocol's own `isQueueable(job)`: ShouldQueue's
|
|
9761
|
+
* `shouldQueue: true`, the SHOULD_QUEUE symbol, an option, or a `uniqueId`/`retryUntil` method. Unlike a job (already
|
|
9762
|
+
* an instance by the time Bus sees it), a listener is a *class* registered with `listen()`, so Events must build it
|
|
9763
|
+
* first — `this.container.make(cls)` is cheap and side-effect-free for listener classes, which have DI-only
|
|
9764
|
+
* constructors — and then applies the protocol rule to that instance: the marker (readable off the instance through
|
|
9765
|
+
* the prototype chain), an **instance** option field with a defined value, or an instance `uniqueId`/`retryUntil`
|
|
9766
|
+
* method — the same fields Mail's and Notifications' `isQueueableMailable`/equivalent read. A **static** field or
|
|
9767
|
+
* method on the class (`shouldQueue`, an option, `uniqueId`/`retryUntil`) counts too, as an extra on top of the
|
|
9768
|
+
* protocol rule (not instead of it), so an existing `static queue = '...'` listener still works.
|
|
9246
9769
|
*/
|
|
9247
9770
|
declare function isQueueableListener(cls: Class$6<unknown>, instance: object): boolean;
|
|
9248
9771
|
/**
|
|
@@ -9405,6 +9928,18 @@ interface CacheManager$2 extends CacheRepository$1 {
|
|
|
9405
9928
|
extend(driver: string, factory: (config: Record<string, unknown>) => CacheRepository$1): void;
|
|
9406
9929
|
}
|
|
9407
9930
|
declare const CacheManager$2: Token$j<CacheManager$2>;
|
|
9931
|
+
/** Laravel's RateLimiter: hits per key, kept in the default cache store. */
|
|
9932
|
+
interface RateLimiter$1 {
|
|
9933
|
+
tooManyAttempts(key: string, maxAttempts: number): Promise<boolean>;
|
|
9934
|
+
/** Adds a hit; the window starts at the first hit and lasts `decaySeconds` (default 60). Returns the hit count. */
|
|
9935
|
+
hit(key: string, decaySeconds?: number): Promise<number>;
|
|
9936
|
+
attempts(key: string): Promise<number>;
|
|
9937
|
+
remaining(key: string, maxAttempts: number): Promise<number>;
|
|
9938
|
+
/** Seconds until the key's window resets. */
|
|
9939
|
+
availableIn(key: string): Promise<number>;
|
|
9940
|
+
clear(key: string): Promise<void>;
|
|
9941
|
+
}
|
|
9942
|
+
declare const RateLimiter$1: Token$j<RateLimiter$1>;
|
|
9408
9943
|
|
|
9409
9944
|
declare abstract class ServiceProvider$8 implements ServiceProvider$u {
|
|
9410
9945
|
protected readonly app: Application$c;
|
|
@@ -9771,7 +10306,28 @@ declare class CacheManager$1 implements CacheManager$2 {
|
|
|
9771
10306
|
tags(names: string | string[]): CacheRepository$1;
|
|
9772
10307
|
}
|
|
9773
10308
|
|
|
10309
|
+
/**
|
|
10310
|
+
* Laravel's Illuminate\Cache\RateLimiter over a cache store: `<key>` holds the hit count and `<key>:timer` the unix
|
|
10311
|
+
* time the window ends, both expiring with the window. The store is resolved on every call, so a store swapped in
|
|
10312
|
+
* a test (or config changed at run time) is the one used.
|
|
10313
|
+
*/
|
|
10314
|
+
declare class CacheRateLimiter implements RateLimiter$1 {
|
|
10315
|
+
#private;
|
|
10316
|
+
private readonly store;
|
|
10317
|
+
constructor(store: () => CacheRepository$1);
|
|
10318
|
+
tooManyAttempts(key: string, maxAttempts: number): Promise<boolean>;
|
|
10319
|
+
hit(key: string, decaySeconds?: number): Promise<number>;
|
|
10320
|
+
attempts(key: string): Promise<number>;
|
|
10321
|
+
remaining(key: string, maxAttempts: number): Promise<number>;
|
|
10322
|
+
availableIn(key: string): Promise<number>;
|
|
10323
|
+
clear(key: string): Promise<void>;
|
|
10324
|
+
/** Laravel's cleanRateLimiterKey(): accented letters become their plain letter ('zoë' and 'zoe' share a key). */
|
|
10325
|
+
protected cleanKey(key: string): string;
|
|
10326
|
+
}
|
|
10327
|
+
|
|
9774
10328
|
declare const Cache: Facade<CacheManager$2, object>;
|
|
10329
|
+
/** The RateLimiter facade: RateLimiter.tooManyAttempts(key, 5), RateLimiter.hit(key), RateLimiter.clear(key). */
|
|
10330
|
+
declare const RateLimiter: Facade<RateLimiter$1, object>;
|
|
9775
10331
|
declare function cache(): CacheManager$2;
|
|
9776
10332
|
declare function cache(key: string): Promise<unknown>;
|
|
9777
10333
|
declare function cache(values: Record<string, unknown>, ttlSeconds?: number): Promise<boolean>;
|
|
@@ -9815,6 +10371,16 @@ interface Container$4 {
|
|
|
9815
10371
|
run<R>(fn: () => R): R;
|
|
9816
10372
|
}
|
|
9817
10373
|
declare const Container$4: Token$4<Container$4>;
|
|
10374
|
+
interface UploadedFile$1 {
|
|
10375
|
+
readonly clientName: string;
|
|
10376
|
+
readonly mimeType: string;
|
|
10377
|
+
readonly size: number;
|
|
10378
|
+
extension(): string;
|
|
10379
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
|
10380
|
+
/** Stores on a Filesystem disk. Returns the stored path. */
|
|
10381
|
+
store(directory: string, disk?: string): Promise<string>;
|
|
10382
|
+
storeAs(directory: string, name: string, disk?: string): Promise<string>;
|
|
10383
|
+
}
|
|
9818
10384
|
|
|
9819
10385
|
interface ServiceProvider$7 {
|
|
9820
10386
|
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
@@ -9856,16 +10422,6 @@ interface Application$2 extends Container$4 {
|
|
|
9856
10422
|
terminate(): Promise<void>;
|
|
9857
10423
|
}
|
|
9858
10424
|
declare const Application$2: Token$j<Application$2>;
|
|
9859
|
-
interface UploadedFile$1 {
|
|
9860
|
-
readonly clientName: string;
|
|
9861
|
-
readonly mimeType: string;
|
|
9862
|
-
readonly size: number;
|
|
9863
|
-
extension(): string;
|
|
9864
|
-
arrayBuffer(): Promise<ArrayBuffer>;
|
|
9865
|
-
/** Stores on a Filesystem disk. Returns the stored path. */
|
|
9866
|
-
store(directory: string, disk?: string): Promise<string>;
|
|
9867
|
-
storeAs(directory: string, name: string, disk?: string): Promise<string>;
|
|
9868
|
-
}
|
|
9869
10425
|
|
|
9870
10426
|
type ErrorKind$4 = 'Http' | 'Server' | 'ModelNotFound' | 'Validation' | 'Authentication' | 'Authorization' | 'TokenMismatch' | 'BindingResolution' | 'CircularDependency' | 'ContainerNotAvailable';
|
|
9871
10427
|
/** Every error thrown by the framework implements this. The exception handler switches on `kind`. */
|
|
@@ -10123,9 +10679,17 @@ declare class S3Filesystem implements Filesystem {
|
|
|
10123
10679
|
get(path: string): Promise<string>;
|
|
10124
10680
|
getBytes(path: string): Promise<Uint8Array>;
|
|
10125
10681
|
readStream(path: string): Promise<ReadableStream<Uint8Array>>;
|
|
10682
|
+
/** Sends the type of the path when the options name none (Laravel's S3 adapter detects one too). */
|
|
10126
10683
|
put(path: string, contents: string | Uint8Array | ReadableStream<Uint8Array>, options?: PutOptions): Promise<boolean>;
|
|
10127
10684
|
putFile(directory: string, file: UploadedFile$1, options?: PutOptions): Promise<string>;
|
|
10685
|
+
/**
|
|
10686
|
+
* Sends the upload's own type: its extension(), which follows what a request upload's bytes show (the client's claim
|
|
10687
|
+
* counts only where extension() keeps it). Never the MIME type the client sent as such, nor the name it is stored
|
|
10688
|
+
* under (an app may name it after the client's file name): S3, or a CDN in front of it, serves the object with this
|
|
10689
|
+
* type. An upload of no known type is sent with none (served as binary).
|
|
10690
|
+
*/
|
|
10128
10691
|
putFileAs(directory: string, file: UploadedFile$1, name: string, options?: PutOptions): Promise<string>;
|
|
10692
|
+
private putObject;
|
|
10129
10693
|
delete(paths: string | string[]): Promise<boolean>;
|
|
10130
10694
|
copy(from: string, to: string): Promise<boolean>;
|
|
10131
10695
|
move(from: string, to: string): Promise<boolean>;
|
|
@@ -10322,6 +10886,8 @@ interface ModelInstance {
|
|
|
10322
10886
|
getTable(): string;
|
|
10323
10887
|
getRouteKey(): unknown;
|
|
10324
10888
|
getRouteKeyName(): string;
|
|
10889
|
+
/** The value stored in a polymorphic `*_type` column for this model: its morph map alias, else its class name. */
|
|
10890
|
+
getMorphClass(): string;
|
|
10325
10891
|
getAttribute<T = unknown>(key: string): T;
|
|
10326
10892
|
setAttribute(key: string, value: unknown): this;
|
|
10327
10893
|
fill(attributes: Row): this;
|
|
@@ -10334,6 +10900,11 @@ interface ModelInstance {
|
|
|
10334
10900
|
|
|
10335
10901
|
/** Options a job class may declare as public fields. Their presence (or implementing ShouldQueue) makes things queueable. */
|
|
10336
10902
|
interface ShouldQueue$2 {
|
|
10903
|
+
/**
|
|
10904
|
+
* Marks the class as queued at run time: `implements ShouldQueue` leaves no trace once compiled, so the interface
|
|
10905
|
+
* asks for `readonly shouldQueue = true`. Jobs, listeners, mailables and notifications carrying it are queued.
|
|
10906
|
+
*/
|
|
10907
|
+
readonly shouldQueue: true;
|
|
10337
10908
|
connection?: string;
|
|
10338
10909
|
queue?: string;
|
|
10339
10910
|
/** Seconds. */
|
|
@@ -11167,6 +11738,11 @@ interface OrielError$2 extends Error {
|
|
|
11167
11738
|
|
|
11168
11739
|
/** Options a job class may declare as public fields. Their presence (or implementing ShouldQueue) makes things queueable. */
|
|
11169
11740
|
interface ShouldQueue$1 {
|
|
11741
|
+
/**
|
|
11742
|
+
* Marks the class as queued at run time: `implements ShouldQueue` leaves no trace once compiled, so the interface
|
|
11743
|
+
* asks for `readonly shouldQueue = true`. Jobs, listeners, mailables and notifications carrying it are queued.
|
|
11744
|
+
*/
|
|
11745
|
+
readonly shouldQueue: true;
|
|
11170
11746
|
connection?: string;
|
|
11171
11747
|
queue?: string;
|
|
11172
11748
|
/** Seconds. */
|
|
@@ -11339,8 +11915,9 @@ interface UniqueLockSpec {
|
|
|
11339
11915
|
untilProcessing: boolean;
|
|
11340
11916
|
}
|
|
11341
11917
|
/**
|
|
11342
|
-
* Whether dispatch() queues the job: it carries
|
|
11343
|
-
*
|
|
11918
|
+
* Whether dispatch() queues the job: it carries ShouldQueue's `shouldQueue: true` (a `readonly shouldQueue = true`
|
|
11919
|
+
* field, or the Queueable base class's getter), the SHOULD_QUEUE symbol, a value for any ShouldQueue option, or
|
|
11920
|
+
* defines uniqueId()/retryUntil().
|
|
11344
11921
|
*/
|
|
11345
11922
|
declare function isQueueable(job: unknown): boolean;
|
|
11346
11923
|
/** Laravel's ShouldBeUnique: the job defines uniqueId(), uniqueFor, uniqueUntilProcessing or uniqueVia(). */
|
|
@@ -11497,7 +12074,9 @@ declare abstract class Dispatchable implements Job$1 {
|
|
|
11497
12074
|
* A queued job: Laravel's `implements ShouldQueue` + `use Queueable`. `dispatch()` pushes it onto the queue.
|
|
11498
12075
|
* The marker lives on the prototype, so it is never serialized.
|
|
11499
12076
|
*/
|
|
11500
|
-
declare abstract class Queueable extends Dispatchable {
|
|
12077
|
+
declare abstract class Queueable extends Dispatchable implements ShouldQueue$1 {
|
|
12078
|
+
/** ShouldQueue's marker, so subclasses may write `implements ShouldQueue` without the field. */
|
|
12079
|
+
get shouldQueue(): true;
|
|
11501
12080
|
}
|
|
11502
12081
|
|
|
11503
12082
|
/** Laravel's dispatch() helper: queued when the job is queueable, else run now. Dispatched once, awaited or not. */
|
|
@@ -11558,6 +12137,11 @@ interface OrielError$1 extends Error {
|
|
|
11558
12137
|
|
|
11559
12138
|
/** Options a job class may declare as public fields. Their presence (or implementing ShouldQueue) makes things queueable. */
|
|
11560
12139
|
interface ShouldQueue {
|
|
12140
|
+
/**
|
|
12141
|
+
* Marks the class as queued at run time: `implements ShouldQueue` leaves no trace once compiled, so the interface
|
|
12142
|
+
* asks for `readonly shouldQueue = true`. Jobs, listeners, mailables and notifications carrying it are queued.
|
|
12143
|
+
*/
|
|
12144
|
+
readonly shouldQueue: true;
|
|
11561
12145
|
connection?: string;
|
|
11562
12146
|
queue?: string;
|
|
11563
12147
|
/** Seconds. */
|
|
@@ -11879,6 +12463,17 @@ declare class MailServiceProvider extends ServiceProvider$2 {
|
|
|
11879
12463
|
register(): void;
|
|
11880
12464
|
}
|
|
11881
12465
|
|
|
12466
|
+
/**
|
|
12467
|
+
* Laravel's Notifiable trait: RoutesNotifications (notify(), notifyNow(), routeNotificationFor()) and
|
|
12468
|
+
* HasDatabaseNotifications (notifications(), unreadNotifications(), readNotifications()).
|
|
12469
|
+
* `class User extends Notifiable(AuthenticatableModel(Model)) {}`.
|
|
12470
|
+
*/
|
|
12471
|
+
declare function Notifiable<TBase extends ModelConstructor>(Base: TBase): (new (...args: any[]) => {
|
|
12472
|
+
routeNotificationFor(channel: string, notification: Notification$4): unknown;
|
|
12473
|
+
notify(notification: Notification$4): Promise<void>;
|
|
12474
|
+
notifyNow(notification: Notification$4, channels?: string[]): Promise<void>;
|
|
12475
|
+
}) & TBase & (new (...args: any[]) => HasDatabaseNotificationsModel);
|
|
12476
|
+
|
|
11882
12477
|
/** A typed, runtime-unique key for container bindings. */
|
|
11883
12478
|
interface Token<T> {
|
|
11884
12479
|
readonly id: symbol;
|
|
@@ -11915,54 +12510,6 @@ interface Container {
|
|
|
11915
12510
|
}
|
|
11916
12511
|
declare const Container: Token<Container>;
|
|
11917
12512
|
|
|
11918
|
-
interface ServiceProvider$1 {
|
|
11919
|
-
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
11920
|
-
register?(): void;
|
|
11921
|
-
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
11922
|
-
boot?(): void | Promise<void>;
|
|
11923
|
-
}
|
|
11924
|
-
type ServiceProviderClass = new (app: Application) => ServiceProvider$1;
|
|
11925
|
-
interface Application extends Container {
|
|
11926
|
-
readonly version: string;
|
|
11927
|
-
basePath(path?: string): string;
|
|
11928
|
-
appPath(path?: string): string;
|
|
11929
|
-
bootstrapPath(path?: string): string;
|
|
11930
|
-
configPath(path?: string): string;
|
|
11931
|
-
databasePath(path?: string): string;
|
|
11932
|
-
publicPath(path?: string): string;
|
|
11933
|
-
resourcePath(path?: string): string;
|
|
11934
|
-
storagePath(path?: string): string;
|
|
11935
|
-
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
11936
|
-
environment(): string;
|
|
11937
|
-
environment(...environments: string[]): boolean;
|
|
11938
|
-
isProduction(): boolean;
|
|
11939
|
-
isLocal(): boolean;
|
|
11940
|
-
runningInConsole(): boolean;
|
|
11941
|
-
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
11942
|
-
setRunningInConsole(value?: boolean): void;
|
|
11943
|
-
runningUnitTests(): boolean;
|
|
11944
|
-
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
11945
|
-
register(provider: ServiceProvider$1 | ServiceProviderClass): Promise<ServiceProvider$1>;
|
|
11946
|
-
getProviders(): ServiceProvider$1[];
|
|
11947
|
-
boot(): Promise<void>;
|
|
11948
|
-
isBooted(): boolean;
|
|
11949
|
-
booting(callback: (app: Application) => void | Promise<void>): void;
|
|
11950
|
-
booted(callback: (app: Application) => void | Promise<void>): void;
|
|
11951
|
-
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
11952
|
-
handle(request: Request): Promise<Response>;
|
|
11953
|
-
/** Register a callback that terminate() runs, in registration order. */
|
|
11954
|
-
terminating(callback: () => void | Promise<void>): void;
|
|
11955
|
-
terminate(): Promise<void>;
|
|
11956
|
-
}
|
|
11957
|
-
declare const Application: Token$j<Application>;
|
|
11958
|
-
interface Htmlable {
|
|
11959
|
-
toHtml(): string;
|
|
11960
|
-
}
|
|
11961
|
-
/** Anything a controller can return that knows how to become a Response. */
|
|
11962
|
-
interface Responsable {
|
|
11963
|
-
toResponse(request: unknown): Response | Promise<Response>;
|
|
11964
|
-
}
|
|
11965
|
-
|
|
11966
12513
|
/** The session of the current request (scoped). Loaded and saved by the StartSession middleware. */
|
|
11967
12514
|
interface Session {
|
|
11968
12515
|
getId(): string;
|
|
@@ -12025,6 +12572,8 @@ interface HttpRequest {
|
|
|
12025
12572
|
header(name: string, defaultValue: string): string;
|
|
12026
12573
|
bearerToken(): string | undefined;
|
|
12027
12574
|
ip(): string | undefined;
|
|
12575
|
+
/** The raw body as text (Laravel's getContent()); '' when there is none. */
|
|
12576
|
+
content(): string;
|
|
12028
12577
|
expectsJson(): boolean;
|
|
12029
12578
|
ajax(): boolean;
|
|
12030
12579
|
query<T = unknown>(key?: string, defaultValue?: T): T;
|
|
@@ -12056,6 +12605,54 @@ interface Middleware {
|
|
|
12056
12605
|
handle(request: HttpRequest, next: Next, ...parameters: string[]): Promise<Response>;
|
|
12057
12606
|
terminate?(request: HttpRequest, response: Response): Promise<void>;
|
|
12058
12607
|
}
|
|
12608
|
+
|
|
12609
|
+
interface ServiceProvider$1 {
|
|
12610
|
+
/** Bind things into the container. Synchronous. Don't resolve other services here. */
|
|
12611
|
+
register?(): void;
|
|
12612
|
+
/** Runs after every provider is registered. May be async (e.g. importing route files). */
|
|
12613
|
+
boot?(): void | Promise<void>;
|
|
12614
|
+
}
|
|
12615
|
+
type ServiceProviderClass = new (app: Application) => ServiceProvider$1;
|
|
12616
|
+
interface Application extends Container {
|
|
12617
|
+
readonly version: string;
|
|
12618
|
+
basePath(path?: string): string;
|
|
12619
|
+
appPath(path?: string): string;
|
|
12620
|
+
bootstrapPath(path?: string): string;
|
|
12621
|
+
configPath(path?: string): string;
|
|
12622
|
+
databasePath(path?: string): string;
|
|
12623
|
+
publicPath(path?: string): string;
|
|
12624
|
+
resourcePath(path?: string): string;
|
|
12625
|
+
storagePath(path?: string): string;
|
|
12626
|
+
/** With no args returns the environment name. With args returns whether it matches any of them. */
|
|
12627
|
+
environment(): string;
|
|
12628
|
+
environment(...environments: string[]): boolean;
|
|
12629
|
+
isProduction(): boolean;
|
|
12630
|
+
isLocal(): boolean;
|
|
12631
|
+
runningInConsole(): boolean;
|
|
12632
|
+
/** Mark the app as running in the console (the CLI entry point calls this). Defaults to true. */
|
|
12633
|
+
setRunningInConsole(value?: boolean): void;
|
|
12634
|
+
runningUnitTests(): boolean;
|
|
12635
|
+
/** Registers the provider. If the app is already booted, the provider is booted immediately. */
|
|
12636
|
+
register(provider: ServiceProvider$1 | ServiceProviderClass): Promise<ServiceProvider$1>;
|
|
12637
|
+
getProviders(): ServiceProvider$1[];
|
|
12638
|
+
boot(): Promise<void>;
|
|
12639
|
+
isBooted(): boolean;
|
|
12640
|
+
booting(callback: (app: Application) => void | Promise<void>): void;
|
|
12641
|
+
booted(callback: (app: Application) => void | Promise<void>): void;
|
|
12642
|
+
/** Handle one HTTP request in a fresh request scope via the bound HttpKernel. */
|
|
12643
|
+
handle(request: Request): Promise<Response>;
|
|
12644
|
+
/** Register a callback that terminate() runs, in registration order. */
|
|
12645
|
+
terminating(callback: () => void | Promise<void>): void;
|
|
12646
|
+
terminate(): Promise<void>;
|
|
12647
|
+
}
|
|
12648
|
+
declare const Application: Token$j<Application>;
|
|
12649
|
+
interface Htmlable {
|
|
12650
|
+
toHtml(): string;
|
|
12651
|
+
}
|
|
12652
|
+
/** Anything a controller can return that knows how to become a Response. */
|
|
12653
|
+
interface Responsable {
|
|
12654
|
+
toResponse(request: unknown): Response | Promise<Response>;
|
|
12655
|
+
}
|
|
12059
12656
|
interface RedirectResponse extends Responsable {
|
|
12060
12657
|
readonly targetUrl: string;
|
|
12061
12658
|
with(key: string | Record<string, unknown>, value?: unknown): this;
|
|
@@ -12663,4 +13260,4 @@ type SharedPropsFrom<M> = M extends {
|
|
|
12663
13260
|
share(...args: never[]): infer R;
|
|
12664
13261
|
} ? SerializedObject<Awaited<R>> : Record<never, never>;
|
|
12665
13262
|
|
|
12666
|
-
export { API_ROUTES_STUB, AboutCommand, AbstractPaginator, AccessGate, AddQueuedCookiesToResponse, type AfterCallback, AllMailersFailedError, AlwaysProp, AnonymousNotifiable, Application$9 as Application, ApplicationBuilder, ArgonHasher, type ArgonOptions, type ArgumentDefinition, Arr, ArraySessionHandler, ArrayTransport, Artisan, Attempting, type Attributes$1 as Attributes, type AttributesResolver, Auth, AuthManager, type AuthModel, type AuthModelBase, type AuthModelConstructor, AuthServiceProvider, AuthenticatableModel, Authenticate, AuthenticationError, AuthorizationError, AuthorizationErrorImpl, Authorize, BaseJob, BaseLogger, BasePipeline, BaseRouter, BaseUrlGenerator, Batch$1 as Batch, type BatchAttributes, BatchingUnavailableError, BcryptHasher, type BcryptOptions, type BeforeCallback, BelongsTo, BelongsToMany, BindingResolutionError, Blueprint, type BlueprintCommand, BufferedConsoleOutput, Builder, type BuiltInCast, type BuiltinRule, BuiltinRuleObject, type BunDatabase, BunSqliteDatabase, type BunStatement, Bus, Dispatcher as BusDispatcherImpl, BusError, BusServiceProvider, CACHE_TABLE_MIGRATION, CHAIN, Cache, CacheManager$1 as CacheManager, Repository as CacheRepositoryImpl, CacheServiceProvider, type Store as CacheStore, CallQueuedHandler, CallQueuedListener, type CanResetPassword, type CanResetPasswordUser, type CastDefinition, type CastsAttributes, type ChainSpec, type CipherName, CircularDependencyError, ClassRegistry$2 as ClassRegistry, ClosureCommand$4 as ClosureCommand, ClosureKernel, Collection$2 as Collection, type Column, type ColumnAttributes, ColumnDefinition, type ColumnInfo, type ColumnRef, type ColumnType, Command$4 as Command, CommandNotFoundError, ComponentNotFoundError, Connection, type ConsoleInput, type ConsoleIo, Kernel as ConsoleKernelImpl, type ConsoleOutput, ConsoleServiceProvider, Container$j as Container, ContainerNotAvailableError, ControllerMethodNotFoundError, ConvertEmptyStringsToNull, Cookie$1 as Cookie, type CookieDefaults, CookieJar$1 as CookieJar, CookieServiceProvider, CookieSessionHandler, CookieValuePrefix, type CreateMigrationOptions, Crypt, Cursor, type CursorPage, CursorPaginator, type CursorPaginatorOptions, DB, DEFAULT_MESSAGES, DailyRotatingStream, DatabaseBatchRepository, type DatabaseCommandContext, type DatabaseConfig, DatabaseConfigError, DatabaseError, DatabaseFailedJobProvider, DatabaseJob, type DatabaseJobRecord, DatabaseLock, DatabaseManagerImpl, DatabaseNotificationChannel, type DatabaseNotificationRecord, DatabaseQueue, type DatabaseQueueOptions, DatabaseServiceProvider, DatabaseSessionHandler, DatabaseStore, DatabaseTokenRepository, DatabaseUnavailableError, DecryptError, DeferProp, type Direction, Dispatchable, type EagerLoadSpec, EloquentUserProvider, type Encoded, EncryptCookies, EncryptError, EncryptHistory, Encrypter$2 as Encrypter, EncryptionServiceProvider, EnsureEmailIsVerified, type EnumLike, type ErrorClass, ErrorHandler, Event, Dispatcher$1 as EventDispatcherImpl, type EventKey, type EventListenMap, EventServiceProvider, EventsNeedBusDispatcherError, EventsNeedClassRegistryError, ExceptionsConfiguration, Expression, type Facade$c as Facade, type FacadeStatics$c as FacadeStatics, Factory$b as Factory, type FactoryResult, Failed, FailoverTransport, Faker, FakerOverflowError, FileNotFoundError, FileSessionHandler, FileStore, FilesystemManager, FilesystemServiceProvider, ForeignIdColumnDefinition, ForeignKeyDefinition, FormRequest, FormUploadedFile, Gate, type GateAbility, GateResponse, GeneratorCommand, GenericLock, type GlobalScope, Grammar, type GroupAttributes, type GroupHost, GroupRegistrar, type GuardFactory, HasApiTokens, HasMany, HasManyThrough, HasOne, HasOneOrMany, Hash, HashAlgorithmError, type HashInfo, HashManager, type HasherFactory, type HashingConfig, HashingServiceProvider, type Having, HelpCommand, type HttpCommandOptions, HttpException, Kernel$1 as HttpKernelImpl, HttpRedirectResponse, HttpRedirector, HttpResponseException, HttpResponseFactory, HttpServerError, HttpServiceProvider, Hub, IncomingRequest, type IncomingRequestOptions, type IndexType, Inertia, InertiaError, InertiaHtml, InertiaMiddleware, Response$1 as InertiaPageResponse, ResponseFactory as InertiaResponseFactory, InertiaServiceProvider, type ValidationErrors as InertiaValidationErrors, type InferRuleType, type InferValidatedType, InvalidCacheConfigError, InvalidCastError, InvalidListenerError, InvalidLogLevelError, InvalidRuleParameterError, InvalidSignatureError, JOBS_TABLE_MIGRATION, JobClassNotFoundError, type JobContext, type JobMiddleware, JobSerializationError, JoinClause, type JoinType, KEY_GENERATE_SIGNATURE, type KernelApp, type KeyGenerateIO, LEVEL_SEVERITY, LazyCollection$1 as LazyCollection, type LengthAwarePage, LengthAwarePaginator, ListCommand, type ListenerTuple, type LocalDiskConfig, LocalFilesystem, type LockFactory, LockTimeoutError, Log, LogChannelCycleError, LogManager, LogServiceProvider, LogTransport, type LoggedQuery, LogicError, Login, Logout, MIGRATION_CREATE_STUB, MIGRATION_STUB, MIGRATION_UPDATE_STUB, MODEL_EVENTS, Mail, MailManager, MailMessage, type MailMessageAction, MailNotificationChannel, MailQueueUnavailableError, MailServiceProvider, type MailTransporter, MailUnavailableError, Mailable, MailerImpl, MakeCastCommand, MakeCommandCommand, MakeControllerCommand, MakeEventCommand, MakeFactoryCommand, MakeJobCommand, MakeListenerCommand, MakeMailCommand, MakeMiddlewareCommand, MakeModelCommand, MakeNotificationCommand, MakeObserverCommand, MakePolicyCommand, MakeProviderCommand, MakeRequestCommand, MakeResourceCommand, MakeRuleCommand, MakeSeederCommand, MakeTestCommand, type Manifest, type ManifestChunk, ManuallyFailedError, type Many, MassAssignmentError, MaxAttemptsExceededError, MemoryStore, MergeProp, MessageBagImpl, MethodNotAllowedHttpError, MiddlewareConfiguration, MiddlewareNotFoundError, Migration, MigrationCreator, type MigrationRecord, MigrationRepository, type MigrationStatus, Migrator, type MigratorOptions, MissingAppKeyError, MissingModelError, MissingRecipientError, Model, type ModelBuilder, type ModelClass, type ModelEvent, type ModelListener, ModelNotFoundError$1 as ModelNotFoundError, ModelRegistry, type MorphConstraint, MorphMany, MorphOne, MorphTo, MySqlSchemaGrammar, NOTIFICATIONS_TABLE, NOTIFICATIONS_TABLE_MIGRATION, type NewAccessToken, NodeConsoleInput, NodeConsoleOutput, NotDatabaseNotifiableError, NotFoundHttpError, Notifiable$1 as Notifiable, type NotifiableConstructor, Notification$1 as Notification, Dispatcher$2 as NotificationDispatcherImpl, NotificationDispatcherUnavailableError, NotificationFacade, NotificationQueueUnavailableError, NotificationsServiceProvider, NullFailedJobProvider, NullLogger, NullQueue, OPERATORS, OnceProp, type OptionDefinition, type OptionValue$4 as OptionValue, OptionalProp, type Order, PERSONAL_ACCESS_TOKENS_MIGRATION, type PagePropsFrom, type PaginationLink, Paginator, type PaginatorOptions, type ParsedInput, type ParsedRule, type ParsedSetCookie, type ParsedSignature, Password, PasswordBroker, PasswordBrokerManager, PasswordReset, PathTraversalError, PendingBatch, PendingChain, PendingDispatch, PersonalAccessToken, PinoLogger, PipelineError, PipelineServiceProvider, Pivot, type PivotIds, type PlainNotificationMail, type PolicyClass, PostgresSchemaGrammar, type PreloadAttributesResolver, PropsResolver, ProviderBootError, ProviderRegisterError, QUEUE_JOB, Builder$1 as QueryBuilder, QueryError, Queue$1 as Queue, QueueBase, type QueueCommandContext, QueueError, type QueueJobPayload, QueueManager, QueueServiceProvider, QueueUnavailableError, Queueable, QueuedConsoleInput, QueuedMailSender, type QueuedMailableFactory, RESTART_CACHE_KEY, type RawResult, type RecipientOverrides, RedirectIfAuthenticated, RedisJob, RedisLock, RedisQueue, type RedisQueueOptions, RedisRepository, type RedisSessionClient, RedisSessionHandler, RedisStore, RedisTaggedStore, type ReferentialAction, type RegisteredModel, Relation, type RelationConstraint, type RelationNames, RelationNotFoundError, RelationNotLoadedError, type RelationValue, type RenderCallback, type RenderedContent, type ReplStarter, type ReportCallback, Repository$1 as Repository, ResetPassword, type ResetPasswordMail, type ResolvedMiddleware, type ResolvedServeOptions, type ResourceMethod, type ResourceRoute, type RollbackOptions, Route$1 as Route, type RouteAttributes, type RouteBinder, RouteDefinition, type RouteFileCallback, type RouteHandler, type RouteListFilters, type RouteListRow, RouteModelNotFoundError, RouteModelResolverImpl, RouteNotDefinedError, type RouteStage, RoutingError, type RoutingOptions, RoutingServiceProvider, Rule, type RuleContext, type RunningServer, type Runtime, type S3ClientLike, type S3DiskConfig, S3Filesystem, SSR_RENDER_FAILED, STORAGE_LINK_SIGNATURE, Schedule, ScheduleImpl, ScheduleListCommand, ScheduleNameRequiredError, ScheduleRunCommand, ScheduleWorkCommand, type ScheduleWorkOptions, ScheduledEventImpl, Schema, SchemaBuilder, SchemaBuilderToken, SchemaGrammar, type Scope, type ScopeCallback, type ScopeStatic, type Scopes, type ScrollMetadata, ScrollProp, Seeder, type SeederClass, type SelectColumn, SendQueuedMailable, SendQueuedNotifications, type Serialized, type SerializedObject, type ServeOptions, ServiceProvider$t as ServiceProvider, SessionFacade as Session, type SessionConfig, SessionGuard, type SessionGuardOptions, type SessionHandlerFactory, SessionManager, SessionMessageBag, SessionServiceProvider, Store$1 as SessionStore, type SharedPropsFrom, type SimplePage, type SmtpConfig, SmtpTransport, SoftDeletingScope, type SpawnResult, type Spawner, SqliteSchemaGrammar, SsrError, type SsrFailure, HttpGateway as SsrHttpGateway, type StackFrame, StackLogger, StartSession, type State, type StateContext, Storage, type StoredBatchOptions, Str, type StringPipeResolver, type SyncChanges, SyncJob, SyncQueue, type TagAttributes, TagsNotSupportedError, TestCommand, TimeoutExceededError, TinkerCommand, type TinkerOptions, type TinkerRepl, TokenGuard, type TokenGuardOptions, TokenMismatchError, TokenRepository, type TransporterFactory, TrimStrings, TypeGenerator, type TypeGeneratorOptions, type TypedRedirector, UNIQUE_LOCK, USERS_TABLE_MIGRATION, UniqueJobsNeedCacheError, UniqueLock, type UniqueLockSpec, UnknownCacheDriverError, UnknownCacheStoreError, UnknownDiskError, UnknownFilesystemDriverError, UnknownLogChannelError, UnknownLogDriverError, UnknownMailTransportError, UnknownMailerError, UnknownNotificationChannelError, UnknownQueueConnectionError, UnknownQueueDriverError, UnknownValidationRuleError, UnrenderableNotificationDataError, UnrenderableNotificationMailError, UnsupportedCipherError, UnsupportedOperationError, type UriParameter, UrlGenerationError, type UrlResolver, type UserProviderFactory, Validated, ValidationErrorImpl, ValidationFactoryImpl, ValidationServiceProvider, Validator, ValidatorImpl, VerifyCsrfToken, ViewFactoryUnavailableError, Vite, ViteError, ViteHtml, WORKER_DISCOVERY_DIRECTORIES, type Where, type WhereArgs, type WhereBoolean, WithoutOverlapping, Worker, type WorkerListener, type WorkerOptions, abort, abortIf, abortUnless, addApiRouting, allowGuests, app, applyExceptionCallbacks, applyMiddlewareCallbacks, applyReplacements, auth, back, bcrypt, builtinRules, bunRuntime, cache, castGet, castSet, classNameOf, clientAddress, collect, columnKey, compareRoutes, config, contentDisposition, cookie, createDailyChannel, createDialect, createPayload, createSingleChannel, createStderrChannel, createToken, csrfToken, currentContainer, currentLogContext, currentRequest, currentVite, databaseConfigDefaults, debugPage, decodePayload, decrypt, defaultAttributeName, defaultLockFactory, defaultProviders, defaultWorkerOptions, delaySeconds, describeError, deserialize, detectRuntime, discoverClasses, discoverFactories, discoverJobs, discoverListeners, discoverPolicies, dispatch, dispatchRoute, dispatchSync, encodePayload, encrypt, enumValues, env, errorBagFrom, errors, escapeHtml, event, expandWildcardKeys, extensionFromMime, facade, fake, fetchNotifications, filterRouteList, formatAddress, formatDate, formatDateTime, formatRouteList, formatTimestamp, fromEntries, generateAppKey, generateModelTypes, getMorphAlias, getMorphedModel, guessTable, hashInfo, healthResponse, inertia, inertiaBody, inertiaHead, inject, ipMatches, isBlank, isBun, isDateCast, isEmptyValue, isEquivalent, isJsonCast, isListenerClass, isListenerTuple, isModel, isQueueable, isQueueableListener, isUnique, isUploadedFileLike, joinDiskPath, keyGenerateHandler, loadRelations, loadRoutesFrom, logger, makeFailedJobProvider, meetsLevel, mergeGroup, mergeLogContext, mergeRecursive, migrationDatePrefix, minimalPage, modelEventName, morphMap, normalizeAddress, normalizeAddresses, normalizeBackoff, normalizeLists, normalizePath, normalizeUri, now, old, openSqlite, optionalCookieJar, optionalSession, orderForBindings, parseArgv, parseBracketKey, parseCookieHeader, parseDateTime, parseKey, parseParameters, parseRuleSpec, parseSignature, passwordVerify, prepareValue, queueConfigDefaults, queueOptionsOf, raw as rawSql, rawWithBindings, redirect, registerHttpCommands, registerKeyGenerateCommand, registerMigrationCommands, registerModelTypesCommand, registerQueueCommands, registerStorageLinkCommand, renderContent, renderError, request, requestScope, resolveArguments, resolveDiskPath, resolveMiddleware, resolveMorphClass, resolveOptions, resourceRoutes, response, restoreJob, restoreValue, retry, roundTrip, route, routeListRows, runConsole, runConsoleAndExit, runMiddleware, runSeeder, sanitize, sendEmailVerificationUsing, sendNotification, serialize, serializeContext, serializeCookie, serializeDate, serializeValue, serve, serveBun, serveNode, servePublicFile, session, setClientAddress, stackFrames, statusFor, statusText, storageLinkHandler, substituteBindings, suggest, summarizeValidation, tap, toNotifiableList, toResponse, toWebRequest, tokenableType, transformLeaves, url, usePaginationResolvers, validateRequiredArguments, value, vite, viteReactRefresh, withHeaders, workerOptionsFrom, writeResponse };
|
|
13263
|
+
export { API_ROUTES_STUB, AboutCommand, AbstractPaginator, AccessGate, AddQueuedCookiesToResponse, type AfterCallback, AllMailersFailedError, AlwaysProp, AnonymousNotifiable, Application$9 as Application, ApplicationBuilder, ArgonHasher, type ArgonOptions, type ArgumentDefinition, Arr, ArraySessionHandler, ArrayTransport, Artisan, Attempting, type Attributes$1 as Attributes, type AttributesResolver, Auth, AuthManager, type AuthModel, type AuthModelBase, type AuthModelConstructor, AuthServiceProvider, AuthenticatableModel, Authenticate, AuthenticationError, Authorizable, type AuthorizableConstructor, AuthorizationError, AuthorizationErrorImpl, Authorize, BaseJob, BaseLogger, BasePipeline, BaseRouter, BaseUrlGenerator, Batch$1 as Batch, type BatchAttributes, BatchingUnavailableError, BcryptHasher, type BcryptOptions, type BeforeCallback, BelongsTo, BelongsToMany, BindingResolutionError, Blueprint, type BlueprintCommand, BufferedConsoleOutput, Builder, type BuiltInCast, type BuiltinRule, BuiltinRuleObject, type BunDatabase, BunSqliteDatabase, type BunStatement, Bus, Dispatcher as BusDispatcherImpl, BusError, BusServiceProvider, CACHE_TABLE_MIGRATION, CHAIN, Cache, CacheManager$1 as CacheManager, CacheRateLimiter, Repository as CacheRepositoryImpl, CacheServiceProvider, type Store as CacheStore, CallQueuedHandler, CallQueuedListener, type CanResetPassword, type CanResetPasswordUser, type CastDefinition, type CastsAttributes, type ChainSpec, type CipherName, CircularDependencyError, ClassRegistry$2 as ClassRegistry, ClosureCommand$4 as ClosureCommand, ClosureKernel, Collection$2 as Collection, type Column, type ColumnAttributes, ColumnDefinition, type ColumnInfo, type ColumnRef, type ColumnType, Command$4 as Command, CommandNotFoundError, ComponentNotFoundError, Connection, type ConsoleInput, type ConsoleIo, Kernel as ConsoleKernelImpl, type ConsoleOutput, ConsoleServiceProvider, Container$j as Container, ContainerNotAvailableError, Controller, ControllerMethodNotFoundError, ConvertEmptyStringsToNull, Cookie$1 as Cookie, type CookieDefaults, CookieJar$1 as CookieJar, CookieServiceProvider, CookieSessionHandler, CookieValuePrefix, type CreateMigrationOptions, Crypt, Cursor, type CursorPage, CursorPaginator, type CursorPaginatorOptions, DB, DEFAULT_MESSAGES, DailyRotatingStream, DatabaseBatchRepository, type DatabaseCommandContext, type DatabaseConfig, DatabaseConfigError, DatabaseError, DatabaseFailedJobProvider, DatabaseJob, type DatabaseJobRecord, DatabaseLock, DatabaseManagerImpl, DatabaseNotification, DatabaseNotificationChannel, DatabaseNotificationCollection, DatabaseNotificationsRelation, DatabaseQueue, type DatabaseQueueOptions, DatabaseServiceProvider, DatabaseSessionHandler, DatabaseStore, DatabaseTokenRepository, DatabaseUnavailableError, DecryptError, DeferProp, DiagnosingHealth, type Direction, Dispatchable, type EagerLoadSpec, EloquentUserProvider, EmailVerificationRequest, type Encoded, EncryptCookies, EncryptError, EncryptHistory, Encrypter$2 as Encrypter, EncryptionServiceProvider, EnsureEmailIsVerified, type EnumLike, type ErrorClass, ErrorHandler, Event, Dispatcher$1 as EventDispatcherImpl, type EventKey, type EventListenMap, EventServiceProvider, EventsNeedBusDispatcherError, EventsNeedClassRegistryError, ExceptionsConfiguration, Expression, type Facade$c as Facade, type FacadeStatics$c as FacadeStatics, Factory$b as Factory, type FactoryResult, Failed, FailoverTransport, Faker, FakerOverflowError, FileNotFoundError, FileSessionHandler, FileStore, FilesystemManager, FilesystemServiceProvider, ForeignIdColumnDefinition, ForeignKeyDefinition, FormRequest, FormUploadedFile, Gate, type GateAbility, GateResponse, GeneratorCommand, GenericLock, type GlobalScope, Grammar, type GroupAttributes, type GroupHost, GroupRegistrar, type GuardFactory, HasApiTokens, HasDatabaseNotifications, type HasDatabaseNotificationsModel, type HasFactory, HasMany, HasManyThrough, HasOne, HasOneOrMany, Hash, HashAlgorithmError, type HashInfo, HashManager, type HasherFactory, type HashingConfig, HashingServiceProvider, type Having, type HealthPage, HelpCommand, type HttpCommandOptions, HttpException, Kernel$1 as HttpKernelImpl, HttpRedirectResponse, HttpRedirector, HttpResponseException, HttpResponseFactory, HttpServerError, HttpServiceProvider, Hub, IncomingRequest, type IncomingRequestOptions, type IndexType, Inertia, InertiaError, InertiaHtml, InertiaMiddleware, Response$1 as InertiaPageResponse, ResponseFactory as InertiaResponseFactory, InertiaServiceProvider, type ValidationErrors as InertiaValidationErrors, type InferRuleType, type InferValidatedType, InvalidCacheConfigError, InvalidCastError, InvalidListenerError, InvalidLogLevelError, InvalidRuleParameterError, InvalidSignatureError, InvalidUrlSignatureError, JOBS_TABLE_MIGRATION, JobClassNotFoundError, type JobContext, type JobMiddleware, JobSerializationError, JoinClause, type JoinType, type JsonWhenCallback, KEY_GENERATE_SIGNATURE, type KernelApp, type KeyGenerateIO, LEVEL_SEVERITY, LazyCollection$1 as LazyCollection, type LengthAwarePage, LengthAwarePaginator, ListCommand, type ListenerTuple, type LocalDiskConfig, LocalFilesystem, type LockFactory, LockTimeoutError, Lockout, Log, LogChannelCycleError, LogManager, LogServiceProvider, LogTransport, type LoggedQuery, LogicError, Login, Logout, MIGRATION_CREATE_STUB, MIGRATION_STUB, MIGRATION_UPDATE_STUB, MODEL_EVENTS, Mail, MailManager, MailMessage, type MailMessageAction, MailNotificationChannel, MailQueueUnavailableError, MailServiceProvider, type MailTransporter, MailUnavailableError, Mailable, MailerImpl, MakeCastCommand, MakeCommandCommand, MakeControllerCommand, MakeEventCommand, MakeFactoryCommand, MakeJobCommand, MakeListenerCommand, MakeMailCommand, MakeMiddlewareCommand, MakeModelCommand, MakeNotificationCommand, MakeObserverCommand, MakePolicyCommand, MakeProviderCommand, MakeRequestCommand, MakeResourceCommand, MakeRuleCommand, MakeSeederCommand, MakeTestCommand, type Manifest, type ManifestChunk, ManuallyFailedError, type Many, MassAssignmentError, MaxAttemptsExceededError, MemoryStore, MergeProp, MessageBagImpl, MethodNotAllowedHttpError, MiddlewareConfiguration, MiddlewareNotFoundError, Migration, MigrationCreator, type MigrationRecord, MigrationRepository, type MigrationStatus, Migrator, type MigratorOptions, MissingAppKeyError, MissingModelError, MissingRecipientError, Model, type ModelBuilder, type ModelClass, type ModelConstructor, type ModelEvent, type ModelListener, ModelNotFoundError$1 as ModelNotFoundError, ModelRegistry, type MorphConstraint, MorphMany, MorphOne, MorphTo, MySqlSchemaGrammar, NOTIFICATIONS_TABLE, NOTIFICATIONS_TABLE_MIGRATION, type NewAccessToken, NodeConsoleInput, NodeConsoleOutput, NotDatabaseNotifiableError, NotFoundHttpError, Notifiable, type NotifiableConstructor, Notification$1 as Notification, Dispatcher$2 as NotificationDispatcherImpl, NotificationDispatcherUnavailableError, NotificationFacade, NotificationQueueUnavailableError, NotificationsServiceProvider, NullFailedJobProvider, NullLogger, NullQueue, OPERATORS, OnceProp, type OptionDefinition, type OptionValue$4 as OptionValue, OptionalProp, type Order, PERSONAL_ACCESS_TOKENS_MIGRATION, type PagePropsFrom, type PaginationLink, Paginator, type PaginatorOptions, type ParsedInput, type ParsedRule, type ParsedSetCookie, type ParsedSignature, Password, PasswordBroker, PasswordBrokerManager, PasswordReset, PasswordRule, PathTraversalError, PendingBatch, PendingChain, PendingDispatch, PersonalAccessToken, PinoLogger, PipelineError, PipelineServiceProvider, Pivot, type PivotIds, type PlainNotificationMail, type PolicyClass, PostgresSchemaGrammar, type PreloadAttributesResolver, PropsResolver, ProviderBootError, ProviderRegisterError, QUEUE_JOB, Builder$1 as QueryBuilder, QueryError, Queue$1 as Queue, QueueBase, type QueueCommandContext, QueueError, type QueueJobPayload, QueueManager, QueueServiceProvider, QueueUnavailableError, Queueable, QueuedConsoleInput, QueuedMailSender, type QueuedMailableFactory, RESTART_CACHE_KEY, RateLimiter, type RawResult, type RecipientOverrides, RedirectIfAuthenticated, RedisJob, RedisLock, RedisQueue, type RedisQueueOptions, RedisRepository, type RedisSessionClient, RedisSessionHandler, RedisStore, RedisTaggedStore, type ReferentialAction, Registered, type RegisteredModel, Relation, type RelationConstraint, type RelationNames, RelationNotFoundError, RelationNotLoadedError, type RelationValue, type RenderCallback, type RenderedContent, type ReplStarter, type ReportCallback, Repository$1 as Repository, ResetPassword, type ResetPasswordMail, type ResolvedMiddleware, type ResolvedServeOptions, type ResourceMethod, type ResourceRoute, type RollbackOptions, Route$1 as Route, type RouteAttributes, type RouteBinder, RouteDefinition, type RouteFileCallback, type RouteHandler, type RouteListFilters, type RouteListRow, RouteModelNotFoundError, RouteModelResolverImpl, RouteNotDefinedError, type RouteStage, RoutesNotifications, RoutingError, type RoutingOptions, RoutingServiceProvider, Rule, type RuleContext, type RunningServer, type Runtime, type S3ClientLike, type S3DiskConfig, S3Filesystem, SSR_RENDER_FAILED, STORAGE_LINK_SIGNATURE, Schedule, ScheduleImpl, ScheduleListCommand, ScheduleNameRequiredError, ScheduleRunCommand, ScheduleWorkCommand, type ScheduleWorkOptions, ScheduledEventImpl, Schema, SchemaBuilder, SchemaBuilderToken, SchemaGrammar, type Scope, type ScopeCallback, type ScopeStatic, type Scopes, type ScrollMetadata, ScrollProp, Seeder, type SeederClass, type SelectColumn, SendEmailVerificationNotification, SendQueuedMailable, SendQueuedNotifications, type Serialized, type SerializedObject, type ServeOptions, ServiceProvider$t as ServiceProvider, SessionFacade as Session, type SessionConfig, SessionGuard, type SessionGuardOptions, type SessionHandlerFactory, SessionManager, SessionMessageBag, SessionServiceProvider, Store$1 as SessionStore, type SharedPropsFrom, type SimplePage, type SmtpConfig, SmtpTransport, SoftDeletingScope, type SpawnResult, type Spawner, SqliteSchemaGrammar, SsrError, type SsrFailure, HttpGateway as SsrHttpGateway, type StackFrame, StackLogger, StartSession, type State, type StateContext, Storage, type StoredBatchOptions, Str, type StringPipeResolver, type SyncChanges, SyncJob, SyncQueue, type TagAttributes, TagsNotSupportedError, TestCommand, ThrottleRequests, ThrottleRequestsError, TimeoutExceededError, TinkerCommand, type TinkerOptions, type TinkerRepl, TokenGuard, type TokenGuardOptions, TokenMismatchError, TokenRepository, type TransporterFactory, TrimStrings, TypeGenerator, type TypeGeneratorOptions, type TypedRedirector, UNIQUE_LOCK, USERS_TABLE_MIGRATION, UniqueJobsNeedCacheError, UniqueLock, type UniqueLockSpec, UnknownCacheDriverError, UnknownCacheStoreError, UnknownDiskError, UnknownFilesystemDriverError, UnknownLogChannelError, UnknownLogDriverError, UnknownMailTransportError, UnknownMailerError, UnknownNotificationChannelError, UnknownQueueConnectionError, UnknownQueueDriverError, UnknownValidationRuleError, UnrenderableNotificationDataError, UnrenderableNotificationMailError, UnsupportedCipherError, UnsupportedOperationError, type UriParameter, UrlGenerationError, type UrlResolver, type UserProviderFactory, ValidateSignature, Validated, ValidationErrorImpl, ValidationException, ValidationFactoryImpl, ValidationServiceProvider, Validator, ValidatorImpl, type VerifiableUser, Verified, VerifyCsrfToken, VerifyEmail, type VerifyEmailMail, ViewFactoryUnavailableError, Vite, ViteError, ViteHtml, WORKER_DISCOVERY_DIRECTORIES, type Where, type WhereArgs, type WhereBoolean, WithoutOverlapping, Worker, type WorkerListener, type WorkerOptions, __, abort, abortIf, abortUnless, addApiRouting, allowGuests, app, applyExceptionCallbacks, applyMiddlewareCallbacks, applyReplacements, auth, back, bcrypt, builtinRules, bunRuntime, cache, castGet, castSet, classNameOf, clientAddress, collect, columnKey, compareRoutes, config, contentDisposition, cookie, createDailyChannel, createDialect, createPayload, createSingleChannel, createStderrChannel, createToken, csrfToken, currentContainer, currentLogContext, currentRequest, currentVite, databaseConfigDefaults, debugPage, decodePayload, decrypt, defaultAttributeName, defaultLockFactory, defaultProviders, defaultWorkerOptions, delaySeconds, describeError, deserialize, detectRuntime, discoverClasses, discoverFactories, discoverJobs, discoverListeners, discoverPolicies, dispatch, dispatchRoute, dispatchSync, encodePayload, encrypt, enumValues, env, errorBagFrom, errors, escapeHtml, event, exceedsJsonDepth, expandWildcardKeys, extensionFromMime, facade, fake, filterRouteList, formatAddress, formatDate, formatDateTime, formatRouteList, formatTimestamp, fromEntries, generateAppKey, generateModelTypes, getMorphAlias, getMorphedModel, guessTable, hashInfo, healthResponse, inertia, inertiaBody, inertiaHead, inject, ipMatches, isBlank, isBun, isDateCast, isEmptyValue, isEquivalent, isJsonCast, isListenerClass, isListenerTuple, isModel, isQueueable, isQueueableListener, isUnique, isUploadedFileLike, joinDiskPath, keyGenerateHandler, loadRelations, loadRoutesFrom, logger, makeFailedJobProvider, meetsLevel, mergeGroup, mergeLogContext, mergeRecursive, migrationDatePrefix, minimalPage, modelEventName, morphMap, normalizeAddress, normalizeAddresses, normalizeBackoff, normalizeLists, normalizePath, normalizeUri, now, old, openSqlite, optionalCookieJar, optionalSession, orderForBindings, parseArgv, parseBracketKey, parseCookieHeader, parseDateTime, parseKey, parseParameters, parseRuleSpec, parseSignature, passwordVerify, prepareValue, queueConfigDefaults, queueOptionsOf, raw as rawSql, rawWithBindings, redirect, registerHttpCommands, registerKeyGenerateCommand, registerMigrationCommands, registerModelTypesCommand, registerQueueCommands, registerStorageLinkCommand, renderContent, renderError, request, requestScope, resolveArguments, resolveDiskPath, resolveMiddleware, resolveMorphClass, resolveOptions, resourceRoutes, response, restoreJob, restoreValue, retry, roundTrip, route, routeListRows, runConsole, runConsoleAndExit, runMiddleware, runSeeder, sanitize, sendEmailVerificationUsing, sendNotification, serialize, serializeContext, serializeCookie, serializeDate, serializeValue, serve, serveBun, serveNode, servePublicFile, session, setClientAddress, stackFrames, statusFor, statusText, storageLinkHandler, substituteBindings, suggest, summarizeValidation, tap, toNotifiableList, toResponse, toWebRequest, tokenableType, transformLeaves, url, usePaginationResolvers, validateRequiredArguments, value, vite, viteReactRefresh, withHeaders, workerOptionsFrom, writeResponse };
|