@h3ravel/contracts 0.29.0-alpha.9 → 1.29.0-alpha.12

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/index.cjs CHANGED
@@ -1,8 +1,7 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
1
2
  let h3 = require("h3");
2
-
3
3
  //#region src/Configuration/IAppBuilder.ts
4
4
  var IAppBuilder = class {};
5
-
6
5
  //#endregion
7
6
  //#region src/Core/IContainer.ts
8
7
  /**
@@ -13,11 +12,9 @@ var IContainer = class {
13
12
  return false;
14
13
  }
15
14
  };
16
-
17
15
  //#endregion
18
16
  //#region src/Core/IApplication.ts
19
17
  var IApplication = class extends IContainer {};
20
-
21
18
  //#endregion
22
19
  //#region src/Core/IController.ts
23
20
  /**
@@ -29,11 +26,9 @@ var IController = class {
29
26
  return {};
30
27
  }
31
28
  };
32
-
33
29
  //#endregion
34
30
  //#region src/Core/IRegisterer.ts
35
31
  var IRegisterer = class {};
36
-
37
32
  //#endregion
38
33
  //#region src/Core/IServiceProvider.ts
39
34
  var IServiceProvider = class {
@@ -58,55 +53,42 @@ var IServiceProvider = class {
58
53
  */
59
54
  static console;
60
55
  };
61
-
62
56
  //#endregion
63
57
  //#region src/Database/IModel.ts
64
58
  var IModel = class {};
65
-
66
59
  //#endregion
67
60
  //#region src/Events/IDispatcher.ts
68
61
  var IDispatcher = class {};
69
-
70
62
  //#endregion
71
63
  //#region src/Exceptions/IExceptionHandler.ts
72
64
  var IExceptionHandler = class {};
73
-
74
65
  //#endregion
75
66
  //#region src/Foundation/CKernel.ts
76
67
  var CKernel = class {};
77
-
78
68
  //#endregion
79
69
  //#region src/Foundation/IBootstraper.ts
80
70
  var IBootstraper = class {};
81
-
82
71
  //#endregion
83
72
  //#region src/Foundation/IKernel.ts
84
73
  var IKernel = class {};
85
-
86
74
  //#endregion
87
75
  //#region src/Hashing/IAbstractHasher.ts
88
76
  var IAbstractHasher = class {};
89
-
90
77
  //#endregion
91
78
  //#region src/Hashing/IArgon2idHasher.ts
92
79
  var IArgon2idHasher = class extends IAbstractHasher {};
93
-
94
80
  //#endregion
95
81
  //#region src/Hashing/IArgonHasher.ts
96
82
  var IArgonHasher = class extends IAbstractHasher {};
97
-
98
83
  //#endregion
99
84
  //#region src/Hashing/IBaseHashManager.ts
100
85
  var IBaseHashManager = class {};
101
-
102
86
  //#endregion
103
87
  //#region src/Hashing/IBcryptHasher.ts
104
88
  var IBcryptHasher = class extends IAbstractHasher {};
105
-
106
89
  //#endregion
107
90
  //#region src/Hashing/IHashManager.ts
108
91
  var IHashManager = class extends IBaseHashManager {};
109
-
110
92
  //#endregion
111
93
  //#region src/Http/IParamBag.ts
112
94
  /**
@@ -114,7 +96,6 @@ var IHashManager = class extends IBaseHashManager {};
114
96
  * for H3ravel App.
115
97
  */
116
98
  var IParamBag = class {};
117
-
118
99
  //#endregion
119
100
  //#region src/Http/IFileBag.ts
120
101
  /**
@@ -122,7 +103,6 @@ var IParamBag = class {};
122
103
  * for H3ravel App.
123
104
  */
124
105
  var IFileBag = class extends IParamBag {};
125
-
126
106
  //#endregion
127
107
  //#region src/Http/IHeaderBag.ts
128
108
  /**
@@ -130,7 +110,6 @@ var IFileBag = class extends IParamBag {};
130
110
  * for H3ravel App.
131
111
  */
132
112
  var IHeaderBag = class {};
133
-
134
113
  //#endregion
135
114
  //#region src/Http/IHttpContext.ts
