@bool-ts/core 1.9.20 → 1.9.26

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.
Files changed (43) hide show
  1. package/dist/decorators/arguments.d.ts +11 -11
  2. package/dist/decorators/container.d.ts +2 -4
  3. package/dist/decorators/controller.d.ts +2 -4
  4. package/dist/decorators/guard.d.ts +2 -4
  5. package/dist/decorators/http.d.ts +11 -11
  6. package/dist/decorators/inject.d.ts +2 -3
  7. package/dist/decorators/injectable.d.ts +2 -1
  8. package/dist/decorators/interceptor.d.ts +2 -4
  9. package/dist/decorators/middleware.d.ts +2 -4
  10. package/dist/decorators/module.d.ts +2 -4
  11. package/dist/decorators/webSocket.d.ts +3 -5
  12. package/dist/decorators/webSocketArguments.d.ts +5 -5
  13. package/dist/decorators/webSocketEvent.d.ts +1 -1
  14. package/dist/decorators/zodSchema.d.ts +1 -1
  15. package/dist/index.js +4 -4
  16. package/dist/index.js.map +16 -16
  17. package/dist/interfaces/container.d.ts +2 -0
  18. package/dist/interfaces/controller.d.ts +1 -1
  19. package/dist/interfaces/index.d.ts +1 -0
  20. package/dist/interfaces/module.d.ts +1 -1
  21. package/dist/ultils/constructor.d.ts +1 -0
  22. package/dist/ultils/index.d.ts +1 -0
  23. package/package.json +3 -3
  24. package/src/decorators/arguments.ts +25 -19
  25. package/src/decorators/container.ts +5 -4
  26. package/src/decorators/controller.ts +3 -3
  27. package/src/decorators/guard.ts +5 -3
  28. package/src/decorators/http.ts +11 -8
  29. package/src/decorators/inject.ts +7 -3
  30. package/src/decorators/injectable.ts +4 -2
  31. package/src/decorators/interceptor.ts +3 -4
  32. package/src/decorators/middleware.ts +3 -3
  33. package/src/decorators/module.ts +5 -3
  34. package/src/decorators/webSocket.ts +3 -3
  35. package/src/decorators/webSocketArguments.ts +10 -5
  36. package/src/decorators/webSocketEvent.ts +2 -2
  37. package/src/decorators/zodSchema.ts +2 -2
  38. package/src/interfaces/container.ts +1 -0
  39. package/src/interfaces/controller.ts +1 -1
  40. package/src/interfaces/index.ts +1 -0
  41. package/src/interfaces/module.ts +1 -1
  42. package/src/ultils/constructor.ts +1 -0
  43. package/src/ultils/index.ts +1 -0
@@ -46,14 +46,14 @@ export type TArgumentsMetadata = {
46
46
  type: typeof httpServerArgsKey;
47
47
  };
48
48
  export type TArgumentsMetadataCollection = Record<`argumentIndexes.${number}`, TArgumentsMetadata>;
