@pikku/cli 0.9.16-next.0 → 0.10.0

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 (266) hide show
  1. package/.pikku/channel/pikku-channel-types.gen.ts +28 -29
  2. package/.pikku/channel/pikku-channels-map.gen.d.ts +44 -0
  3. package/.pikku/channel/pikku-channels-meta.gen.ts +5 -0
  4. package/.pikku/channel/pikku-channels.gen.ts +4 -0
  5. package/.pikku/cli/pikku-cli-channel.gen.ts +34 -0
  6. package/.pikku/cli/pikku-cli-client.gen.ts +43 -0
  7. package/.pikku/cli/pikku-cli-types.gen.ts +14 -15
  8. package/.pikku/cli/pikku-cli-wirings-meta.gen.ts +142 -2
  9. package/.pikku/cli/pikku-cli-wirings.gen.ts +4 -2
  10. package/.pikku/cli/pikku-cli.gen.ts +41 -0
  11. package/.pikku/function/pikku-function-types.gen.ts +167 -19
  12. package/.pikku/function/pikku-functions-meta.gen.ts +220 -192
  13. package/.pikku/function/pikku-functions-meta.min.gen.ts +61 -56
  14. package/.pikku/function/pikku-functions.gen.ts +3 -1
  15. package/.pikku/http/pikku-http-types.gen.ts +28 -3
  16. package/.pikku/http/pikku-http-wirings-map.gen.d.ts +43 -0
  17. package/.pikku/http/pikku-http-wirings-meta.gen.ts +13 -0
  18. package/.pikku/http/pikku-http-wirings.gen.ts +4 -0
  19. package/.pikku/mcp/pikku-mcp-types.gen.ts +15 -13
  20. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.ts +7 -0
  21. package/.pikku/mcp/pikku-mcp-wirings.gen.ts +4 -0
  22. package/.pikku/mcp/pikku-mcp.gen.json +5 -0
  23. package/.pikku/pikku-bootstrap.gen.ts +11 -1
  24. package/.pikku/pikku-services.gen.ts +1 -5
  25. package/.pikku/pikku-types.gen.ts +1 -2
  26. package/.pikku/pikku-websocket.gen.ts +76 -0
  27. package/.pikku/queue/pikku-queue-types.gen.ts +1 -2
  28. package/.pikku/queue/pikku-queue-workers-wirings-map.gen.d.ts +57 -0
  29. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.ts +5 -0
  30. package/.pikku/queue/pikku-queue-workers-wirings.gen.ts +4 -0
  31. package/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +5 -4
  32. package/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +19 -17
  33. package/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.ts +15 -14
  34. package/.pikku/scheduler/pikku-scheduler-types.gen.ts +1 -2
  35. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.ts +5 -0
  36. package/.pikku/scheduler/pikku-schedulers-wirings.gen.ts +4 -0
  37. package/.pikku/schemas/register.gen.ts +15 -11
  38. package/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  39. package/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
  40. package/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -0
  41. package/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
  42. package/CHANGELOG.md +6 -0
  43. package/bin/pikku.ts +63 -11
  44. package/build.sh +1 -1
  45. package/cli.schema.json +1 -1
  46. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +11 -20
  47. package/dist/.pikku/channel/pikku-channel-types.gen.js +9 -11
  48. package/dist/.pikku/channel/pikku-channels-meta.gen.d.ts +1 -0
  49. package/dist/.pikku/channel/pikku-channels-meta.gen.js +5 -0
  50. package/dist/.pikku/channel/pikku-channels.gen.d.ts +4 -0
  51. package/dist/.pikku/channel/pikku-channels.gen.js +5 -0
  52. package/dist/.pikku/cli/pikku-cli-channel.gen.d.ts +1 -0
  53. package/dist/.pikku/cli/pikku-cli-channel.gen.js +33 -0
  54. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +10 -0
  55. package/dist/.pikku/cli/pikku-cli-client.gen.js +34 -0
  56. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +9 -12
  57. package/dist/.pikku/cli/pikku-cli-types.gen.js +5 -4
  58. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +142 -2
  59. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +3 -2
  60. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +4 -3
  61. package/dist/.pikku/cli/pikku-cli.gen.d.ts +10 -0
  62. package/dist/.pikku/cli/pikku-cli.gen.js +38 -0
  63. package/dist/.pikku/function/pikku-function-types.gen.d.ts +141 -20
  64. package/dist/.pikku/function/pikku-function-types.gen.js +108 -12
  65. package/dist/.pikku/function/pikku-functions-meta.gen.js +220 -192
  66. package/dist/.pikku/function/pikku-functions-meta.min.gen.js +61 -56
  67. package/dist/.pikku/function/pikku-functions.gen.js +3 -1
  68. package/dist/.pikku/http/pikku-http-types.gen.d.ts +21 -2
  69. package/dist/.pikku/http/pikku-http-types.gen.js +24 -3
  70. package/dist/.pikku/http/pikku-http-wirings-meta.gen.d.ts +1 -0
  71. package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +13 -0
  72. package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +4 -0
  73. package/dist/.pikku/http/pikku-http-wirings.gen.js +5 -0
  74. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +11 -8
  75. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +6 -6
  76. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.d.ts +1 -0
  77. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +7 -0
  78. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +4 -0
  79. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +5 -0
  80. package/dist/.pikku/pikku-bootstrap.gen.d.ts +11 -1
  81. package/dist/.pikku/pikku-bootstrap.gen.js +11 -1
  82. package/dist/.pikku/pikku-services.gen.d.ts +1 -4
  83. package/dist/.pikku/pikku-services.gen.js +0 -6
  84. package/dist/.pikku/pikku-types.gen.d.ts +1 -2
  85. package/dist/.pikku/pikku-types.gen.js +1 -2
  86. package/dist/.pikku/pikku-websocket.gen.d.ts +31 -0
  87. package/dist/.pikku/pikku-websocket.gen.js +49 -0
  88. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -2
  89. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -2
  90. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.d.ts +1 -0
  91. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +5 -0
  92. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +4 -0
  93. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +5 -0
  94. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +15 -14
  95. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -2
  96. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -2
  97. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.d.ts +1 -0
  98. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +5 -0
  99. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +4 -0
  100. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +5 -0
  101. package/dist/.pikku/schemas/register.gen.js +9 -7
  102. package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  103. package/dist/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
  104. package/dist/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -0
  105. package/dist/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
  106. package/dist/bin/pikku.d.ts +1 -1
  107. package/dist/bin/pikku.js +37 -6
  108. package/dist/src/cli.wiring.js +99 -75
  109. package/dist/src/functions/commands/all.js +10 -0
  110. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +10 -8
  111. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.d.ts +1 -1
  112. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +2 -2
  113. package/dist/src/functions/wirings/channels/pikku-channels.js +0 -5
  114. package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +0 -2
  115. package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +0 -5
  116. package/dist/src/functions/wirings/channels/pikku-command-channels.js +0 -5
  117. package/dist/src/functions/wirings/channels/pikku-command-websocket-typed.js +6 -3
  118. package/dist/src/functions/wirings/channels/serialize-channel-types.js +27 -28
  119. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.js +4 -1
  120. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +31 -8
  121. package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +0 -2
  122. package/dist/src/functions/wirings/cli/pikku-command-cli.js +0 -2
  123. package/dist/src/functions/wirings/cli/serialize-channel-cli-client.d.ts +6 -2
  124. package/dist/src/functions/wirings/cli/serialize-channel-cli-client.js +88 -11
  125. package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
  126. package/dist/src/functions/wirings/cli/serialize-channel-cli.js +1 -18
  127. package/dist/src/functions/wirings/cli/serialize-cli-types.js +13 -14
  128. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.js +19 -14
  129. package/dist/src/functions/wirings/fetch/index.js +6 -3
  130. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +6 -5
  131. package/dist/src/functions/wirings/functions/pikku-command-function-types.js +0 -2
  132. package/dist/src/functions/wirings/functions/pikku-command-functions.js +0 -2
  133. package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
  134. package/dist/src/functions/wirings/functions/pikku-command-services.js +11 -21
  135. package/dist/src/functions/wirings/functions/pikku-function-types.js +0 -2
  136. package/dist/src/functions/wirings/functions/schemas.js +0 -2
  137. package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
  138. package/dist/src/functions/wirings/functions/serialize-function-types.js +167 -19
  139. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +0 -1
  140. package/dist/src/functions/wirings/http/openapi-spec-generator.d.ts +2 -1
  141. package/dist/src/functions/wirings/http/pikku-command-http-map.js +0 -5
  142. package/dist/src/functions/wirings/http/pikku-command-http-routes.js +0 -5
  143. package/dist/src/functions/wirings/http/pikku-command-http-types.js +0 -2
  144. package/dist/src/functions/wirings/http/pikku-command-openapi.js +7 -4
  145. package/dist/src/functions/wirings/http/pikku-http-routes.js +0 -5
  146. package/dist/src/functions/wirings/http/serialize-http-types.js +27 -2
  147. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +0 -5
  148. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +0 -2
  149. package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +0 -5
  150. package/dist/src/functions/wirings/mcp/serialize-mcp-json.d.ts +1 -1
  151. package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +14 -12
  152. package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +0 -2
  153. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.js +1 -7
  154. package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -0
  155. package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +28 -0
  156. package/dist/src/functions/wirings/permissions/serialize-permissions-imports.d.ts +2 -0
  157. package/dist/src/functions/wirings/permissions/serialize-permissions-imports.js +43 -0
  158. package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +0 -5
  159. package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +6 -3
  160. package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +0 -2
  161. package/dist/src/functions/wirings/queue/pikku-command-queue.js +0 -5
  162. package/dist/src/functions/wirings/queue/pikku-queue-map.js +0 -5
  163. package/dist/src/functions/wirings/queue/pikku-queue.js +1 -5
  164. package/dist/src/functions/wirings/queue/serialize-queue-meta.d.ts +1 -1
  165. package/dist/src/functions/wirings/queue/serialize-queue-types.js +0 -1
  166. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +5 -3
  167. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +0 -4
  168. package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +0 -2
  169. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +0 -2
  170. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +0 -5
  171. package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +0 -1
  172. package/dist/src/middleware/log-command-info-and-time.d.ts +2 -8
  173. package/dist/src/middleware/log-command-info-and-time.js +2 -14
  174. package/dist/src/services/cli-logger-forwarder.service.d.ts +6 -2
  175. package/dist/src/services/cli-logger-forwarder.service.js +9 -0
  176. package/dist/src/services/cli-logger.service.d.ts +4 -0
  177. package/dist/src/services/cli-logger.service.js +11 -0
  178. package/dist/src/services.d.ts +5 -0
  179. package/dist/src/services.js +111 -13
  180. package/dist/src/utils/custom-types-generator.js +8 -2
  181. package/dist/src/utils/file-writer.d.ts +4 -1
  182. package/dist/src/utils/file-writer.js +13 -3
  183. package/dist/src/utils/get-cli-version.d.ts +5 -0
  184. package/dist/src/utils/get-cli-version.js +27 -0
  185. package/dist/src/utils/pikku-cli-config.d.ts +1 -2
  186. package/dist/src/utils/pikku-cli-config.js +9 -28
  187. package/dist/src/utils/schema-generator.js +3 -2
  188. package/dist/src/utils/serialize-import-map.js +0 -3
  189. package/dist/tsconfig.tsbuildinfo +1 -1
  190. package/package.json +10 -8
  191. package/pikku.config.json +4 -2
  192. package/src/cli.wiring.ts +101 -74
  193. package/src/functions/commands/all.ts +12 -0
  194. package/src/functions/runtimes/nextjs/pikku-command-nextjs.ts +12 -12
  195. package/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.ts +2 -2
  196. package/src/functions/wirings/channels/pikku-channels.ts +0 -5
  197. package/src/functions/wirings/channels/pikku-command-channel-types.ts +0 -2
  198. package/src/functions/wirings/channels/pikku-command-channels-map.ts +0 -5
  199. package/src/functions/wirings/channels/pikku-command-channels.ts +0 -5
  200. package/src/functions/wirings/channels/pikku-command-websocket-typed.ts +7 -3
  201. package/src/functions/wirings/channels/serialize-channel-types.ts +27 -28
  202. package/src/functions/wirings/channels/serialize-typed-channel-map.ts +4 -1
  203. package/src/functions/wirings/cli/pikku-command-cli-entry.ts +52 -9
  204. package/src/functions/wirings/cli/pikku-command-cli-types.ts +0 -2
  205. package/src/functions/wirings/cli/pikku-command-cli.ts +0 -2
  206. package/src/functions/wirings/cli/serialize-channel-cli-client.ts +111 -12
  207. package/src/functions/wirings/cli/serialize-channel-cli.ts +2 -23
  208. package/src/functions/wirings/cli/serialize-cli-types.ts +13 -14
  209. package/src/functions/wirings/cli/serialize-local-cli-bootstrap.ts +19 -14
  210. package/src/functions/wirings/fetch/index.ts +7 -3
  211. package/src/functions/wirings/functions/pikku-command-function-types-split.ts +14 -5
  212. package/src/functions/wirings/functions/pikku-command-function-types.ts +0 -2
  213. package/src/functions/wirings/functions/pikku-command-functions.ts +0 -2
  214. package/src/functions/wirings/functions/pikku-command-services.ts +13 -24
  215. package/src/functions/wirings/functions/pikku-function-types.ts +0 -2
  216. package/src/functions/wirings/functions/schemas.ts +0 -2
  217. package/src/functions/wirings/functions/serialize-function-types.ts +169 -19
  218. package/src/functions/wirings/functions/serialize-pikku-types-hub.ts +0 -1
  219. package/src/functions/wirings/http/openapi-spec-generator.ts +2 -1
  220. package/src/functions/wirings/http/pikku-command-http-map.ts +0 -5
  221. package/src/functions/wirings/http/pikku-command-http-routes.ts +0 -5
  222. package/src/functions/wirings/http/pikku-command-http-types.ts +0 -2
  223. package/src/functions/wirings/http/pikku-command-openapi.ts +9 -4
  224. package/src/functions/wirings/http/pikku-http-routes.ts +0 -5
  225. package/src/functions/wirings/http/serialize-http-types.ts +27 -2
  226. package/src/functions/wirings/mcp/pikku-command-mcp-json.ts +0 -5
  227. package/src/functions/wirings/mcp/pikku-command-mcp-types.ts +0 -2
  228. package/src/functions/wirings/mcp/pikku-command-mcp.ts +0 -5
  229. package/src/functions/wirings/mcp/serialize-mcp-json.ts +1 -1
  230. package/src/functions/wirings/mcp/serialize-mcp-types.ts +14 -12
  231. package/src/functions/wirings/middleware/pikku-command-middleware.ts +0 -2
  232. package/src/functions/wirings/middleware/serialize-middleware-groups-meta.ts +1 -7
  233. package/src/functions/wirings/permissions/pikku-command-permissions.ts +49 -0
  234. package/src/functions/wirings/permissions/serialize-permissions-imports.test.ts +274 -0
  235. package/src/functions/wirings/permissions/serialize-permissions-imports.ts +78 -0
  236. package/src/functions/wirings/queue/pikku-command-queue-map.ts +0 -5
  237. package/src/functions/wirings/queue/pikku-command-queue-service.ts +7 -3
  238. package/src/functions/wirings/queue/pikku-command-queue-types.ts +0 -2
  239. package/src/functions/wirings/queue/pikku-command-queue.ts +0 -5
  240. package/src/functions/wirings/queue/pikku-queue-map.ts +0 -5
  241. package/src/functions/wirings/queue/pikku-queue.ts +3 -6
  242. package/src/functions/wirings/queue/serialize-queue-meta.ts +1 -1
  243. package/src/functions/wirings/queue/serialize-queue-types.ts +0 -1
  244. package/src/functions/wirings/rpc/pikku-command-rpc-client.ts +6 -3
  245. package/src/functions/wirings/rpc/pikku-command-rpc-map.ts +0 -4
  246. package/src/functions/wirings/rpc/pikku-command-rpc.ts +0 -2
  247. package/src/functions/wirings/scheduler/pikku-command-scheduler-types.ts +0 -2
  248. package/src/functions/wirings/scheduler/pikku-command-scheduler.ts +0 -5
  249. package/src/functions/wirings/scheduler/serialize-scheduler-types.ts +0 -1
  250. package/src/middleware/log-command-info-and-time.ts +2 -28
  251. package/src/services/cli-logger-forwarder.service.ts +15 -2
  252. package/src/services/cli-logger.service.ts +15 -0
  253. package/src/services.ts +148 -19
  254. package/src/utils/custom-types-generator.ts +8 -2
  255. package/src/utils/file-writer.ts +19 -3
  256. package/src/utils/get-cli-version.ts +28 -0
  257. package/src/utils/pikku-cli-config.ts +6 -35
  258. package/src/utils/schema-generator.ts +7 -3
  259. package/src/utils/serialize-import-map.ts +0 -4
  260. package/types/application-types.d.ts +4 -1
  261. package/types/config.d.ts +15 -3
  262. package/dist/.pikku/rpc/pikku-bootstrap-rpc.gen.d.ts +0 -6
  263. package/dist/.pikku/rpc/pikku-bootstrap-rpc.gen.js +0 -6
  264. package/dist/src/serialize-pikku-types.d.ts +0 -4
  265. package/dist/src/serialize-pikku-types.js +0 -605
  266. package/src/serialize-pikku-types.ts +0 -613