136
115
  var IHttpContext = class {
@@ -143,18 +122,15 @@ var IHttpContext = class {
143
122
  */
144
123
  static forget(event) {}
145
124
  };
146
-
147
125
  //#endregion
148
126
  //#region src/Http/IHttpRequest.ts
149
127
  var IHttpRequest = class {};
150
-
151
128
  //#endregion
152
129
  //#region src/Http/IHttpResponse.ts
153
130
  /**
154
131
  * Interface for the Response contract, defining methods for handling HTTP responses.
155
132
  */
156
133
  var IHttpResponse = class {};
157
-
158
134
  //#endregion
159
135
  //#region src/Http/IInputBag.ts
160
136
  /**
@@ -163,7 +139,6 @@ var IHttpResponse = class {};
163
139
  * for H3ravel App.
164
140
  */
165
141
  var InputBag = class extends IParamBag {};
166
-
167
142
  //#endregion
168
143
  //#region src/Http/IRequest.ts
169
144
  /**
@@ -195,7 +170,6 @@ var IRequest = class extends IHttpRequest {
195
170
  return false;
196
171
  }
197
172
  };
198
-
199
173
  //#endregion
200
174
  //#region src/Http/IResponse.ts
201
175
  /**
@@ -203,7 +177,6 @@ var IRequest = class extends IHttpRequest {
203
177
  */
204
178
  var IResponse = class extends IHttpResponse {};
205
179
  var IResponsable = class extends h3.HTTPResponse {};
206
-
207
180
  //#endregion
208
181
  //#region src/Http/IServerBag.ts
209
182
  /**
@@ -214,23 +187,31 @@ var IResponsable = class extends h3.HTTPResponse {};
214
187
  * from the incoming request.
215
188
  */
216
189
  var IServerBag = class extends IParamBag {};
217
-
218
190
  //#endregion
219
191
  //#region src/Http/IUploadedFile.ts
220
192
  var IUploadedFile = class {};
221
-
222
193
  //#endregion
223
194
  //#region src/Queue/IJob.ts
224
195
  var IJob = class {};
225
-
196
+ //#endregion
197
+ //#region src/Queue/IQueueDriver.ts
198
+ /**
199
+ * Queue driver contract for queue backends.
200
+ * Methods can be sync or async (return T | Promise<T>).
201
+ */
202
+ var IQueueDriver = class {};
203
+ //#endregion
204
+ //#region src/Queue/IQueueManager.ts
205
+ /**
206
+ * Queue manager contract for managing drivers and connections.
207
+ */
208
+ var IQueueManager = class {};
226
209
  //#endregion
227
210
  //#region src/Routing/ICallableDispatcher.ts
228
211
  var ICallableDispatcher = class {};
229
-
230
212
  //#endregion
231
213
  //#region src/Routing/IControllerDispatcher.ts
232
214
  var IControllerDispatcher = class {};
233
-
234
215
  //#endregion
235
216
  //#region src/Routing/IMiddleware.ts
236
217
  /**
@@ -240,19 +221,15 @@ var IControllerDispatcher = class {};
240
221
  var IMiddleware = class {
241
222
  options = {};
242
223
  };
243
-
244
224
  //#endregion
245
225
  //#region src/Routing/IPendingResourceRegistration.ts
246
226
  var IPendingResourceRegistration = class {};
247
-
248
227
  //#endregion
249
228
  //#region src/Routing/IPendingSingletonResourceRegistration.ts
250
229
  var IPendingSingletonResourceRegistration = class {};
251
-
252
230
  //#endregion
253
231
  //#region src/Routing/IRoute.ts
254
232
  var IRoute = class {};
255
-
256
233
  //#endregion
257
234
  //#region src/Routing/IRouter.ts
258
235
  /**
@@ -264,19 +241,15 @@ var IRouter = class {
264
241
  */
265
242
  static verbs;
266
243
  };
267
-
268
244
  //#endregion
269
245
  //#region src/Routing/IRouteRegistrar.ts
270
246
  var IRouteRegistrar = class {};
271
-
272
247
  //#endregion
273
248
  //#region src/Routing/Traits/UrlRoutable.ts
274
249
  var UrlRoutable = class {};
275
-
276
250
  //#endregion
277
251
  //#region src/Session/FlashBag.ts
278
252
  var FlashBag = class {};
279
-
280
253
  //#endregion
281
254
  //#region src/Session/ISessionDriver.ts
282
255
  /**
@@ -286,7 +259,6 @@ var FlashBag = class {};
286
259
  * consistency across different storage mechanisms (memory, files, database, redis).
287
260
  */
288
261
  var ISessionDriver = class {};
289
-
290
262
  //#endregion
291
263
  //#region src/Session/ISessionManager.ts
292
264
  /**
@@ -296,18 +268,15 @@ var ISessionDriver = class {};
296
268
  * Each request gets a unique session namespace tied to its ID.
297
269
  */
298
270
  var ISessionManager = class {};
299
-
300
271
  //#endregion
301
272
  //#region src/Url/IRequestAwareUrl.ts
302
273
  /**
303
274
  * Contract for request-aware URL helpers
304
275
  */
305
276
  var IRequestAwareUrl = class {};
306
-
307
277
  //#endregion
308
278
  //#region src/Url/IRouteUrlGenerator.ts
309
279
  var IRouteUrlGenerator = class {};
310
-
311
280
  //#endregion
312
281
  //#region src/Url/IUrl.ts
313
282
  var IUrl = class {
@@ -348,18 +317,15 @@ var IUrl = class {
348
317
  return {};
349
318
  }
350
319
  };
351
-
352
320
  //#endregion
353
321
  //#region src/Url/IUrlGenerator.ts
354
322
  var IUrlGenerator = class {};
355
-
356
323
  //#endregion
357
324
  //#region src/Url/IUrlHelpers.ts
358
325
  /**
359
326
  * The Url Helper Contract
360
327
  */
361
328
  var IUrlHelpers = class {};
362
-
363
329
  //#endregion
364
330
  exports.CKernel = CKernel;
365
331
  exports.FlashBag = FlashBag;
@@ -390,6 +356,8 @@ exports.IModel = IModel;
390
356
  exports.IParamBag = IParamBag;