49
- export declare const RequestHeaders: (schema?: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
50
- export declare const RequestHeader: (key: string, schema?: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
51
- export declare const RequestBody: (schema?: Zod.Schema, parser?: "arrayBuffer" | "blob" | "formData" | "json" | "text") => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
52
- export declare const Params: (schema?: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
53
- export declare const Param: (key: string, schema?: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
54
- export declare const Query: (schema?: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
55
- export declare const Request: (schema?: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
56
- export declare const ResponseHeaders: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
57
- export declare const Context: (key?: symbol) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
58
- export declare const RouteModel: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
59
- export declare const HttpServer: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
49
+ export declare const RequestHeaders: <T extends Object>(schema?: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
50
+ export declare const RequestHeader: <T extends Object>(key: string, schema?: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
51
+ export declare const RequestBody: <T extends Object>(schema?: Zod.Schema, parser?: "arrayBuffer" | "blob" | "formData" | "json" | "text") => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
52
+ export declare const Params: <T extends Object>(schema?: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
53
+ export declare const Param: <T extends Object>(key: string, schema?: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
54
+ export declare const Query: <T extends Object>(schema?: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
55
+ export declare const Request: <T extends Object>(schema?: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
56
+ export declare const ResponseHeaders: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
57
+ export declare const Context: <T extends Object>(key?: symbol) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
58
+ export declare const RouteModel: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
59
+ export declare const HttpServer: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
@@ -1,4 +1,4 @@
1
- import type { IModule } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  type TInstances = Array<new (...args: any[]) => any>;
3
3
  type TLoaders<TConfig extends {} = {}> = Record<string | symbol, (args: {
4
4
  config: TConfig;
@@ -23,7 +23,5 @@ export type TContainerMetadata<TConfig extends {} = {}> = Partial<{
23
23
  middlewares: TInstances;
24
24
  guards: TInstances;
25
25
  }> | undefined;
26
- export declare const Container: <TConfig extends {} = {}>(args?: TContainerOptions<TConfig>) => <T extends {
27
- new (...args: any[]): IModule;
28
- }>(target: T) => void;
26
+ export declare const Container: <TConfig extends {} = {}, K extends TConstructor<Object> = TConstructor<Object>>(args?: TContainerOptions<TConfig>) => (target: K) => void;
29
27
  export default Container;
@@ -1,10 +1,8 @@
1
- import type { IController } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  import type { THttpMetadata } from "./http";
3
3
  export type TControllerMetadata = Required<{
4
4
  prefix: string;
5
5
  httpMetadata: THttpMetadata;
6
6
  }>;
7
- export declare const Controller: (prefix?: string) => <T extends {
8
- new (...args: any[]): IController;
9
- }>(target: T) => void;
7
+ export declare const Controller: <T extends TConstructor<Object>>(prefix?: string) => (target: T) => void;
10
8
  export default Controller;
@@ -1,6 +1,4 @@
1
- import type { IGuard } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  export type TGuardMetadata = undefined;
3
- export declare const Guard: () => <T extends {
4
- new (...args: any[]): IGuard;
5
- }>(target: T) => void;
3
+ export declare const Guard: <T extends TConstructor<Object>>() => (target: T) => T | undefined;
6
4
  export default Guard;
@@ -12,42 +12,42 @@ export type THttpMetadata = Array<TRoute>;
12
12
  * @param path
13
13
  * @returns
14
14
  */
15
- export declare const Get: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
15
+ export declare const Get: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
16
16
  /**
17
17
  *
18
18
  * @param path
19
19
  * @returns
20
20
  */
21
- export declare const Post: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
21
+ export declare const Post: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
22
22
  /**
23
23
  *
24
24
  * @param path
25
25
  * @returns
26
26
  */
27
- export declare const Put: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
27
+ export declare const Put: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
28
28
  /**
29
29
  *
30
30
  * @param path
31
31
  * @returns
32
32
  */
33
- export declare const Patch: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
33
+ export declare const Patch: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
34
34
  /**
35
35
  *
36
36
  * @param path
37
37
  * @returns
38
38
  */
39
- export declare const Delete: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
39
+ export declare const Delete: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
40
40
  /**
41
41
  *
42
42
  * @param path
43
43
  * @returns
44
44
  */
45
- export declare const Options: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
45
+ export declare const Options: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
46
46
  declare const _default: {
47
- Get: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
48
- Post: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
49
- Put: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
50
- Patch: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
51
- Delete: (path?: string) => (target: Object, methodName: string | symbol, descriptor: TypedPropertyDescriptor<any>) => void;
47
+ Get: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
48
+ Post: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
49
+ Put: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
50
+ Patch: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
51
+ Delete: <T, K extends Object>(path?: string) => (target: K, methodName: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
52
52
  };
53
53
  export default _default;
@@ -1,4 +1,3 @@
1
- export declare const Inject: <T extends Object>(definition: {
2
- new (...args: any[]): T;
3
- } | string | symbol) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
1
+ import type { TConstructor } from "../ultils";
2
+ export declare const Inject: <T extends TConstructor<Object>, K extends TConstructor<Object>>(definition: T | string | symbol) => (target: K, _methodName: string | symbol | undefined, parameterIndex: number) => void;
4
3
  export default Inject;
@@ -1,2 +1,3 @@
1
- export declare const Injectable: () => <T extends Object>(target: T) => void;
1
+ import type { TConstructor } from "../ultils";
2
+ export declare const Injectable: <T extends TConstructor<Object>>() => (target: T) => void;
2
3
  export default Injectable;
@@ -1,6 +1,4 @@
1
- import type { IInterceptor } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  export type TInterceptorMetadata = undefined;
3
- export declare const Interceptor: () => <T extends {
4
- new (...args: any[]): IInterceptor;
5
- }>(target: T) => void;
3
+ export declare const Interceptor: <T extends TConstructor<Object>>() => (target: T) => void;
6
4
  export default Interceptor;
@@ -1,6 +1,4 @@
1
- import type { IMiddleware } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  export type TMiddlewareMetadata = undefined;
3
- export declare const Middleware: () => <T extends {
4
- new (...args: any[]): IMiddleware;
5
- }>(target: T) => void;
3
+ export declare const Middleware: <T extends TConstructor<Object>>() => (target: T) => void;
6
4
  export default Middleware;
@@ -1,4 +1,4 @@
1
- import type { IModule } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  type TInstances = Array<new (...args: any[]) => any>;
3
3
  type TLoaders<TConfig extends {} = {}> = Record<string | symbol, (args: {
4
4
  config: TConfig;
@@ -29,7 +29,5 @@ export type TModuleMetadata<TConfig extends {} = {}> = Partial<{
29
29
  interceptors: TInstances;
30
30
  webSockets: TInstances;
31
31
  }> | undefined;
32
- export declare const Module: <TConfig extends {} = {}>(args?: TModuleOptions<TConfig>) => <T extends {
33
- new (...args: any[]): IModule;
34
- }>(target: T) => void;
32
+ export declare const Module: <TConfig extends {} = {}, K extends TConstructor<Object> = TConstructor<Object>>(args?: TModuleOptions<TConfig>) => (target: K) => void;
35
33
  export default Module;
@@ -1,4 +1,4 @@
1
- import type { IWebSocket } from "../interfaces";
1
+ import type { TConstructor } from "../ultils";
2
2
  import type { TArgumentsMetadataCollection } from "./arguments";
3
3
  import type { TWebSocketEventMetadata } from "./webSocketEvent";
4
4
  export type TWebSocketHttpRouteMetadata = {
@@ -19,9 +19,7 @@ export type TWebSocketMetadata = Required<{
19
19
  events: TWebSocketEventMetadata;
20
20
  http: TWebSocketHttpMetadata;
21
21
  }>;
22
- export declare const WebSocket: (args?: Partial<{
22
+ export declare const WebSocket: <T extends TConstructor<Object>>(args?: Partial<{
23
23
  prefix: string;
24
- }>) => <T extends {
25
- new (...args: any[]): IWebSocket;
26
- }>(target: T) => void;
24
+ }>) => (target: T) => void;
27
25
  export default WebSocket;
@@ -16,8 +16,8 @@ export type TWebsocketArgumentsMetadata = {
16
16
  type: typeof webSocketCloseReasonArgsKey;
17
17
  };
18
18
  export type TWebsocketArgumentsMetadataGroup = Record<string, TWebsocketArgumentsMetadata>;
19
- export declare const WebSocketConnection: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
20
- export declare const WebSocketServer: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
21
- export declare const WebSocketCloseCode: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
22
- export declare const WebSocketCloseReason: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
23
- export declare const WebSocketMessage: () => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
19
+ export declare const WebSocketConnection: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
20
+ export declare const WebSocketServer: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
21
+ export declare const WebSocketCloseCode: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
22
+ export declare const WebSocketCloseReason: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
23
+ export declare const WebSocketMessage: <T extends Object>() => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;
@@ -11,5 +11,5 @@ export type TWebSocketEventMetadata = Record<"open" | "close" | "message" | "dra
11
11
  * @param path
12
12
  * @returns
13
13
  */
14
- export declare const WebSocketEvent: (eventName: "open" | "close" | "message" | "drain" | "ping" | "pong") => (target: Object, methodName: string, descriptor: PropertyDescriptor) => void;
14
+ export declare const WebSocketEvent: <T extends Object>(eventName: "open" | "close" | "message" | "drain" | "ping" | "pong") => (target: T, methodName: string, descriptor: PropertyDescriptor) => void;
15
15
  export default WebSocket;
@@ -1,2 +1,2 @@
1
1
  import * as Zod from "zod";
2
- export declare const ZodSchema: (schema: Zod.Schema) => (target: Object, methodName: string | symbol | undefined, parameterIndex: number) => void;
2
+ export declare const ZodSchema: <T extends Object>(schema: Zod.Schema) => (target: T, methodName: string | symbol | undefined, parameterIndex: number) => void;