@robinmordasiewicz/f5xc-api-mcp 3.0.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 (212) hide show
  1. package/CHANGELOG.md +74 -0
  2. package/README.md +234 -0
  3. package/dist/auth/credential-manager.d.ts +116 -0
  4. package/dist/auth/credential-manager.d.ts.map +1 -0
  5. package/dist/auth/credential-manager.js +208 -0
  6. package/dist/auth/credential-manager.js.map +1 -0
  7. package/dist/auth/http-client.d.ts +81 -0
  8. package/dist/auth/http-client.d.ts.map +1 -0
  9. package/dist/auth/http-client.js +197 -0
  10. package/dist/auth/http-client.js.map +1 -0
  11. package/dist/auth/index.d.ts +8 -0
  12. package/dist/auth/index.d.ts.map +1 -0
  13. package/dist/auth/index.js +6 -0
  14. package/dist/auth/index.js.map +1 -0
  15. package/dist/generator/index.d.ts +7 -0
  16. package/dist/generator/index.d.ts.map +1 -0
  17. package/dist/generator/index.js +7 -0
  18. package/dist/generator/index.js.map +1 -0
  19. package/dist/generator/naming/acronyms.d.ts +81 -0
  20. package/dist/generator/naming/acronyms.d.ts.map +1 -0
  21. package/dist/generator/naming/acronyms.js +253 -0
  22. package/dist/generator/naming/acronyms.js.map +1 -0
  23. package/dist/generator/naming/index.d.ts +6 -0
  24. package/dist/generator/naming/index.d.ts.map +1 -0
  25. package/dist/generator/naming/index.js +6 -0
  26. package/dist/generator/naming/index.js.map +1 -0
  27. package/dist/generator/naming/volterra-mapping.d.ts +102 -0
  28. package/dist/generator/naming/volterra-mapping.d.ts.map +1 -0
  29. package/dist/generator/naming/volterra-mapping.js +259 -0
  30. package/dist/generator/naming/volterra-mapping.js.map +1 -0
  31. package/dist/generator/openapi-parser.d.ts +339 -0
  32. package/dist/generator/openapi-parser.d.ts.map +1 -0
  33. package/dist/generator/openapi-parser.js +463 -0
  34. package/dist/generator/openapi-parser.js.map +1 -0
  35. package/dist/generator/tool-generator.d.ts +74 -0
  36. package/dist/generator/tool-generator.d.ts.map +1 -0
  37. package/dist/generator/tool-generator.js +387 -0
  38. package/dist/generator/tool-generator.js.map +1 -0
  39. package/dist/generator/transformers/index.d.ts +7 -0
  40. package/dist/generator/transformers/index.d.ts.map +1 -0
  41. package/dist/generator/transformers/index.js +7 -0
  42. package/dist/generator/transformers/index.js.map +1 -0
  43. package/dist/generator/transformers/normalize-examples.d.ts +48 -0
  44. package/dist/generator/transformers/normalize-examples.d.ts.map +1 -0
  45. package/dist/generator/transformers/normalize-examples.js +66 -0
  46. package/dist/generator/transformers/normalize-examples.js.map +1 -0
  47. package/dist/index.d.ts +21 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +70 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/prompts/index.d.ts +6 -0
  52. package/dist/prompts/index.d.ts.map +1 -0
  53. package/dist/prompts/index.js +5 -0
  54. package/dist/prompts/index.js.map +1 -0
  55. package/dist/prompts/workflows.d.ts +59 -0
  56. package/dist/prompts/workflows.d.ts.map +1 -0
  57. package/dist/prompts/workflows.js +585 -0
  58. package/dist/prompts/workflows.js.map +1 -0
  59. package/dist/resources/handlers.d.ts +72 -0
  60. package/dist/resources/handlers.d.ts.map +1 -0
  61. package/dist/resources/handlers.js +279 -0
  62. package/dist/resources/handlers.js.map +1 -0
  63. package/dist/resources/index.d.ts +8 -0
  64. package/dist/resources/index.d.ts.map +1 -0
  65. package/dist/resources/index.js +6 -0
  66. package/dist/resources/index.js.map +1 -0
  67. package/dist/resources/templates.d.ts +86 -0
  68. package/dist/resources/templates.d.ts.map +1 -0
  69. package/dist/resources/templates.js +248 -0
  70. package/dist/resources/templates.js.map +1 -0
  71. package/dist/server.d.ts +78 -0
  72. package/dist/server.d.ts.map +1 -0
  73. package/dist/server.js +426 -0
  74. package/dist/server.js.map +1 -0
  75. package/dist/tools/discovery/consolidate.d.ts +97 -0
  76. package/dist/tools/discovery/consolidate.d.ts.map +1 -0
  77. package/dist/tools/discovery/consolidate.js +200 -0
  78. package/dist/tools/discovery/consolidate.js.map +1 -0
  79. package/dist/tools/discovery/describe.d.ts +132 -0
  80. package/dist/tools/discovery/describe.d.ts.map +1 -0
  81. package/dist/tools/discovery/describe.js +206 -0
  82. package/dist/tools/discovery/describe.js.map +1 -0
  83. package/dist/tools/discovery/execute.d.ts +98 -0
  84. package/dist/tools/discovery/execute.d.ts.map +1 -0
  85. package/dist/tools/discovery/execute.js +251 -0
  86. package/dist/tools/discovery/execute.js.map +1 -0
  87. package/dist/tools/discovery/index-loader.d.ts +28 -0
  88. package/dist/tools/discovery/index-loader.d.ts.map +1 -0
  89. package/dist/tools/discovery/index-loader.js +69 -0
  90. package/dist/tools/discovery/index-loader.js.map +1 -0
  91. package/dist/tools/discovery/index.d.ts +185 -0
  92. package/dist/tools/discovery/index.d.ts.map +1 -0
  93. package/dist/tools/discovery/index.js +177 -0
  94. package/dist/tools/discovery/index.js.map +1 -0
  95. package/dist/tools/discovery/search.d.ts +41 -0
  96. package/dist/tools/discovery/search.d.ts.map +1 -0
  97. package/dist/tools/discovery/search.js +155 -0
  98. package/dist/tools/discovery/search.js.map +1 -0
  99. package/dist/tools/discovery/types.d.ts +70 -0
  100. package/dist/tools/discovery/types.d.ts.map +1 -0
  101. package/dist/tools/discovery/types.js +9 -0
  102. package/dist/tools/discovery/types.js.map +1 -0
  103. package/dist/tools/generated/ai_intelligence/index.d.ts +8 -0
  104. package/dist/tools/generated/ai_intelligence/index.d.ts.map +1 -0
  105. package/dist/tools/generated/ai_intelligence/index.js +282 -0
  106. package/dist/tools/generated/ai_intelligence/index.js.map +1 -0
  107. package/dist/tools/generated/api_security/index.d.ts +8 -0
  108. package/dist/tools/generated/api_security/index.d.ts.map +1 -0
  109. package/dist/tools/generated/api_security/index.js +1852 -0
  110. package/dist/tools/generated/api_security/index.js.map +1 -0
  111. package/dist/tools/generated/applications/index.d.ts +8 -0
  112. package/dist/tools/generated/applications/index.d.ts.map +1 -0
  113. package/dist/tools/generated/applications/index.js +1589 -0
  114. package/dist/tools/generated/applications/index.js.map +1 -0
  115. package/dist/tools/generated/bigip/index.d.ts +8 -0
  116. package/dist/tools/generated/bigip/index.d.ts.map +1 -0
  117. package/dist/tools/generated/bigip/index.js +1173 -0
  118. package/dist/tools/generated/bigip/index.js.map +1 -0
  119. package/dist/tools/generated/billing/index.d.ts +8 -0
  120. package/dist/tools/generated/billing/index.d.ts.map +1 -0
  121. package/dist/tools/generated/billing/index.js +759 -0
  122. package/dist/tools/generated/billing/index.js.map +1 -0
  123. package/dist/tools/generated/cdn/index.d.ts +8 -0
  124. package/dist/tools/generated/cdn/index.d.ts.map +1 -0
  125. package/dist/tools/generated/cdn/index.js +841 -0
  126. package/dist/tools/generated/cdn/index.js.map +1 -0
  127. package/dist/tools/generated/config/index.d.ts +8 -0
  128. package/dist/tools/generated/config/index.d.ts.map +1 -0
  129. package/dist/tools/generated/config/index.js +316 -0
  130. package/dist/tools/generated/config/index.js.map +1 -0
  131. package/dist/tools/generated/identity/index.d.ts +8 -0
  132. package/dist/tools/generated/identity/index.d.ts.map +1 -0
  133. package/dist/tools/generated/identity/index.js +5371 -0
  134. package/dist/tools/generated/identity/index.js.map +1 -0
  135. package/dist/tools/generated/infrastructure/index.d.ts +8 -0
  136. package/dist/tools/generated/infrastructure/index.d.ts.map +1 -0
  137. package/dist/tools/generated/infrastructure/index.js +5342 -0
  138. package/dist/tools/generated/infrastructure/index.js.map +1 -0
  139. package/dist/tools/generated/infrastructure_protection/index.d.ts +8 -0
  140. package/dist/tools/generated/infrastructure_protection/index.d.ts.map +1 -0
  141. package/dist/tools/generated/infrastructure_protection/index.js +2919 -0
  142. package/dist/tools/generated/infrastructure_protection/index.js.map +1 -0
  143. package/dist/tools/generated/integrations/index.d.ts +8 -0
  144. package/dist/tools/generated/integrations/index.d.ts.map +1 -0
  145. package/dist/tools/generated/integrations/index.js +1995 -0
  146. package/dist/tools/generated/integrations/index.js.map +1 -0
  147. package/dist/tools/generated/load_balancer/index.d.ts +8 -0
  148. package/dist/tools/generated/load_balancer/index.d.ts.map +1 -0
  149. package/dist/tools/generated/load_balancer/index.js +2269 -0
  150. package/dist/tools/generated/load_balancer/index.js.map +1 -0
  151. package/dist/tools/generated/networking/index.d.ts +8 -0
  152. package/dist/tools/generated/networking/index.d.ts.map +1 -0
  153. package/dist/tools/generated/networking/index.js +11289 -0
  154. package/dist/tools/generated/networking/index.js.map +1 -0
  155. package/dist/tools/generated/nginx/index.d.ts +8 -0
  156. package/dist/tools/generated/nginx/index.d.ts.map +1 -0
  157. package/dist/tools/generated/nginx/index.js +680 -0
  158. package/dist/tools/generated/nginx/index.js.map +1 -0
  159. package/dist/tools/generated/observability/index.d.ts +8 -0
  160. package/dist/tools/generated/observability/index.d.ts.map +1 -0
  161. package/dist/tools/generated/observability/index.js +6140 -0
  162. package/dist/tools/generated/observability/index.js.map +1 -0
  163. package/dist/tools/generated/operations/index.d.ts +8 -0
  164. package/dist/tools/generated/operations/index.d.ts.map +1 -0
  165. package/dist/tools/generated/operations/index.js +1759 -0
  166. package/dist/tools/generated/operations/index.js.map +1 -0
  167. package/dist/tools/generated/security/index.d.ts +8 -0
  168. package/dist/tools/generated/security/index.d.ts.map +1 -0
  169. package/dist/tools/generated/security/index.js +9111 -0
  170. package/dist/tools/generated/security/index.js.map +1 -0
  171. package/dist/tools/generated/service_mesh/index.d.ts +8 -0
  172. package/dist/tools/generated/service_mesh/index.d.ts.map +1 -0
  173. package/dist/tools/generated/service_mesh/index.js +1628 -0
  174. package/dist/tools/generated/service_mesh/index.js.map +1 -0
  175. package/dist/tools/generated/shape_security/index.d.ts +8 -0
  176. package/dist/tools/generated/shape_security/index.d.ts.map +1 -0
  177. package/dist/tools/generated/shape_security/index.js +4121 -0
  178. package/dist/tools/generated/shape_security/index.js.map +1 -0
  179. package/dist/tools/generated/subscriptions/index.d.ts +8 -0
  180. package/dist/tools/generated/subscriptions/index.d.ts.map +1 -0
  181. package/dist/tools/generated/subscriptions/index.js +778 -0
  182. package/dist/tools/generated/subscriptions/index.js.map +1 -0
  183. package/dist/tools/generated/tenant_management/index.d.ts +8 -0
  184. package/dist/tools/generated/tenant_management/index.d.ts.map +1 -0
  185. package/dist/tools/generated/tenant_management/index.js +2292 -0
  186. package/dist/tools/generated/tenant_management/index.js.map +1 -0
  187. package/dist/tools/generated/vpn/index.d.ts +8 -0
  188. package/dist/tools/generated/vpn/index.d.ts.map +1 -0
  189. package/dist/tools/generated/vpn/index.js +1183 -0
  190. package/dist/tools/generated/vpn/index.js.map +1 -0
  191. package/dist/tools/index.d.ts +7 -0
  192. package/dist/tools/index.d.ts.map +1 -0
  193. package/dist/tools/index.js +6 -0
  194. package/dist/tools/index.js.map +1 -0
  195. package/dist/tools/registry.d.ts +27 -0
  196. package/dist/tools/registry.d.ts.map +1 -0
  197. package/dist/tools/registry.js +83 -0
  198. package/dist/tools/registry.js.map +1 -0
  199. package/dist/utils/error-handling.d.ts +109 -0
  200. package/dist/utils/error-handling.d.ts.map +1 -0
  201. package/dist/utils/error-handling.js +239 -0
  202. package/dist/utils/error-handling.js.map +1 -0
  203. package/dist/utils/index.d.ts +7 -0
  204. package/dist/utils/index.d.ts.map +1 -0
  205. package/dist/utils/index.js +6 -0
  206. package/dist/utils/index.js.map +1 -0
  207. package/dist/utils/logging.d.ts +75 -0
  208. package/dist/utils/logging.d.ts.map +1 -0
  209. package/dist/utils/logging.js +131 -0
  210. package/dist/utils/logging.js.map +1 -0
  211. package/manifest.json +143 -0
  212. package/package.json +95 -0