391
357
  exports.IPendingResourceRegistration = IPendingResourceRegistration;
392
358
  exports.IPendingSingletonResourceRegistration = IPendingSingletonResourceRegistration;
359
+ exports.IQueueDriver = IQueueDriver;
360
+ exports.IQueueManager = IQueueManager;
393
361
  exports.IRegisterer = IRegisterer;
394
362
  exports.IRequest = IRequest;
395
363
  exports.IRequestAwareUrl = IRequestAwareUrl;
@@ -408,4 +376,4 @@ exports.IUrl = IUrl;
408
376
  exports.IUrlGenerator = IUrlGenerator;
409
377
  exports.IUrlHelpers = IUrlHelpers;
410
378
  exports.InputBag = InputBag;
411
- exports.UrlRoutable = UrlRoutable;
379
+ exports.UrlRoutable = UrlRoutable;
package/dist/index.d.ts CHANGED
@@ -5,10 +5,10 @@ import { IApplication as IApplication$1 } from "@h3ravel/contracts";
5
5
  import { DotNestedKeys as DotNestedKeys$1, DotNestedValue as DotNestedValue$1 } from "@h3ravel/shared";
6
6
  import { Edge } from "edge.js";
7
7
  import { Command, Kernel } from "@h3ravel/musket";
8
- import In from "simple-body-validator/lib/cjs/rules/in";
9
- import NotIn from "simple-body-validator/lib/cjs/rules/notIn";
10
- import Regex from "simple-body-validator/lib/cjs/rules/regex";
11
- import RequiredIf from "simple-body-validator/lib/cjs/rules/requiredIf";
8
+ import In from "simple-body-validator/lib/cjs/rules/in.js";
9
+ import NotIn from "simple-body-validator/lib/cjs/rules/notIn.js";
10
+ import Regex from "simple-body-validator/lib/cjs/rules/regex.js";
11
+ import RequiredIf from "simple-body-validator/lib/cjs/rules/requiredIf.js";
12
12
  import { Rule as Rule$1 } from "simple-body-validator";
13
13
 
14
14
  //#region src/Routing/IMiddleware.d.ts
@@ -166,7 +166,7 @@ declare abstract class IHeaderBag implements Iterable<[string, (string | null)[]
166
166
  * @param key
167
167
  * @returns
168
168
  */
169
- abstract all<K$1 extends string | undefined>(key?: K$1): K$1 extends string ? (string | null)[] : Record<string, (string | null)[]>;
169
+ abstract all<K extends string | undefined>(key?: K): K extends string ? (string | null)[] : Record<string, (string | null)[]>;
170
170
  /**
171
171
  * Returns header keys
172
172
  *
@@ -1618,10 +1618,12 @@ declare abstract class IRequest<D extends Record<string, any> = Record<string, a
1618
1618
  /**
1619
1619
  * The current H3 H3Event instance
1620
1620
  */
1621
+
1621
1622
  event: H3Event,
1622
1623
  /**
1623
1624
  * The current app instance
1624
1625
  */
1626
+
1625
1627
  app: IApplication): Promise<IRequest>;
1626
1628
  /**
1627
1629
  * Sets the parameters for this request.
@@ -1646,7 +1648,7 @@ declare abstract class IRequest<D extends Record<string, any> = Record<string, a
1646
1648
  * @param defaultValue
1647
1649
  * @returns
1648
1650
  */
1649
- abstract input<K$1 extends string | undefined>(key?: K$1, defaultValue?: any): K$1 extends undefined ? RequestObject$1 : any;
1651
+ abstract input<K extends string | undefined>(key?: K, defaultValue?: any): K extends undefined ? RequestObject$1 : any;
1650
1652
  /**
1651
1653
  * Retrieve a file from the request.
1652
1654
  *
@@ -1742,7 +1744,7 @@ declare abstract class IRequest<D extends Record<string, any> = Record<string, a
1742
1744
  * @param defaultValue
1743
1745
  * @returns an instance of the current session manager.
1744
1746
  */
1745
- abstract session<K$1 extends string | Record<string, any> | undefined = undefined>(key?: K$1, defaultValue?: any): K$1 extends undefined ? ISessionManager : K$1 extends string ? any : void | Promise<void>;
1747
+ abstract session<K extends string | Record<string, any> | undefined = undefined>(key?: K, defaultValue?: any): K extends undefined ? ISessionManager : K extends string ? any : void | Promise<void>;
1746
1748
  /**
1747
1749
  * Determine if the request is sending JSON.
1748
1750
  *
@@ -1881,7 +1883,7 @@ declare abstract class IRequest<D extends Record<string, any> = Record<string, a
1881
1883
  * @param defaultValue
1882
1884
  * @return {InputBag}
1883
1885
  */
1884
- abstract json<K$1 extends string | undefined = undefined>(key?: string, defaultValue?: any): K$1 extends undefined ? IParamBag : any;
1886
+ abstract json<K extends string | undefined = undefined>(key?: string, defaultValue?: any): K extends undefined ? IParamBag : any;
1885
1887
  /**
1886
1888
  * Get the user resolver callback.
1887
1889
  */
@@ -2007,7 +2009,7 @@ declare abstract class IRequest<D extends Record<string, any> = Record<string, a
2007
2009
  * Get the base event