@@ -1,15 +1,35 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  import { pikkuState } from '@pikku/core';
5
5
  pikkuState('function', 'meta', {
6
- "all": {
7
- "pikkuFuncName": "all",
6
+ "pikkuSchemas": {
7
+ "pikkuFuncName": "pikkuSchemas",
8
+ "inputSchemaName": null,
9
+ "outputSchemaName": "PikkuSchemasOutput"
10
+ },
11
+ "pikkuFetch": {
12
+ "pikkuFuncName": "pikkuFetch",
8
13
  "inputSchemaName": null,
9
14
  "outputSchemaName": null
10
15
  },
11
- "watch": {
12
- "pikkuFuncName": "watch",
16
+ "pikkuWebSocketTyped": {
17
+ "pikkuFuncName": "pikkuWebSocketTyped",
18
+ "inputSchemaName": null,
19
+ "outputSchemaName": null
20
+ },
21
+ "pikkuRPCClient": {
22
+ "pikkuFuncName": "pikkuRPCClient",
23
+ "inputSchemaName": null,
24
+ "outputSchemaName": null
25
+ },
26
+ "pikkuQueueService": {
27
+ "pikkuFuncName": "pikkuQueueService",
28
+ "inputSchemaName": null,
29
+ "outputSchemaName": null
30
+ },
31
+ "pikkuOpenAPI": {
32
+ "pikkuFuncName": "pikkuOpenAPI",
13
33
  "inputSchemaName": null,
14
34
  "outputSchemaName": null
15
35
  },
@@ -18,6 +38,16 @@ pikkuState('function', 'meta', {
18
38
  "inputSchemaName": null,
19
39
  "outputSchemaName": null
20
40
  },
41
+ "all": {
42
+ "pikkuFuncName": "all",
43
+ "inputSchemaName": null,
44
+ "outputSchemaName": null
45
+ },
46
+ "watch": {
47
+ "pikkuFuncName": "watch",
48
+ "inputSchemaName": null,
49
+ "outputSchemaName": null
50
+ },
21
51
  "pikkuChannels": {
22
52
  "pikkuFuncName": "pikkuChannels",
23
53
  "inputSchemaName": null,
@@ -33,11 +63,6 @@ pikkuState('function', 'meta', {
33
63
  "inputSchemaName": null,
34
64
  "outputSchemaName": null
35
65
  },
36
- "pikkuWebSocketTyped": {
37
- "pikkuFuncName": "pikkuWebSocketTyped",
38
- "inputSchemaName": null,
39
- "outputSchemaName": null
40
- },
41
66
  "pikkuCLIEntry": {
42
67
  "pikkuFuncName": "pikkuCLIEntry",
43
68
  "inputSchemaName": null,
@@ -53,11 +78,6 @@ pikkuState('function', 'meta', {
53
78
  "inputSchemaName": null,
54
79
  "outputSchemaName": "PikkuCLIOutput"
55
80
  },
56
- "pikkuFetch": {
57
- "pikkuFuncName": "pikkuFetch",
58
- "inputSchemaName": null,
59
- "outputSchemaName": null
60
- },
61
81
  "pikkuFunctionTypesSplit": {
62
82
  "pikkuFuncName": "pikkuFunctionTypesSplit",
63
83
  "inputSchemaName": null,
@@ -78,10 +98,20 @@ pikkuState('function', 'meta', {
78
98
  "inputSchemaName": null,
79
99
  "outputSchemaName": null
80
100
  },
81
- "pikkuSchemas": {
82
- "pikkuFuncName": "pikkuSchemas",
101
+ "pikkuHTTPMap": {
102
+ "pikkuFuncName": "pikkuHTTPMap",
83
103
  "inputSchemaName": null,
84
- "outputSchemaName": "PikkuSchemasOutput"
104
+ "outputSchemaName": null
105
+ },
106
+ "pikkuHTTP": {
107
+ "pikkuFuncName": "pikkuHTTP",
108
+ "inputSchemaName": null,
109
+ "outputSchemaName": "PikkuHTTPOutput"
110
+ },
111
+ "pikkuHTTPTypes": {
112
+ "pikkuFuncName": "pikkuHTTPTypes",
113
+ "inputSchemaName": null,
114
+ "outputSchemaName": null
85
115
  },
86
116
  "pikkuMCPJSON": {
87
117
  "pikkuFuncName": "pikkuMCPJSON",
@@ -98,35 +128,30 @@ pikkuState('function', 'meta', {
98
128
  "inputSchemaName": null,
99
129
  "outputSchemaName": "PikkuMCPOutput"
100
130
  },
101
- "pikkuHTTPMap": {
102
- "pikkuFuncName": "pikkuHTTPMap",
131
+ "pikkuMiddleware": {
132
+ "pikkuFuncName": "pikkuMiddleware",
103
133
  "inputSchemaName": null,
104
- "outputSchemaName": null
134
+ "outputSchemaName": "PikkuMiddlewareOutput"
105
135
  },
106
- "pikkuHTTP": {
107
- "pikkuFuncName": "pikkuHTTP",
136
+ "pikkuPermissions": {
137
+ "pikkuFuncName": "pikkuPermissions",
108
138
  "inputSchemaName": null,
109
- "outputSchemaName": "PikkuHTTPOutput"
139
+ "outputSchemaName": "PikkuPermissionsOutput"
110
140
  },
111
- "pikkuHTTPTypes": {
112
- "pikkuFuncName": "pikkuHTTPTypes",
141
+ "pikkuQueueMap": {
142
+ "pikkuFuncName": "pikkuQueueMap",
113
143
  "inputSchemaName": null,
114
144
  "outputSchemaName": null
115
145
  },
116
- "pikkuOpenAPI": {
117
- "pikkuFuncName": "pikkuOpenAPI",
146
+ "pikkuQueueTypes": {
147
+ "pikkuFuncName": "pikkuQueueTypes",
118
148
  "inputSchemaName": null,
119
149
  "outputSchemaName": null
120
150
  },
121
- "pikkuMiddleware": {
122
- "pikkuFuncName": "pikkuMiddleware",
123
- "inputSchemaName": null,
124
- "outputSchemaName": "PikkuMiddlewareOutput"
125
- },
126
- "pikkuRPCClient": {
127
- "pikkuFuncName": "pikkuRPCClient",
151
+ "pikkuQueue": {
152
+ "pikkuFuncName": "pikkuQueue",
128
153
  "inputSchemaName": null,
129
- "outputSchemaName": null
154
+ "outputSchemaName": "PikkuQueueOutput"
130
155
  },
131
156
  "pikkuRPCInternalMap": {
132
157
  "pikkuFuncName": "pikkuRPCInternalMap",
@@ -143,26 +168,6 @@ pikkuState('function', 'meta', {
143
168
  "inputSchemaName": null,
144
169
  "outputSchemaName": "PikkuRPCOutput"
145
170
  },
146
- "pikkuQueueMap": {
147
- "pikkuFuncName": "pikkuQueueMap",
148
- "inputSchemaName": null,
149
- "outputSchemaName": null
150
- },
151
- "pikkuQueueService": {
152
- "pikkuFuncName": "pikkuQueueService",
153
- "inputSchemaName": null,
154
- "outputSchemaName": null
155
- },
156
- "pikkuQueueTypes": {
157
- "pikkuFuncName": "pikkuQueueTypes",
158
- "inputSchemaName": null,
159
- "outputSchemaName": null
160
- },
161
- "pikkuQueue": {
162
- "pikkuFuncName": "pikkuQueue",
163
- "inputSchemaName": null,
164
- "outputSchemaName": null
165
- },
166
171
  "pikkuSchedulerTypes": {
167
172
  "pikkuFuncName": "pikkuSchedulerTypes",
168
173
  "inputSchemaName": null,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /* Import and register functions used by RPCs */
5
5
  import { addFunction } from '@pikku/core';
@@ -23,6 +23,7 @@ import { pikkuMCPTypes } from '../../src/functions/wirings/mcp/pikku-command-mcp
23
23
  import { pikkuMiddleware } from '../../src/functions/wirings/middleware/pikku-command-middleware.js';
24
24
  import { pikkuNext } from '../../src/functions/runtimes/nextjs/pikku-command-nextjs.js';
25
25
  import { pikkuOpenAPI } from '../../src/functions/wirings/http/pikku-command-openapi.js';
26
+ import { pikkuPermissions } from '../../src/functions/wirings/permissions/pikku-command-permissions.js';
26
27
  import { pikkuQueue } from '../../src/functions/wirings/queue/pikku-queue.js';
27
28
  import { pikkuQueueMap } from '../../src/functions/wirings/queue/pikku-queue-map.js';
28
29
  import { pikkuQueueService } from '../../src/functions/wirings/queue/pikku-command-queue-service.js';
@@ -57,6 +58,7 @@ addFunction('pikkuMCPTypes', pikkuMCPTypes);
57
58
  addFunction('pikkuMiddleware', pikkuMiddleware);
58
59
  addFunction('pikkuNext', pikkuNext);
59
60
  addFunction('pikkuOpenAPI', pikkuOpenAPI);
61
+ addFunction('pikkuPermissions', pikkuPermissions);
60
62
  addFunction('pikkuQueue', pikkuQueue);
61
63
  addFunction('pikkuQueueMap', pikkuQueueMap);
62
64
  addFunction('pikkuQueueService', pikkuQueueService);
@@ -1,8 +1,7 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * HTTP-specific type definitions for tree-shaking optimization
7
6
  */
8
7
  import { AssertHTTPWiringParams } from '@pikku/core/http';
@@ -46,4 +45,24 @@ export declare const wireHTTP: <In, Out, Route extends string>(httpWiring: HTTPW
46
45
  * ```
47
46
  */
48
47
  export declare const addHTTPMiddleware: (routeOrMiddleware: PikkuMiddleware[] | string, middleware?: PikkuMiddleware[]) => void;
48
+ /**
49
+ * Registers HTTP permissions either globally or for a specific route pattern.
50
+ *
51
+ * When a string route pattern is provided along with permissions, the permissions
52
+ * are applied only to that route. Permissions can be passed as an array or as a
53
+ * permission group object.
54
+ *
55
+ * @param pattern - Route pattern string (e.g., '*' for all routes, '/api/*' for specific routes)
56
+ * @param permissions - The permissions to apply for the specified route pattern
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * // Add global HTTP permissions
61
+ * addHTTPPermission('*', { global: globalPermission })
62
+ *
63
+ * // Add route-specific permissions
64
+ * addHTTPPermission('/api/admin/*', { admin: adminPermission })
65
+ * ```
66
+ */
67
+ export declare const addHTTPPermission: <In = unknown>(pattern: string, permissions: Record<string, PikkuPermission<In>> | PikkuPermission<In>[]) => void;
49
68
  export {};
@@ -1,11 +1,10 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * HTTP-specific type definitions for tree-shaking optimization
7
6
  */
8
- import { wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore } from '@pikku/core/http';
7
+ import { wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore, addHTTPPermission as addHTTPPermissionCore } from '@pikku/core/http';
9
8
  /**
10
9
  * Registers an HTTP wiring with the Pikku framework.
11
10
  *
@@ -39,3 +38,25 @@ export const wireHTTP = (httpWiring) => {
39
38
  export const addHTTPMiddleware = (routeOrMiddleware, middleware) => {
40
39
  addHTTPMiddlewareCore(routeOrMiddleware, middleware);
41
40
  };
41
+ /**
42
+ * Registers HTTP permissions either globally or for a specific route pattern.
43
+ *
44
+ * When a string route pattern is provided along with permissions, the permissions
45
+ * are applied only to that route. Permissions can be passed as an array or as a
46
+ * permission group object.
47
+ *
48
+ * @param pattern - Route pattern string (e.g., '*' for all routes, '/api/*' for specific routes)
49
+ * @param permissions - The permissions to apply for the specified route pattern
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * // Add global HTTP permissions
54
+ * addHTTPPermission('*', { global: globalPermission })
55
+ *
56
+ * // Add route-specific permissions
57
+ * addHTTPPermission('/api/admin/*', { admin: adminPermission })
58
+ * ```
59
+ */
60
+ export const addHTTPPermission = (pattern, permissions) => {
61
+ addHTTPPermissionCore(pattern, permissions);
62
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.10.0
3
+ */
4
+ import { pikkuState } from '@pikku/core';
5
+ pikkuState('http', 'meta', {
6
+ "get": {},
7
+ "post": {},
8
+ "put": {},
9
+ "delete": {},
10
+ "head": {},
11
+ "patch": {},
12
+ "options": {}
13
+ });
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.10.0
4
+ */
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.10.0
4
+ */
5
+ /* The files with an wireHTTP function call */
@@ -1,18 +1,20 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * MCP-specific type definitions for tree-shaking optimization
7
6
  */
8
- import { CoreMCPResource, CoreMCPTool, CoreMCPPrompt, MCPResourceResponse, MCPToolResponse, MCPPromptResponse } from '@pikku/core';
7
+ import { CoreMCPResource, CoreMCPTool, CoreMCPPrompt, MCPResourceResponse, MCPToolResponse, MCPPromptResponse, AssertMCPResourceURIParams } from '@pikku/core/mcp';
9
8
  import type { PikkuFunctionConfig, PikkuFunctionSessionless } from '../function/pikku-function-types.gen.js';
10
9
  /**
11
10
  * Type definition for MCP resources that provide data to AI models.
12
11
  *
13
12
  * @template In - Input type for the resource request
13
+ * @template URI - URI template string type for compile-time parameter validation
14
14
  */
15
- type MCPResourceWiring<In> = CoreMCPResource<PikkuFunctionConfig<In, MCPResourceResponse>>;
15
+ type MCPResourceWiring<In, URI extends string> = CoreMCPResource<PikkuFunctionConfig<In, MCPResourceResponse>> & {
16
+ uri: URI;
17
+ };
16
18
  /**
17
19
  * Type definition for MCP tools that AI models can invoke.
18
20
  *
@@ -30,9 +32,10 @@ type MCPPromptWiring<In> = CoreMCPPrompt<PikkuFunctionConfig<In, MCPPromptRespon
30
32
  * Resources provide data that AI models can access.
31
33
  *
32
34
  * @template In - Input type for the resource request
35
+ * @template URI - URI template string for compile-time parameter validation
33
36
  * @param mcpResource - MCP resource definition with data provider function
34
37
  */
35
- export declare const wireMCPResource: <In>(mcpResource: MCPResourceWiring<In>) => void;
38
+ export declare const wireMCPResource: <In, URI extends string>(mcpResource: MCPResourceWiring<In, URI> & AssertMCPResourceURIParams<In, URI>) => void;
36
39
  /**
37
40
  * Registers an MCP tool with the Pikku framework.
38
41
  * Tools are functions that AI models can invoke.
@@ -60,7 +63,7 @@ export declare const wireMCPPrompt: <In>(mcpPrompt: MCPPromptWiring<In>) => void
60
63
  export declare const pikkuMCPPromptFunc: <In>(func: PikkuFunctionSessionless<In, MCPPromptResponse> | {
61
64
  func: PikkuFunctionSessionless<In, MCPPromptResponse>;
62
65
  name?: string;
63
- }) => PikkuFunctionSessionless<In, MCPPromptResponse>;
66
+ }) => PikkuFunctionConfig<In, MCPPromptResponse>;
64
67
  /**
65
68
  * Creates a function for handling MCP tool invocations.
66
69
  * These functions perform actions that AI models can request.
@@ -72,7 +75,7 @@ export declare const pikkuMCPPromptFunc: <In>(func: PikkuFunctionSessionless<In,
72
75
  export declare const pikkuMCPToolFunc: <In>(func: PikkuFunctionSessionless<In, MCPToolResponse, null, true> | {
73
76
  func: PikkuFunctionSessionless<In, MCPToolResponse, null, true>;
74
77
  name?: string;
75
- }) => PikkuFunctionSessionless<In, MCPToolResponse, null, true>;
78
+ }) => PikkuFunctionConfig<In, MCPToolResponse>;
76
79
  /**
77
80
  * Creates a function for handling MCP resource requests.
78
81
  * These functions provide data that AI models can access.
@@ -84,5 +87,5 @@ export declare const pikkuMCPToolFunc: <In>(func: PikkuFunctionSessionless<In, M
84
87
  export declare const pikkuMCPResourceFunc: <In>(func: PikkuFunctionSessionless<In, MCPResourceResponse, null, true> | {
85
88
  func: PikkuFunctionSessionless<In, MCPResourceResponse, null, true>;
86
89
  name?: string;
87
- }) => PikkuFunctionSessionless<In, MCPResourceResponse, null, true>;
90
+ }) => PikkuFunctionConfig<In, MCPResourceResponse>;
88
91
  export {};
@@ -1,16 +1,16 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * MCP-specific type definitions for tree-shaking optimization
7
6
  */
8
- import { wireMCPResource as wireMCPResourceCore, wireMCPTool as wireMCPToolCore, wireMCPPrompt as wireMCPPromptCore } from '@pikku/core';
7
+ import { wireMCPResource as wireMCPResourceCore, wireMCPTool as wireMCPToolCore, wireMCPPrompt as wireMCPPromptCore } from '@pikku/core/mcp';
9
8
  /**
10
9
  * Registers an MCP resource with the Pikku framework.
11
10
  * Resources provide data that AI models can access.
12
11
  *
13
12
  * @template In - Input type for the resource request
13
+ * @template URI - URI template string for compile-time parameter validation
14
14
  * @param mcpResource - MCP resource definition with data provider function
15
15
  */
16
16
  export const wireMCPResource = (mcpResource) => {
@@ -45,7 +45,7 @@ export const wireMCPPrompt = (mcpPrompt) => {
45
45
  * @returns The unwrapped function for internal use
46
46
  */
47
47
  export const pikkuMCPPromptFunc = (func) => {
48
- return typeof func === 'function' ? func : func.func;
48
+ return typeof func === 'function' ? { func } : func;
49
49
  };
50
50
  /**
51
51
  * Creates a function for handling MCP tool invocations.
@@ -56,7 +56,7 @@ export const pikkuMCPPromptFunc = (func) => {
56
56
  * @returns The unwrapped function for internal use
57
57
  */
58
58
  export const pikkuMCPToolFunc = (func) => {
59
- return typeof func === 'function' ? func : func.func;
59
+ return typeof func === 'function' ? { func } : func;
60
60
  };
61
61
  /**
62
62
  * Creates a function for handling MCP resource requests.
@@ -67,5 +67,5 @@ export const pikkuMCPToolFunc = (func) => {
67
67
  * @returns The unwrapped function for internal use
68
68
  */
69
69
  export const pikkuMCPResourceFunc = (func) => {
70
- return typeof func === 'function' ? func : func.func;
70
+ return typeof func === 'function' ? { func } : func;
71
71
  };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.10.0
3
+ */
4
+ import { pikkuState } from '@pikku/core';
5
+ pikkuState('mcp', 'resourcesMeta', {});
6
+ pikkuState('mcp', 'toolsMeta', {});
7
+ pikkuState('mcp', 'promptsMeta', {});
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.10.0
4
+ */
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.10.0
4
+ */
5
+ /* The files with an wireMCPResource or wireMCPTool function call */
@@ -1,9 +1,19 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  import './cli/pikku-cli-wirings-meta.gen.js';
5
+ import './mcp/pikku-mcp-wirings-meta.gen.js';
6
+ import './channel/pikku-channels-meta.gen.js';
7
+ import './queue/pikku-queue-workers-wirings-meta.gen.js';
8
+ import './scheduler/pikku-schedulers-wirings-meta.gen.js';
9
+ import './http/pikku-http-wirings-meta.gen.js';
5
10
  import './rpc/pikku-rpc-wirings-meta.internal.gen.js';
6
11
  import './function/pikku-functions-meta.gen.js';
7
12
  import './function/pikku-functions.gen.js';
8
13
  import './schemas/register.gen.js';
14
+ import './http/pikku-http-wirings.gen.js';
15
+ import './scheduler/pikku-schedulers-wirings.gen.js';
16
+ import './queue/pikku-queue-workers-wirings.gen.js';
17
+ import './channel/pikku-channels.gen.js';
18
+ import './mcp/pikku-mcp-wirings.gen.js';
9
19
  import './cli/pikku-cli-wirings.gen.js';
@@ -1,9 +1,19 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  import './cli/pikku-cli-wirings-meta.gen.js';
5
+ import './mcp/pikku-mcp-wirings-meta.gen.js';
6
+ import './channel/pikku-channels-meta.gen.js';
7
+ import './queue/pikku-queue-workers-wirings-meta.gen.js';
8
+ import './scheduler/pikku-schedulers-wirings-meta.gen.js';
9
+ import './http/pikku-http-wirings-meta.gen.js';
5
10
  import './rpc/pikku-rpc-wirings-meta.internal.gen.js';
6
11
  import './function/pikku-functions-meta.gen.js';
7
12
  import './function/pikku-functions.gen.js';
8
13
  import './schemas/register.gen.js';
14
+ import './http/pikku-http-wirings.gen.js';
15
+ import './scheduler/pikku-schedulers-wirings.gen.js';
16
+ import './queue/pikku-queue-workers-wirings.gen.js';
17
+ import './channel/pikku-channels.gen.js';
18
+ import './mcp/pikku-mcp-wirings.gen.js';
9
19
  import './cli/pikku-cli-wirings.gen.js';
@@ -1,8 +1,5 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
3
- */
4
- /**
5
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
6
3
  */
7
4
  import type { SingletonServices } from '../types/application-types.d.js';
8
5
  import type { Services } from '../types/application-types.d.js';
@@ -1,9 +1,3 @@
1
- /**
2
- * This file was generated by the @pikku/cli
3
- */
4
- /**
5
- * This file was generated by the @pikku/cli
6
- */
7
1
  export const singletonServices = {
8
2
  'config': true,
9
3
  'getInspectorState': true,
@@ -1,8 +1,7 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * Main type export hub - re-exports all wiring-specific types
7
6
  */
8
7
  export * from './function/pikku-function-types.gen.js';
@@ -1,8 +1,7 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * Main type export hub - re-exports all wiring-specific types
7
6
  */
8
7
  // Core function, middleware, and permission types
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.10.0
3
+ */
4
+ import { CorePikkuWebsocket, CorePikkuRouteHandler } from '@pikku/websocket';
5
+ import { ChannelDefaultHandlerOf, ChannelWiringHandlerOf, ChannelsMap } from './channel/pikku-channels-map.gen.d.js';
6
+ declare class PikkuWebSocketRoute<Channel extends keyof ChannelsMap, Route extends keyof ChannelsMap[Channel]['routes']> extends CorePikkuRouteHandler {
7
+ subscribe<Method extends keyof ChannelsMap[Channel]['routes'][Route], Data extends ChannelWiringHandlerOf<Channel, Route, Method>['output']>(method: Method, callback: (data: Data) => void): void;
8
+ unsubscribe<Method extends keyof ChannelsMap[Channel]['routes'][Route], Data extends ChannelWiringHandlerOf<Channel, Route, Method>['output']>(method: Method, callback?: (data: Data) => void): void;
9
+ send<Method extends keyof ChannelsMap[Channel]['routes'][Route], Data extends ChannelWiringHandlerOf<Channel, Route, Method>['input']>(method: Method, data: Data): void;
10
+ }
11
+ export declare class PikkuWebSocket<Channel extends keyof ChannelsMap, EventHubTopics extends Record<string, any> = {}> extends CorePikkuWebsocket {
12
+ /**
13
+ * Send a message to a specific route and method.
14
+ * Validates the input data type.
15
+ */
16
+ getRoute<Route extends keyof ChannelsMap[Channel]['routes']>(route: Route): PikkuWebSocketRoute<Channel, Route>;
17
+ /**
18
+ * Subscribe to a specific route and method.
19
+ */
20
+ subscribe<Data extends ChannelDefaultHandlerOf<Channel>['output']>(callback: (data: Data) => void): void;
21
+ /**
22
+ * Subscribe to a specific route and method.
23
+ */
24
+ unsubscribe<Data extends ChannelDefaultHandlerOf<Channel>['output']>(callback?: (data: Data) => void): void;
25
+ send(data: ChannelDefaultHandlerOf<Channel>['input']): void;
26
+ /**
27
+ * Subscribe to a topic from the EventHub system with strong typing.
28
+ */
29
+ subscribeToEventHub<Topic extends keyof EventHubTopics>(topic: Topic, callback: (data: EventHubTopics[Topic]) => void): void;
30
+ }
31
+ export {};
@@ -0,0 +1,49 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.10.0
3
+ */
4
+ import { CorePikkuWebsocket, CorePikkuRouteHandler } from '@pikku/websocket';
5
+ class PikkuWebSocketRoute extends CorePikkuRouteHandler {
6
+ subscribe(method, callback) {
7
+ super.subscribe(method.toString(), callback);
8
+ }
9
+ unsubscribe(method, callback) {
10
+ super.unsubscribe(method.toString(), callback);
11
+ }
12
+ send(method, data) {
13
+ super.send(method.toString(), data);
14
+ }
15
+ }
16
+ export class PikkuWebSocket extends CorePikkuWebsocket {
17
+ /**
18
+ * Send a message to a specific route and method.
19
+ * Validates the input data type.
20
+ */
21
+ getRoute(route) {
22
+ return super.getRoute(route);
23
+ }
24
+ /**
25
+ * Subscribe to a specific route and method.
26
+ */
27
+ subscribe(callback) {
28
+ super.subscribe(callback);
29
+ }
30
+ /**
31
+ * Subscribe to a specific route and method.
32
+ */
33
+ unsubscribe(callback) {
34
+ super.unsubscribe(callback);
35
+ }
36
+ send(data) {
37
+ super.send(data);
38
+ }
39
+ /**
40
+ * Subscribe to a topic from the EventHub system with strong typing.
41
+ */
42
+ subscribeToEventHub(topic, callback) {
43
+ super.subscribe((data) => {
44
+ if (data.topic === topic) {
45
+ callback(data);
46
+ }
47
+ });
48
+ }
49
+ }
@@ -1,8 +1,7 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * Queue-specific type definitions for tree-shaking optimization
7
6
  */
8
7
  import { CoreQueueWorker } from '@pikku/core/queue';
@@ -1,8 +1,7 @@
1
1
  /**
2
- * This file was generated by the @pikku/cli
2
+ * This file was generated by @pikku/cli@0.10.0
3
3
  */
4
4
  /**
5
- * This file was generated by the @pikku/cli
6
5
  * Queue-specific type definitions for tree-shaking optimization
7
6
  */
8
7
  import { wireQueueWorker as wireQueueWorkerCore } from '@pikku/core/queue';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.10.0
3
+ */
4
+ import { pikkuState } from '@pikku/core';
5
+ pikkuState('queue', 'meta', {});
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.10.0
4
+ */
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.10.0
4
+ */
5
+ /* The files with an addQueueWorkers function call */