@@ -0,0 +1,339 @@
1
+ /**
2
+ * OpenAPI Specification Parser
3
+ *
4
+ * Parses F5 Distributed Cloud OpenAPI specifications and extracts
5
+ * operation metadata for MCP tool generation.
6
+ */
7
+ import { z } from "zod";
8
+ /**
9
+ * OpenAPI Schema Types
10
+ */
11
+ declare const OpenApiParameterSchema: z.ZodObject<{
12
+ name: z.ZodString;
13
+ in: z.ZodEnum<{
14
+ path: "path";
15
+ query: "query";
16
+ header: "header";
17
+ cookie: "cookie";
18
+ }>;
19
+ required: z.ZodOptional<z.ZodBoolean>;
20
+ description: z.ZodOptional<z.ZodString>;
21
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
22
+ }, z.core.$strip>;
23
+ declare const OpenApiOperationSchema: z.ZodObject<{
24
+ operationId: z.ZodOptional<z.ZodString>;
25
+ summary: z.ZodOptional<z.ZodString>;
26
+ description: z.ZodOptional<z.ZodString>;
27
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
29
+ name: z.ZodString;
30
+ in: z.ZodEnum<{
31
+ path: "path";
32
+ query: "query";
33
+ header: "header";
34
+ cookie: "cookie";
35
+ }>;
36
+ required: z.ZodOptional<z.ZodBoolean>;
37
+ description: z.ZodOptional<z.ZodString>;
38
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
39
+ }, z.core.$strip>>>;
40
+ requestBody: z.ZodOptional<z.ZodObject<{
41
+ required: z.ZodOptional<z.ZodBoolean>;
42
+ description: z.ZodOptional<z.ZodString>;
43
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
44
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
45
+ }, z.core.$strip>>>;
46
+ }, z.core.$strip>>;
47
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
48
+ description: z.ZodOptional<z.ZodString>;
49
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
50
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
51
+ }, z.core.$strip>>>;
52
+ }, z.core.$strip>>>;
53
+ security: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
54
+ "x-ves-proto-rpc": z.ZodOptional<z.ZodString>;
55
+ }, z.core.$strip>;
56
+ declare const OpenApiSpecSchema: z.ZodObject<{
57
+ openapi: z.ZodOptional<z.ZodString>;
58
+ swagger: z.ZodOptional<z.ZodString>;
59
+ info: z.ZodObject<{
60
+ title: z.ZodString;
61
+ version: z.ZodString;
62
+ description: z.ZodOptional<z.ZodString>;
63
+ }, z.core.$strip>;
64
+ paths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
65
+ get: z.ZodOptional<z.ZodObject<{
66
+ operationId: z.ZodOptional<z.ZodString>;
67
+ summary: z.ZodOptional<z.ZodString>;
68
+ description: z.ZodOptional<z.ZodString>;
69
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
70
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
71
+ name: z.ZodString;
72
+ in: z.ZodEnum<{
73
+ path: "path";
74
+ query: "query";
75
+ header: "header";
76
+ cookie: "cookie";
77
+ }>;
78
+ required: z.ZodOptional<z.ZodBoolean>;
79
+ description: z.ZodOptional<z.ZodString>;
80
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
81
+ }, z.core.$strip>>>;
82
+ requestBody: z.ZodOptional<z.ZodObject<{
83
+ required: z.ZodOptional<z.ZodBoolean>;
84
+ description: z.ZodOptional<z.ZodString>;
85
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
86
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
87
+ }, z.core.$strip>>>;
88
+ }, z.core.$strip>>;
89
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
90
+ description: z.ZodOptional<z.ZodString>;
91
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
92
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
93
+ }, z.core.$strip>>>;
94
+ }, z.core.$strip>>>;
95
+ security: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
96
+ "x-ves-proto-rpc": z.ZodOptional<z.ZodString>;
97
+ }, z.core.$strip>>;
98
+ post: z.ZodOptional<z.ZodObject<{
99
+ operationId: z.ZodOptional<z.ZodString>;
100
+ summary: z.ZodOptional<z.ZodString>;
101
+ description: z.ZodOptional<z.ZodString>;
102
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
103
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
104
+ name: z.ZodString;
105
+ in: z.ZodEnum<{
106
+ path: "path";
107
+ query: "query";
108
+ header: "header";
109
+ cookie: "cookie";
110
+ }>;
111
+ required: z.ZodOptional<z.ZodBoolean>;
112
+ description: z.ZodOptional<z.ZodString>;
113
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
114
+ }, z.core.$strip>>>;
115
+ requestBody: z.ZodOptional<z.ZodObject<{
116
+ required: z.ZodOptional<z.ZodBoolean>;
117
+ description: z.ZodOptional<z.ZodString>;
118
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
119
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
120
+ }, z.core.$strip>>>;
121
+ }, z.core.$strip>>;
122
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
123
+ description: z.ZodOptional<z.ZodString>;
124
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
125
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
126
+ }, z.core.$strip>>>;
127
+ }, z.core.$strip>>>;
128
+ security: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
129
+ "x-ves-proto-rpc": z.ZodOptional<z.ZodString>;
130
+ }, z.core.$strip>>;
131
+ put: z.ZodOptional<z.ZodObject<{
132
+ operationId: z.ZodOptional<z.ZodString>;
133
+ summary: z.ZodOptional<z.ZodString>;
134
+ description: z.ZodOptional<z.ZodString>;
135
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
136
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
137
+ name: z.ZodString;
138
+ in: z.ZodEnum<{
139
+ path: "path";
140
+ query: "query";
141
+ header: "header";
142
+ cookie: "cookie";
143
+ }>;
144
+ required: z.ZodOptional<z.ZodBoolean>;
145
+ description: z.ZodOptional<z.ZodString>;
146
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
147
+ }, z.core.$strip>>>;
148
+ requestBody: z.ZodOptional<z.ZodObject<{
149
+ required: z.ZodOptional<z.ZodBoolean>;
150
+ description: z.ZodOptional<z.ZodString>;
151
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
152
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
153
+ }, z.core.$strip>>>;
154
+ }, z.core.$strip>>;
155
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
156
+ description: z.ZodOptional<z.ZodString>;
157
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
158
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
159
+ }, z.core.$strip>>>;
160
+ }, z.core.$strip>>>;
161
+ security: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
162
+ "x-ves-proto-rpc": z.ZodOptional<z.ZodString>;
163
+ }, z.core.$strip>>;
164
+ delete: z.ZodOptional<z.ZodObject<{
165
+ operationId: z.ZodOptional<z.ZodString>;
166
+ summary: z.ZodOptional<z.ZodString>;
167
+ description: z.ZodOptional<z.ZodString>;
168
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
169
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
170
+ name: z.ZodString;
171
+ in: z.ZodEnum<{
172
+ path: "path";
173
+ query: "query";
174
+ header: "header";
175
+ cookie: "cookie";
176
+ }>;
177
+ required: z.ZodOptional<z.ZodBoolean>;
178
+ description: z.ZodOptional<z.ZodString>;
179
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
180
+ }, z.core.$strip>>>;
181
+ requestBody: z.ZodOptional<z.ZodObject<{
182
+ required: z.ZodOptional<z.ZodBoolean>;
183
+ description: z.ZodOptional<z.ZodString>;
184
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
185
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
186
+ }, z.core.$strip>>>;
187
+ }, z.core.$strip>>;
188
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
189
+ description: z.ZodOptional<z.ZodString>;
190
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
191
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
192
+ }, z.core.$strip>>>;
193
+ }, z.core.$strip>>>;
194
+ security: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
195
+ "x-ves-proto-rpc": z.ZodOptional<z.ZodString>;
196
+ }, z.core.$strip>>;
197
+ patch: z.ZodOptional<z.ZodObject<{
198
+ operationId: z.ZodOptional<z.ZodString>;
199
+ summary: z.ZodOptional<z.ZodString>;
200
+ description: z.ZodOptional<z.ZodString>;
201
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
202
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
203
+ name: z.ZodString;
204
+ in: z.ZodEnum<{
205
+ path: "path";
206
+ query: "query";
207
+ header: "header";
208
+ cookie: "cookie";
209
+ }>;
210
+ required: z.ZodOptional<z.ZodBoolean>;
211
+ description: z.ZodOptional<z.ZodString>;
212
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
213
+ }, z.core.$strip>>>;
214
+ requestBody: z.ZodOptional<z.ZodObject<{
215
+ required: z.ZodOptional<z.ZodBoolean>;
216
+ description: z.ZodOptional<z.ZodString>;
217
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
218
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
219
+ }, z.core.$strip>>>;
220
+ }, z.core.$strip>>;
221
+ responses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
222
+ description: z.ZodOptional<z.ZodString>;
223
+ content: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
224
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
225
+ }, z.core.$strip>>>;
226
+ }, z.core.$strip>>>;
227
+ security: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
228
+ "x-ves-proto-rpc": z.ZodOptional<z.ZodString>;
229
+ }, z.core.$strip>>;
230
+ parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
231
+ name: z.ZodString;
232
+ in: z.ZodEnum<{
233
+ path: "path";
234
+ query: "query";
235
+ header: "header";
236
+ cookie: "cookie";
237
+ }>;
238
+ required: z.ZodOptional<z.ZodBoolean>;
239
+ description: z.ZodOptional<z.ZodString>;
240
+ schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
241
+ }, z.core.$strip>>>;
242
+ }, z.core.$strip>>>;
243
+ components: z.ZodOptional<z.ZodObject<{
244
+ schemas: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
245
+ securitySchemes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
246
+ }, z.core.$strip>>;
247
+ }, z.core.$strip>;
248
+ export type OpenApiSpec = z.infer<typeof OpenApiSpecSchema>;
249
+ export type OpenApiOperation = z.infer<typeof OpenApiOperationSchema>;
250
+ export type OpenApiParameter = z.infer<typeof OpenApiParameterSchema>;
251
+ /**
252
+ * Parsed operation with metadata for tool generation
253
+ */
254
+ export interface ParsedOperation {
255
+ /** Generated tool name */
256
+ toolName: string;
257
+ /** HTTP method */
258
+ method: string;
259
+ /** API path */
260
+ path: string;
261
+ /** Operation type (create, list, get, update, delete) */
262
+ operation: string;
263
+ /** Domain category (waap, dns, network, etc.) */
264
+ domain: string;
265
+ /** Resource type */
266
+ resource: string;
267
+ /** Human-readable summary */
268
+ summary: string;
269
+ /** Detailed description */
270
+ description: string;
271
+ /** Path parameters */
272
+ pathParameters: OpenApiParameter[];
273
+ /** Query parameters */
274
+ queryParameters: OpenApiParameter[];
275
+ /** Request body schema */
276
+ requestBodySchema: Record<string, unknown> | null;
277
+ /** Response schema */
278
+ responseSchema: Record<string, unknown> | null;
279
+ /** Required parameters */
280
+ requiredParams: string[];
281
+ /** Original operation ID */
282
+ operationId: string | null;
283
+ /** Tags for categorization */
284
+ tags: string[];
285
+ /** Source spec file */
286
+ sourceFile: string;
287
+ }
288
+ /**
289
+ * Parsed specification file
290
+ */
291
+ export interface ParsedSpec {
292
+ /** File path */
293
+ filePath: string;
294
+ /** Spec title */
295
+ title: string;
296
+ /** Spec version */
297
+ version: string;
298
+ /** Parsed operations */
299
+ operations: ParsedOperation[];
300
+ /** Component schemas */
301
+ schemas: Record<string, unknown>;
302
+ }
303
+ /**
304
+ * Parse a single OpenAPI specification file
305
+ * @param filePath - Absolute path to the spec file
306
+ * @param basePath - Optional base path for creating relative sourceFile paths (for deterministic output)
307
+ * @deprecated Use parseDomainSpecFile() for pre-enriched domain specs from robinmordasiewicz/f5xc-api-enriched
308
+ */
309
+ export declare function parseSpecFile(filePath: string, basePath?: string): ParsedSpec | null;
310
+ /**
311
+ * Parse all spec files in a directory
312
+ * @deprecated Use parseDomainsDirectory() for pre-enriched domain specs from robinmordasiewicz/f5xc-api-enriched
313
+ */
314
+ export declare function parseSpecDirectory(dirPath: string): ParsedSpec[];
315
+ /**
316
+ * Get all unique operations across all specs
317
+ */
318
+ export declare function getAllOperations(specs: ParsedSpec[]): ParsedOperation[];
319
+ /**
320
+ * Group operations by domain
321
+ */
322
+ export declare function groupOperationsByDomain(operations: ParsedOperation[]): Map<string, ParsedOperation[]>;
323
+ /**
324
+ * Parse a single enriched domain specification file
325
+ * Domain is derived from the filename (e.g., load_balancer.json → load_balancer)
326
+ *
327
+ * @param filePath - Absolute path to the domain spec file
328
+ * @param basePath - Optional base path for creating relative sourceFile paths
329
+ */
330
+ export declare function parseDomainSpecFile(filePath: string, basePath?: string): ParsedSpec | null;
331
+ /**
332
+ * Parse all enriched domain specs from a directory
333
+ * This is the primary entry point for the new enriched spec format
334
+ *
335
+ * @param dirPath - Path to the domains directory (specs/domains/)
336
+ */
337
+ export declare function parseDomainsDirectory(dirPath: string): ParsedSpec[];
338
+ export {};
339
+ //# sourceMappingURL=openapi-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-parser.d.ts","sourceRoot":"","sources":["../../src/generator/openapi-parser.ts"],"names":[],"mappings":"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"}