2008
2010
  */
2009
2011
  abstract getEvent(): H3Event;
2010
- abstract getEvent<K$1 extends DotNestedKeys<H3Event>>(key: K$1): DotNestedValue<H3Event, K$1>;
2012
+ abstract getEvent<K extends DotNestedKeys<H3Event>>(key: K): DotNestedValue<H3Event, K>;
2011
2013
  }
2012
2014
  //#endregion
2013
2015
  //#region src/Http/IHttpResponse.d.ts
@@ -2365,7 +2367,7 @@ declare abstract class IResponse extends IHttpResponse {
2365
2367
  * Get the base event
2366
2368
  */
2367
2369
  abstract getEvent(): H3Event;
2368
- abstract getEvent<K$1 extends DotNestedKeys$1<H3Event>>(key: K$1): DotNestedValue$1<H3Event, K$1>;
2370
+ abstract getEvent<K extends DotNestedKeys$1<H3Event>>(key: K): DotNestedValue$1<H3Event, K>;
2369
2371
  /**
2370
2372
  * Reset the response class to it's defautl
2371
2373
  */
@@ -2378,17 +2380,34 @@ declare abstract class IResponsable extends HTTPResponse {
2378
2380
  type ResponsableType<X = string> = IResponse | IResponsable | ConcreteConstructor<ClassConstructor> | string | X;
2379
2381
  //#endregion
2380
2382
  //#region src/Queue/Utils.d.ts
2383
+ /**
2384
+ * Serialized job data stored in the queue.
2385
+ */
2381
2386
  interface JobPayload {
2387
+ /** Fully qualified job handler class name. */
2388
+ job: string;
2389
+ /** Data passed to handle() method. */
2390
+ data?: any;
2391
+ /** Unique job identifier. */
2392
+ uuid?: string;
2393
+ /** Maximum number of attempts. */
2382
2394
  maxTries?: number;
2395
+ /** Maximum number of exception attempts. */
2383
2396
  maxExceptions?: number;
2384
- failOnTimeout?: boolean;
2385
- timeout?: number;
2386
- retryUntil?: number;
2387
- job: string;
2397
+ /** Seconds to wait before retry (can be array for exponential backoff). */
2388
2398
  backoff?: number;
2399
+ /** Seconds to delay job execution. */
2389
2400
  delay?: number;
2390
- data?: any;
2391
- uuid?: string;
2401
+ /** Job timeout in seconds. */
2402
+ timeout?: number;
2403
+ /** Absolute timestamp when job should timeout. */
2404
+ retryUntil?: number;
2405
+ /** Whether to fail on timeout. */
2406
+ failOnTimeout?: boolean;
2407
+ /** Job priority (driver-specific). */
2408
+ priority?: number;
2409
+ /** Job tags (driver-specific). */
2410
+ tags?: string[];
2392
2411
  }
2393
2412
  //#endregion
2394
2413
  //#region src/Events/IDispatcher.d.ts
@@ -3604,7 +3623,7 @@ declare class PathLoader {
3604
3623
  //#endregion
3605
3624
  //#region src/Utilities/BindingsContract.d.ts
3606
3625
  type RemoveIndexSignature<T> = { [K in keyof T as string extends K ? never : number extends K ? never : K]: T[K] };
3607
- type Bindings = {
3626
+ interface Bindings {
3608
3627
  [key: string]: any;
3609
3628
  [key: `app.${string}`]: any;
3610
3629
  [key: `middleware.${string}`]: any;
@@ -3636,7 +3655,7 @@ type Bindings = {
3636
3655
  'load.paths': PathLoader;
3637
3656
  'path.base': string;
3638
3657
  'session.store': ISessionDriver;
3639
- };
3658
+ }
3640
3659
  type UseKey<X extends Record<string, any> = Record<string, any>> = keyof RemoveIndexSignature<Bindings & X>;
3641
3660
  type IBinding = UseKey | (new (...args: any[]) => unknown);
3642
3661
  //#endregion
@@ -3815,7 +3834,7 @@ declare abstract class IContainer {
3815
3834
  * @param instance
3816
3835
  */
3817
3836
  abstract instance<X = any>(key: string, instance: X): X;
3818
- abstract instance<K$1 extends abstract new (...args: any[]) => any, X = any>(abstract: K$1, instance: X): X;
3837
+ abstract instance<K extends abstract new (...args: any[]) => any, X = any>(abstract: K, instance: X): X;
3819
3838
  /**
3820
3839
  * Call the given method and inject its dependencies.
3821
3840
  *
@@ -4008,7 +4027,7 @@ declare abstract class IApplication extends IContainer {
4008
4027
  /**
4009
4028
  * @param key
4010
4029
  */
4011
- abstract getHttpContext<K$1 extends keyof IHttpContext>(key: K$1): IHttpContext[K$1];
4030
+ abstract getHttpContext<K extends keyof IHttpContext>(key: K): IHttpContext[K];
4012
4031
  /**
4013
4032
  * Get the application namespace.
4014
4033
  *
@@ -4075,7 +4094,7 @@ type ExtractClassMethods<T> = { [K in keyof T]: T[K] extends ((...args: any[]) =
4075
4094
  * Type for EventHandler, representing a function that handles an H3 event.
4076
4095
  */
4077
4096
  type EventHandler = (ctx: IHttpContext) => any;
4078
- type TGeneric<V = any, K$1 extends string = string> = Record<K$1, V>;
4097
+ type TGeneric<V = any, K extends string = string> = Record<K, V>;
4079
4098
  type ClassConstructor<T = any> = abstract new (...args: any[]) => T;
4080
4099
  type MixinConstructor<T = TGeneric> = ClassConstructor<T>;
4081
4100
  type RouteEventHandler = (ctx: IHttpContext, ...args: any[]) => any;
@@ -4667,6 +4686,32 @@ declare abstract class IJob {
4667
4686
  abstract getContainer(): IContainer;
4668
4687
  }
4669
4688
  //#endregion
4689
+ //#region src/Queue/IQueueDriver.d.ts
4690
+ /**
4691
+ * Queue driver contract for queue backends.
4692
+ * Methods can be sync or async (return T | Promise<T>).
4693
+ */
4694
+ declare abstract class IQueueDriver {
4695
+ abstract push(queue: string, payload: JobPayload, connection?: string): string | number | void | Promise<string | number | void>;
4696
+ abstract later(queue: string, payload: JobPayload, delay: number, connection?: string): string | number | void | Promise<string | number | void>;
4697
+ abstract bulk(queue: string, payloads: JobPayload[], connection?: string): (string | number | void)[] | Promise<(string | number | void)[]>;
4698
+ abstract pop(queue: string, connection?: string): IJob | null | Promise<IJob | null>;
4699
+ abstract size?(queue: string, connection?: string): number | Promise<number>;
4700
+ abstract clear?(queue: string, connection?: string): void | Promise<void>;
4701
+ }
4702
+ //#endregion
4703
+ //#region src/Queue/IQueueManager.d.ts
4704
+ /**
4705
+ * Queue manager contract for managing drivers and connections.
4706
+ */
4707
+ declare abstract class IQueueManager {
4708
+ abstract connection(name?: string): IQueueDriver;
4709
+ abstract driver(name: string): IQueueDriver;
4710
+ abstract extend(name: string, driver: IQueueDriver): void;
4711
+ abstract getDefaultConnection(): string;
4712
+ abstract setDefaultConnection(name: string): void;
4713
+ }
4714
+ //#endregion
4670
4715
  //#region src/Routing/ICallableDispatcher.d.ts
4671
4716
  declare abstract class ICallableDispatcher {
4672
4717
  /**
@@ -5088,4 +5133,4 @@ declare class IValidator<D extends Record<string, any> = any, R extends RulesFor
5088
5133
  getRules(): R;
5089
5134
  }
5090
5135
  //#endregion
5091
- export { AServiceProvider, AbstractConstructor, ActionInput, AppEvent, AppListener, Argon2Options, BaseValidationRuleClass, BcryptOptions, Bindings, CKernel, CacheOptions, CallableConstructor, ClassConstructor, ClassicRouteDefinition, ConcreteConstructor, CustomValidationRules, DotFlatten, DotNestedKeys, DotNestedValue, DotPaths, EventHandler, ExceptionConditionCallback, ExceptionConstructor, ExtractClassMethods, ExtractRules, FieldMessages, FlashBag, GenericObject, GenericWithNullableStringValues, HashAlgorithm, HashConfiguration, HashInfo, HashOptions, IAbstractHasher, IAbstractRouteCollection, IAppBuilder, IApplication, IArgon2idHasher, IArgonHasher, IBaseHashManager, IBcryptHasher, IBinding, IBootstraper, ICallableDispatcher, ICompiledRoute, IContainer, IController, IControllerDispatcher, IDispatcher, IExceptionHandler, IFileBag, IFileInput, IHashManager, IHeaderBag, IHttpContext, IHttpRequest, IHttpResponse, IJob, IKernel, IMessageBag, IMiddleware, IMiddlewareHandler, IModel, IParamBag, IPathName, IPendingResourceRegistration, IPendingSingletonResourceRegistration, IRegisterer, IRequest, IRequestAwareUrl, IResponsable, IResponse, IRoute, IRouteCollection, IRouteRegistrar, IRouteUrlGenerator, IRouter, IServerBag, IServiceProvider, ISessionDriver, ISessionManager, IUploadedFile, IUrl, IUrlGenerator, IUrlHelpers, IValidationRule, IValidator, InputBag, JobPayload, LimitSpec, ListenerClassConstructor, MergedConstructor, MessagesForRules, MiddlewareIdentifier, MiddlewareList, MixinConstructor, NormalizedAction, OServiceProvider, ParamableValidationRuleName, PathLoader, PlainRuleName, RateLimiterAdapter, RedirectHandler, RenderExceptionCallback, ReportExceptionCallback, RequestMethod, RequestObject, ResourceMethod, ResourceOptions, ResponsableType, ResponseObject, RouteActions, RouteAttributes, RouteEventHandler, RouteMethod, RouteParams, RouterEnd, RulesForData, ServiceProviderConstructor, SessionDriverBuilder, SessionDriverOption, TGeneric, ThrottleExceptionCallback, UnknownHashOptions, Unlimited, UrlRoutable, UseKey, ValidationMessageProvider, ValidationRuleCallable, ValidationRuleName, ValidationRuleSet };
5136
+ export { AServiceProvider, AbstractConstructor, ActionInput, AppEvent, AppListener, Argon2Options, BaseValidationRuleClass, BcryptOptions, Bindings, CKernel, CacheOptions, CallableConstructor, ClassConstructor, ClassicRouteDefinition, ConcreteConstructor, CustomValidationRules, DotFlatten, DotNestedKeys, DotNestedValue, DotPaths, EventHandler, ExceptionConditionCallback, ExceptionConstructor, ExtractClassMethods, ExtractRules, FieldMessages, FlashBag, GenericObject, GenericWithNullableStringValues, HashAlgorithm, HashConfiguration, HashInfo, HashOptions, IAbstractHasher, IAbstractRouteCollection, IAppBuilder, IApplication, IArgon2idHasher, IArgonHasher, IBaseHashManager, IBcryptHasher, IBinding, IBootstraper, ICallableDispatcher, ICompiledRoute, IContainer, IController, IControllerDispatcher, IDispatcher, IExceptionHandler, IFileBag, IFileInput, IHashManager, IHeaderBag, IHttpContext, IHttpRequest, IHttpResponse, IJob, IKernel, IMessageBag, IMiddleware, IMiddlewareHandler, IModel, IParamBag, IPathName, IPendingResourceRegistration, IPendingSingletonResourceRegistration, IQueueDriver, IQueueManager, IRegisterer, IRequest, IRequestAwareUrl, IResponsable, IResponse, IRoute, IRouteCollection, IRouteRegistrar, IRouteUrlGenerator, IRouter, IServerBag, IServiceProvider, ISessionDriver, ISessionManager, IUploadedFile, IUrl, IUrlGenerator, IUrlHelpers, IValidationRule, IValidator, InputBag, JobPayload, LimitSpec, ListenerClassConstructor, MergedConstructor, MessagesForRules, MiddlewareIdentifier, MiddlewareList, MixinConstructor, NormalizedAction, OServiceProvider, ParamableValidationRuleName, PathLoader, PlainRuleName, RateLimiterAdapter, RedirectHandler, RenderExceptionCallback, ReportExceptionCallback, RequestMethod, RequestObject, ResourceMethod, ResourceOptions, ResponsableType, ResponseObject, RouteActions, RouteAttributes, RouteEventHandler, RouteMethod, RouteParams, RouterEnd, RulesForData, ServiceProviderConstructor, SessionDriverBuilder, SessionDriverOption, TGeneric, ThrottleExceptionCallback, UnknownHashOptions, Unlimited, UrlRoutable, UseKey, ValidationMessageProvider, ValidationRuleCallable, ValidationRuleName, ValidationRuleSet };
package/dist/index.js CHANGED
@@ -1,8 +1,6 @@
1
1
  import { HTTPResponse } from "h3";
2
-
3
2
  //#region src/Configuration/IAppBuilder.ts
4
3
  var IAppBuilder = class {};
5
-
6
4
  //#endregion
7
5
  //#region src/Core/IContainer.ts
8
6
  /**
@@ -13,11 +11,9 @@ var IContainer = class {
13
11
  return false;
14
12
  }
15
13
  };
16
-
17
14
  //#endregion
18
15
  //#region src/Core/IApplication.ts
19
16
  var IApplication = class extends IContainer {};
20
-
21
17
  //#endregion
22
18
  //#region src/Core/IController.ts
23
19
  /**
@@ -29,11 +25,9 @@ var IController = class {
29
25
  return {};
30
26
  }
31
27
  };
32
-
33
28
  //#endregion
34
29
  //#region src/Core/IRegisterer.ts
35
30
  var IRegisterer = class {};
36
-
37
31
  //#endregion
38
32
  //#region src/Core/IServiceProvider.ts
39
33
  var IServiceProvider = class {
@@ -58,55 +52,42 @@ var IServiceProvider = class {
58
52
  */
59
53
  static console;
60
54
  };
61
-
62
55
  //#endregion
63
56
  //#region src/Database/IModel.ts
64
57
  var IModel = class {};
65
-
66
58
  //#endregion
67
59
  //#region src/Events/IDispatcher.ts
68
60
  var IDispatcher = class {};
69
-
70
61
  //#endregion
71
62
  //#region src/Exceptions/IExceptionHandler.ts
72
63
  var IExceptionHandler = class {};
73
-
74
64
  //#endregion
75
65
  //#region src/Foundation/CKernel.ts
76
66
  var CKernel = class {};
77
-
78
67
  //#endregion
79
68
  //#region src/Foundation/IBootstraper.ts
80
69
  var IBootstraper = class {};
81
-
82
70
  //#endregion
83
71
  //#region src/Foundation/IKernel.ts
84
72
  var IKernel = class {};
85
-
86
73
  //#endregion
87
74
  //#region src/Hashing/IAbstractHasher.ts
88
75
  var IAbstractHasher = class {};
89
-
90
76
  //#endregion
91
77
  //#region src/Hashing/IArgon2idHasher.ts
92
78
  var IArgon2idHasher = class extends IAbstractHasher {};
93
-
94
79
  //#endregion
95
80
  //#region src/Hashing/IArgonHasher.ts
96
81
  var IArgonHasher = class extends IAbstractHasher {};
97
-
98
82
  //#endregion
99
83
  //#region src/Hashing/IBaseHashManager.ts
100
84
  var IBaseHashManager = class {};
101
-
102
85
  //#endregion
103
86
  //#region src/Hashing/IBcryptHasher.ts
104
87
  var IBcryptHasher = class extends IAbstractHasher {};
105
-
106
88
  //#endregion
107
89
  //#region src/Hashing/IHashManager.ts
108
90
  var IHashManager = class extends IBaseHashManager {};
109
-
110
91
  //#endregion
111
92
  //#region src/Http/IParamBag.ts
112
93
  /**
@@ -114,7 +95,6 @@ var IHashManager = class extends IBaseHashManager {};
114
95
  * for H3ravel App.
115
96
  */
116
97
  var IParamBag = class {};
117
-
118
98
  //#endregion
119
99
  //#region src/Http/IFileBag.ts
120
100
  /**
@@ -122,7 +102,6 @@ var IParamBag = class {};
122
102
  * for H3ravel App.
123
103
  */
124
104
  var IFileBag = class extends IParamBag {};
125
-
126
105
  //#endregion
127
106
  //#region src/Http/IHeaderBag.ts
128
107
  /**
@@ -130,7 +109,6 @@ var IFileBag = class extends IParamBag {};
130
109
  * for H3ravel App.
131
110
  */
132
111
  var IHeaderBag = class {};
133
-
134
112
  //#endregion
135
113
  //#region src/Http/IHttpContext.ts
136
114
  var IHttpContext = class {
@@ -143,18 +121,15 @@ var IHttpContext = class {
143
121
  */
144
122
  static forget(event) {}
145
123
  };
146
-
147
124
  //#endregion
148
125
  //#region src/Http/IHttpRequest.ts
149
126
  var IHttpRequest = class {};
150
-
151
127
  //#endregion
152
128
  //#region src/Http/IHttpResponse.ts
153
129
  /**
154
130
  * Interface for the Response contract, defining methods for handling HTTP responses.
155
131
  */
156
132
  var IHttpResponse = class {};
157
-
158
133
  //#endregion
159
134
  //#region src/Http/IInputBag.ts
160
135
  /**
@@ -163,7 +138,6 @@ var IHttpResponse = class {};
163
138
  * for H3ravel App.
164
139
  */
165
140
  var InputBag = class extends IParamBag {};
166
-
167
141
  //#endregion
168
142
  //#region src/Http/IRequest.ts
169
143
  /**
@@ -195,7 +169,6 @@ var IRequest = class extends IHttpRequest {
195
169
  return false;
196
170
  }
197
171
  };
198
-
199
172
  //#endregion
200
173
  //#region src/Http/IResponse.ts
201
174
  /**
@@ -203,7 +176,6 @@ var IRequest = class extends IHttpRequest {
203
176
  */
204
177
  var IResponse = class extends IHttpResponse {};
205
178
  var IResponsable = class extends HTTPResponse {};
206
-
207
179
  //#endregion
208
180
  //#region src/Http/IServerBag.ts
209
181
  /**
@@ -214,23 +186,31 @@ var IResponsable = class extends HTTPResponse {};
214
186
  * from the incoming request.
215
187
  */
216
188
  var IServerBag = class extends IParamBag {};
217
-
218
189
  //#endregion
219
190
  //#region src/Http/IUploadedFile.ts
220
191
  var IUploadedFile = class {};
221
-
222
192
  //#endregion
223
193
  //#region src/Queue/IJob.ts
224
194
  var IJob = class {};
225
-
195
+ //#endregion
196
+ //#region src/Queue/IQueueDriver.ts
197
+ /**
198
+ * Queue driver contract for queue backends.
199
+ * Methods can be sync or async (return T | Promise<T>).
200
+ */
201
+ var IQueueDriver = class {};
202
+ //#endregion
203
+ //#region src/Queue/IQueueManager.ts
204
+ /**
205
+ * Queue manager contract for managing drivers and connections.
206
+ */
207
+ var IQueueManager = class {};
226
208
  //#endregion
227
209
  //#region src/Routing/ICallableDispatcher.ts
228
210
  var ICallableDispatcher = class {};
229
-
230
211
  //#endregion
231
212
  //#region src/Routing/IControllerDispatcher.ts
232
213
  var IControllerDispatcher = class {};
233
-
234
214
  //#endregion
235
215
  //#region src/Routing/IMiddleware.ts
236
216
  /**
@@ -240,19 +220,15 @@ var IControllerDispatcher = class {};
240
220
  var IMiddleware = class {
241
221
  options = {};
242
222
  };
243
-
244
223
  //#endregion
245
224
  //#region src/Routing/IPendingResourceRegistration.ts
246
225
  var IPendingResourceRegistration = class {};
247
-
248
226
  //#endregion
249
227
  //#region src/Routing/IPendingSingletonResourceRegistration.ts
250
228
  var IPendingSingletonResourceRegistration = class {};
251
-
252
229
  //#endregion
253
230
  //#region src/Routing/IRoute.ts
254
231
  var IRoute = class {};
255
-
256
232
  //#endregion
257
233
  //#region src/Routing/IRouter.ts
258
234
  /**
@@ -264,19 +240,15 @@ var IRouter = class {
264
240
  */
265
241
  static verbs;
266
242
  };
267
-
268
243
  //#endregion
269
244
  //#region src/Routing/IRouteRegistrar.ts
270
245
  var IRouteRegistrar = class {};
271
-
272
246
  //#endregion
273
247
  //#region src/Routing/Traits/UrlRoutable.ts
274
248
  var UrlRoutable = class {};
275
-
276
249
  //#endregion
277
250
  //#region src/Session/FlashBag.ts
278
251
  var FlashBag = class {};
279
-
280
252
  //#endregion
281
253
  //#region src/Session/ISessionDriver.ts
282
254
  /**
@@ -286,7 +258,6 @@ var FlashBag = class {};
286
258
  * consistency across different storage mechanisms (memory, files, database, redis).
287
259
  */
288
260
  var ISessionDriver = class {};
289
-
290
261
  //#endregion
291
262
  //#region src/Session/ISessionManager.ts
292
263
  /**
@@ -296,18 +267,15 @@ var ISessionDriver = class {};
296
267
  * Each request gets a unique session namespace tied to its ID.
297
268
  */
298
269
  var ISessionManager = class {};
299
-
300
270
  //#endregion
301
271
  //#region src/Url/IRequestAwareUrl.ts
302
272
  /**
303
273
  * Contract for request-aware URL helpers
304
274
  */
305
275
  var IRequestAwareUrl = class {};
306
-
307
276
  //#endregion
308
277
  //#region src/Url/IRouteUrlGenerator.ts
309
278
  var IRouteUrlGenerator = class {};
310
-
311
279
  //#endregion
312
280
  //#region src/Url/IUrl.ts
313
281
  var IUrl = class {
@@ -348,17 +316,14 @@ var IUrl = class {
348
316
  return {};
349
317
  }
350
318
  };
351
-
352
319
  //#endregion
353
320
  //#region src/Url/IUrlGenerator.ts
354
321
  var IUrlGenerator = class {};
355
-
356
322
  //#endregion
357
323
  //#region src/Url/IUrlHelpers.ts
358
324
  /**
359
325
  * The Url Helper Contract
360
326
  */
361
327
  var IUrlHelpers = class {};
362
-
363
328
  //#endregion
364
- export { CKernel, FlashBag, IAbstractHasher, IAppBuilder, IApplication, IArgon2idHasher, IArgonHasher, IBaseHashManager, IBcryptHasher, IBootstraper, ICallableDispatcher, IContainer, IController, IControllerDispatcher, IDispatcher, IExceptionHandler, IFileBag, IHashManager, IHeaderBag, IHttpContext, IHttpRequest, IHttpResponse, IJob, IKernel, IMiddleware, IModel, IParamBag, IPendingResourceRegistration, IPendingSingletonResourceRegistration, IRegisterer, IRequest, IRequestAwareUrl, IResponsable, IResponse, IRoute, IRouteRegistrar, IRouteUrlGenerator, IRouter, IServerBag, IServiceProvider, ISessionDriver, ISessionManager, IUploadedFile, IUrl, IUrlGenerator, IUrlHelpers, InputBag, UrlRoutable };
329
+ export { CKernel, FlashBag, IAbstractHasher, IAppBuilder, IApplication, IArgon2idHasher, IArgonHasher, IBaseHashManager, IBcryptHasher, IBootstraper, ICallableDispatcher, IContainer, IController, IControllerDispatcher, IDispatcher, IExceptionHandler, IFileBag, IHashManager, IHeaderBag, IHttpContext, IHttpRequest, IHttpResponse, IJob, IKernel, IMiddleware, IModel, IParamBag, IPendingResourceRegistration, IPendingSingletonResourceRegistration, IQueueDriver, IQueueManager, IRegisterer, IRequest, IRequestAwareUrl, IResponsable, IResponse, IRoute, IRouteRegistrar, IRouteUrlGenerator, IRouter, IServerBag, IServiceProvider, ISessionDriver, ISessionManager, IUploadedFile, IUrl, IUrlGenerator, IUrlHelpers, InputBag, UrlRoutable };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@h3ravel/contracts",
3
- "version": "0.29.0-alpha.9",
3
+ "version": "1.29.0-alpha.12",
4
4
  "description": "H3ravel Contracts.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -46,13 +46,13 @@
46
46
  "devDependencies": {
47
47
  "edge.js": "^6.3.0",
48
48
  "simple-body-validator": "^1.3.9",
49
- "@h3ravel/musket": "^0.8.0-alpha.4"
49
+ "@h3ravel/musket": "^1.29.0-alpha.11"
50
50
  },
51
51
  "dependencies": {
52
52
  "h3": "2.0.1-rc.5"
53
53
  },
54
54
  "scripts": {
55
- "build": "tsdown --config-loader unconfig",
55
+ "build": "tsdown --config-loader unrun",
56
56
  "dev": "tsx watch src/index.ts",
57
57
  "start": "node dist/index.js",
58
58
  "lint": "eslint . --ext .ts",