@rapidrest/service-core 1.0.0-beta.1

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 (332) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +16 -0
  3. package/dist/lib/ApiErrors.js +41 -0
  4. package/dist/lib/ApiErrors.js.map +1 -0
  5. package/dist/lib/BackgroundService.js +16 -0
  6. package/dist/lib/BackgroundService.js.map +1 -0
  7. package/dist/lib/BackgroundServiceManager.js +135 -0
  8. package/dist/lib/BackgroundServiceManager.js.map +1 -0
  9. package/dist/lib/BulkError.js +24 -0
  10. package/dist/lib/BulkError.js.map +1 -0
  11. package/dist/lib/EventListenerManager.js +161 -0
  12. package/dist/lib/EventListenerManager.js.map +1 -0
  13. package/dist/lib/NetUtils.js +103 -0
  14. package/dist/lib/NetUtils.js.map +1 -0
  15. package/dist/lib/NotificationUtils.js +34 -0
  16. package/dist/lib/NotificationUtils.js.map +1 -0
  17. package/dist/lib/ObjectFactory.js +90 -0
  18. package/dist/lib/ObjectFactory.js.map +1 -0
  19. package/dist/lib/OpenApiSpec.js +748 -0
  20. package/dist/lib/OpenApiSpec.js.map +1 -0
  21. package/dist/lib/Server.js +549 -0
  22. package/dist/lib/Server.js.map +1 -0
  23. package/dist/lib/Types.js +2 -0
  24. package/dist/lib/Types.js.map +1 -0
  25. package/dist/lib/auth/AuthMiddleware.js +229 -0
  26. package/dist/lib/auth/AuthMiddleware.js.map +1 -0
  27. package/dist/lib/auth/AuthStrategy.js +2 -0
  28. package/dist/lib/auth/AuthStrategy.js.map +1 -0
  29. package/dist/lib/auth/BasicStrategy.js +106 -0
  30. package/dist/lib/auth/BasicStrategy.js.map +1 -0
  31. package/dist/lib/auth/JWTStrategy.js +161 -0
  32. package/dist/lib/auth/JWTStrategy.js.map +1 -0
  33. package/dist/lib/auth/index.js +5 -0
  34. package/dist/lib/auth/index.js.map +1 -0
  35. package/dist/lib/database/ConnectionKinds.js +14 -0
  36. package/dist/lib/database/ConnectionKinds.js.map +1 -0
  37. package/dist/lib/database/ConnectionManager.js +161 -0
  38. package/dist/lib/database/ConnectionManager.js.map +1 -0
  39. package/dist/lib/database/MongoConnection.js +86 -0
  40. package/dist/lib/database/MongoConnection.js.map +1 -0
  41. package/dist/lib/database/MongoRepository.js +136 -0
  42. package/dist/lib/database/MongoRepository.js.map +1 -0
  43. package/dist/lib/database/MongoSchemaSync.js +136 -0
  44. package/dist/lib/database/MongoSchemaSync.js.map +1 -0
  45. package/dist/lib/database/NamingUtils.js +52 -0
  46. package/dist/lib/database/NamingUtils.js.map +1 -0
  47. package/dist/lib/database/TypeOrmSupport.js +146 -0
  48. package/dist/lib/database/TypeOrmSupport.js.map +1 -0
  49. package/dist/lib/database/index.js +7 -0
  50. package/dist/lib/database/index.js.map +1 -0
  51. package/dist/lib/decorators/DatabaseDecorators.js +52 -0
  52. package/dist/lib/decorators/DatabaseDecorators.js.map +1 -0
  53. package/dist/lib/decorators/DocDecorators.js +120 -0
  54. package/dist/lib/decorators/DocDecorators.js.map +1 -0
  55. package/dist/lib/decorators/EventDecorators.js +24 -0
  56. package/dist/lib/decorators/EventDecorators.js.map +1 -0
  57. package/dist/lib/decorators/ModelDecorators.js +173 -0
  58. package/dist/lib/decorators/ModelDecorators.js.map +1 -0
  59. package/dist/lib/decorators/PersistenceDecorators.js +177 -0
  60. package/dist/lib/decorators/PersistenceDecorators.js.map +1 -0
  61. package/dist/lib/decorators/RouteDecorators.js +324 -0
  62. package/dist/lib/decorators/RouteDecorators.js.map +1 -0
  63. package/dist/lib/decorators/index.js +7 -0
  64. package/dist/lib/decorators/index.js.map +1 -0
  65. package/dist/lib/http/Adapters.js +230 -0
  66. package/dist/lib/http/Adapters.js.map +1 -0
  67. package/dist/lib/http/Router.js +403 -0
  68. package/dist/lib/http/Router.js.map +1 -0
  69. package/dist/lib/http/WebSocket.js +82 -0
  70. package/dist/lib/http/WebSocket.js.map +1 -0
  71. package/dist/lib/http/index.js +4 -0
  72. package/dist/lib/http/index.js.map +1 -0
  73. package/dist/lib/http/types.js +5 -0
  74. package/dist/lib/http/types.js.map +1 -0
  75. package/dist/lib/index.js +18 -0
  76. package/dist/lib/index.js.map +1 -0
  77. package/dist/lib/models/BaseEntity.js +83 -0
  78. package/dist/lib/models/BaseEntity.js.map +1 -0
  79. package/dist/lib/models/BaseMongoEntity.js +40 -0
  80. package/dist/lib/models/BaseMongoEntity.js.map +1 -0
  81. package/dist/lib/models/ModelUtils.js +645 -0
  82. package/dist/lib/models/ModelUtils.js.map +1 -0
  83. package/dist/lib/models/RecoverableBaseEntity.js +39 -0
  84. package/dist/lib/models/RecoverableBaseEntity.js.map +1 -0
  85. package/dist/lib/models/RecoverableBaseMongoEntity.js +40 -0
  86. package/dist/lib/models/RecoverableBaseMongoEntity.js.map +1 -0
  87. package/dist/lib/models/RepoUtils.js +717 -0
  88. package/dist/lib/models/RepoUtils.js.map +1 -0
  89. package/dist/lib/models/SimpleEntity.js +42 -0
  90. package/dist/lib/models/SimpleEntity.js.map +1 -0
  91. package/dist/lib/models/SimpleMongoEntity.js +38 -0
  92. package/dist/lib/models/SimpleMongoEntity.js.map +1 -0
  93. package/dist/lib/models/StatusExtraData.js +15 -0
  94. package/dist/lib/models/StatusExtraData.js.map +1 -0
  95. package/dist/lib/models/index.js +10 -0
  96. package/dist/lib/models/index.js.map +1 -0
  97. package/dist/lib/routes/AdminRoute.js +268 -0
  98. package/dist/lib/routes/AdminRoute.js.map +1 -0
  99. package/dist/lib/routes/MetricsRoute.js +86 -0
  100. package/dist/lib/routes/MetricsRoute.js.map +1 -0
  101. package/dist/lib/routes/ModelRoute.js +481 -0
  102. package/dist/lib/routes/ModelRoute.js.map +1 -0
  103. package/dist/lib/routes/OpenAPIRoute.js +115 -0
  104. package/dist/lib/routes/OpenAPIRoute.js.map +1 -0
  105. package/dist/lib/routes/RouteUtils.js +445 -0
  106. package/dist/lib/routes/RouteUtils.js.map +1 -0
  107. package/dist/lib/routes/StatusRoute.js +55 -0
  108. package/dist/lib/routes/StatusRoute.js.map +1 -0
  109. package/dist/lib/routes/index.js +7 -0
  110. package/dist/lib/routes/index.js.map +1 -0
  111. package/dist/lib/security/ACLRouteMongo.js +194 -0
  112. package/dist/lib/security/ACLRouteMongo.js.map +1 -0
  113. package/dist/lib/security/ACLRouteSQL.js +193 -0
  114. package/dist/lib/security/ACLRouteSQL.js.map +1 -0
  115. package/dist/lib/security/ACLUtils.js +457 -0
  116. package/dist/lib/security/ACLUtils.js.map +1 -0
  117. package/dist/lib/security/AccessControlList.js +18 -0
  118. package/dist/lib/security/AccessControlList.js.map +1 -0
  119. package/dist/lib/security/AccessControlListMongo.js +155 -0
  120. package/dist/lib/security/AccessControlListMongo.js.map +1 -0
  121. package/dist/lib/security/AccessControlListSQL.js +149 -0
  122. package/dist/lib/security/AccessControlListSQL.js.map +1 -0
  123. package/dist/lib/security/index.js +3 -0
  124. package/dist/lib/security/index.js.map +1 -0
  125. package/dist/lib/test/index.js +3 -0
  126. package/dist/lib/test/index.js.map +1 -0
  127. package/dist/lib/test/request.js +99 -0
  128. package/dist/lib/test/request.js.map +1 -0
  129. package/dist/lib/test/requestws.js +173 -0
  130. package/dist/lib/test/requestws.js.map +1 -0
  131. package/dist/types/ApiErrors.d.ts +38 -0
  132. package/dist/types/BackgroundService.d.ts +30 -0
  133. package/dist/types/BackgroundServiceManager.d.ts +66 -0
  134. package/dist/types/BulkError.d.ts +11 -0
  135. package/dist/types/EventListenerManager.d.ts +36 -0
  136. package/dist/types/NetUtils.d.ts +29 -0
  137. package/dist/types/NotificationUtils.d.ts +25 -0
  138. package/dist/types/ObjectFactory.d.ts +17 -0
  139. package/dist/types/OpenApiSpec.d.ts +114 -0
  140. package/dist/types/Server.d.ts +180 -0
  141. package/dist/types/Types.d.ts +8 -0
  142. package/dist/types/auth/AuthMiddleware.d.ts +42 -0
  143. package/dist/types/auth/AuthStrategy.d.ts +32 -0
  144. package/dist/types/auth/BasicStrategy.d.ts +33 -0
  145. package/dist/types/auth/JWTStrategy.d.ts +61 -0
  146. package/dist/types/auth/index.d.ts +4 -0
  147. package/dist/types/database/ConnectionKinds.d.ts +7 -0
  148. package/dist/types/database/ConnectionManager.d.ts +35 -0
  149. package/dist/types/database/MongoConnection.d.ts +54 -0
  150. package/dist/types/database/MongoRepository.d.ts +92 -0
  151. package/dist/types/database/MongoSchemaSync.d.ts +41 -0
  152. package/dist/types/database/NamingUtils.d.ts +24 -0
  153. package/dist/types/database/TypeOrmSupport.d.ts +20 -0
  154. package/dist/types/database/index.d.ts +6 -0
  155. package/dist/types/decorators/DatabaseDecorators.d.ts +18 -0
  156. package/dist/types/decorators/DocDecorators.d.ts +69 -0
  157. package/dist/types/decorators/EventDecorators.d.ts +12 -0
  158. package/dist/types/decorators/ModelDecorators.d.ts +80 -0
  159. package/dist/types/decorators/PersistenceDecorators.d.ts +117 -0
  160. package/dist/types/decorators/RouteDecorators.d.ts +172 -0
  161. package/dist/types/decorators/index.d.ts +6 -0
  162. package/dist/types/http/Adapters.d.ts +68 -0
  163. package/dist/types/http/Router.d.ts +99 -0
  164. package/dist/types/http/WebSocket.d.ts +56 -0
  165. package/dist/types/http/index.d.ts +6 -0
  166. package/dist/types/http/types.d.ts +54 -0
  167. package/dist/types/index.d.ts +17 -0
  168. package/dist/types/models/BaseEntity.d.ts +29 -0
  169. package/dist/types/models/BaseMongoEntity.d.ts +13 -0
  170. package/dist/types/models/ModelUtils.d.ts +166 -0
  171. package/dist/types/models/RecoverableBaseEntity.d.ts +16 -0
  172. package/dist/types/models/RecoverableBaseMongoEntity.d.ts +16 -0
  173. package/dist/types/models/RepoUtils.d.ts +154 -0
  174. package/dist/types/models/SimpleEntity.d.ts +14 -0
  175. package/dist/types/models/SimpleMongoEntity.d.ts +15 -0
  176. package/dist/types/models/StatusExtraData.d.ts +6 -0
  177. package/dist/types/models/index.d.ts +9 -0
  178. package/dist/types/routes/AdminRoute.d.ts +47 -0
  179. package/dist/types/routes/MetricsRoute.d.ts +15 -0
  180. package/dist/types/routes/ModelRoute.d.ts +226 -0
  181. package/dist/types/routes/OpenAPIRoute.d.ts +17 -0
  182. package/dist/types/routes/RouteUtils.d.ts +55 -0
  183. package/dist/types/routes/StatusRoute.d.ts +11 -0
  184. package/dist/types/routes/index.d.ts +6 -0
  185. package/dist/types/security/ACLRouteMongo.d.ts +19 -0
  186. package/dist/types/security/ACLRouteSQL.d.ts +19 -0
  187. package/dist/types/security/ACLUtils.d.ts +94 -0
  188. package/dist/types/security/AccessControlList.d.ts +103 -0
  189. package/dist/types/security/AccessControlListMongo.d.ts +24 -0
  190. package/dist/types/security/AccessControlListSQL.d.ts +24 -0
  191. package/dist/types/security/index.d.ts +2 -0
  192. package/dist/types/test/index.d.ts +2 -0
  193. package/dist/types/test/request.d.ts +24 -0
  194. package/dist/types/test/requestws.d.ts +21 -0
  195. package/docs/Makefile +20 -0
  196. package/docs/conf.py +58 -0
  197. package/docs/index.rst +17 -0
  198. package/docs/make.bat +35 -0
  199. package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/README.md +13 -0
  200. package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/MongoRepository.md +25 -0
  201. package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/RedisConnection.md +25 -0
  202. package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/Repository.md +25 -0
  203. package/docs/reference/@rapidrest/namespaces/DocDecorators/README.md +23 -0
  204. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Default.md +25 -0
  205. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Description.md +25 -0
  206. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Document.md +25 -0
  207. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Example.md +25 -0
  208. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Format.md +25 -0
  209. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Returns.md +28 -0
  210. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Summary.md +25 -0
  211. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Tags.md +25 -0
  212. package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/TypeInfo.md +28 -0
  213. package/docs/reference/@rapidrest/namespaces/DocDecorators/interfaces/DocumentsData.md +57 -0
  214. package/docs/reference/@rapidrest/namespaces/EventDecorators/README.md +12 -0
  215. package/docs/reference/@rapidrest/namespaces/EventDecorators/functions/EventListener.md +17 -0
  216. package/docs/reference/@rapidrest/namespaces/EventDecorators/functions/OnEvent.md +26 -0
  217. package/docs/reference/@rapidrest/namespaces/ModelDecorators/README.md +26 -0
  218. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Cache.md +25 -0
  219. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/ChildEntity.md +18 -0
  220. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/DataStore.md +25 -0
  221. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Identifier.md +27 -0
  222. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Protect.md +35 -0
  223. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Reference.md +25 -0
  224. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Shard.md +27 -0
  225. package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/TrackChanges.md +26 -0
  226. package/docs/reference/@rapidrest/namespaces/ModelDecorators/interfaces/PendingTypeOrmColumn.md +45 -0
  227. package/docs/reference/@rapidrest/namespaces/ModelDecorators/variables/pendingTypeOrmColumns.md +14 -0
  228. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/README.md +25 -0
  229. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Column.md +25 -0
  230. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Entity.md +26 -0
  231. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Index.md +119 -0
  232. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/PrimaryColumn.md +25 -0
  233. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Unique.md +68 -0
  234. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getColumnMetadata.md +26 -0
  235. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getEntityName.md +26 -0
  236. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getIndexMetadata.md +27 -0
  237. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/ColumnInfo.md +41 -0
  238. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/ColumnOptions.md +51 -0
  239. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexInfo.md +41 -0
  240. package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexOptions.md +51 -0
  241. package/docs/reference/@rapidrest/namespaces/RouteDecorators/README.md +36 -0
  242. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/After.md +26 -0
  243. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Auth.md +33 -0
  244. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/AuthResult.md +31 -0
  245. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Before.md +25 -0
  246. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/ContentType.md +25 -0
  247. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Delete.md +25 -0
  248. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Get.md +25 -0
  249. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Head.md +25 -0
  250. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Header.md +25 -0
  251. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Method.md +31 -0
  252. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Model.md +25 -0
  253. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Options.md +25 -0
  254. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Param.md +26 -0
  255. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Patch.md +25 -0
  256. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Post.md +25 -0
  257. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Protect.md +31 -0
  258. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Put.md +25 -0
  259. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Query.md +26 -0
  260. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Request.md +31 -0
  261. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/RequiresRole.md +26 -0
  262. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Response.md +31 -0
  263. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Route.md +25 -0
  264. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Socket.md +33 -0
  265. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/User.md +31 -0
  266. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Validate.md +25 -0
  267. package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/WebSocket.md +25 -0
  268. package/docs/reference/README.md +20 -0
  269. package/docs/reference/classes/ACLUtils.md +251 -0
  270. package/docs/reference/classes/AdminRoute.md +51 -0
  271. package/docs/reference/classes/AuthMiddleware.md +131 -0
  272. package/docs/reference/classes/BackgroundService.md +117 -0
  273. package/docs/reference/classes/BackgroundServiceManager.md +172 -0
  274. package/docs/reference/classes/BaseEntity.md +82 -0
  275. package/docs/reference/classes/BaseMongoEntity.md +107 -0
  276. package/docs/reference/classes/BasicStrategy.md +89 -0
  277. package/docs/reference/classes/BasicStrategyOptions.md +91 -0
  278. package/docs/reference/classes/BulkError.md +271 -0
  279. package/docs/reference/classes/ConnectionManager.md +75 -0
  280. package/docs/reference/classes/EventListenerManager.md +88 -0
  281. package/docs/reference/classes/JWTStrategy.md +77 -0
  282. package/docs/reference/classes/JWTStrategyOptions.md +97 -0
  283. package/docs/reference/classes/MetricsRoute.md +27 -0
  284. package/docs/reference/classes/ModelRoute.md +527 -0
  285. package/docs/reference/classes/ModelUtils.md +448 -0
  286. package/docs/reference/classes/MongoConnection.md +218 -0
  287. package/docs/reference/classes/MongoRepository.md +354 -0
  288. package/docs/reference/classes/MongoSchemaSync.md +67 -0
  289. package/docs/reference/classes/NetUtils.md +90 -0
  290. package/docs/reference/classes/NotificationUtils.md +77 -0
  291. package/docs/reference/classes/ObjectFactory.md +336 -0
  292. package/docs/reference/classes/OpenAPIRoute.md +77 -0
  293. package/docs/reference/classes/OpenApiSpec.md +892 -0
  294. package/docs/reference/classes/RecoverableBaseEntity.md +114 -0
  295. package/docs/reference/classes/RecoverableBaseMongoEntity.md +124 -0
  296. package/docs/reference/classes/RedisTransport.md +2202 -0
  297. package/docs/reference/classes/RepoUtils.md +486 -0
  298. package/docs/reference/classes/RouteUtils.md +191 -0
  299. package/docs/reference/classes/Server.md +408 -0
  300. package/docs/reference/classes/SimpleEntity.md +48 -0
  301. package/docs/reference/classes/SimpleMongoEntity.md +66 -0
  302. package/docs/reference/classes/StatusExtraData.md +57 -0
  303. package/docs/reference/classes/StatusRoute.md +26 -0
  304. package/docs/reference/enumerations/ACLAction.md +63 -0
  305. package/docs/reference/enumerations/ApiErrorMessages.md +123 -0
  306. package/docs/reference/enumerations/ApiErrors.md +123 -0
  307. package/docs/reference/functions/isSqlDataSource.md +26 -0
  308. package/docs/reference/functions/resolveCollectionName.md +33 -0
  309. package/docs/reference/functions/snakeCase.md +28 -0
  310. package/docs/reference/globals.md +91 -0
  311. package/docs/reference/interfaces/ACLRecord.md +96 -0
  312. package/docs/reference/interfaces/AccessControlList.md +76 -0
  313. package/docs/reference/interfaces/AuthResult.md +55 -0
  314. package/docs/reference/interfaces/AuthStrategy.md +57 -0
  315. package/docs/reference/interfaces/CreateRequestOptions.md +121 -0
  316. package/docs/reference/interfaces/DeleteRequestOptions.md +147 -0
  317. package/docs/reference/interfaces/FindRequestOptions.md +133 -0
  318. package/docs/reference/interfaces/JWTAuthResult.md +84 -0
  319. package/docs/reference/interfaces/RepoCreateOptions.md +95 -0
  320. package/docs/reference/interfaces/RepoDeleteOptions.md +115 -0
  321. package/docs/reference/interfaces/RepoFindOptions.md +135 -0
  322. package/docs/reference/interfaces/RepoOperationOptions.md +69 -0
  323. package/docs/reference/interfaces/RepoUpdateOptions.md +111 -0
  324. package/docs/reference/interfaces/RequestOptions.md +112 -0
  325. package/docs/reference/interfaces/TruncateRequestOptions.md +175 -0
  326. package/docs/reference/interfaces/UpdateRequestOptions.md +149 -0
  327. package/docs/reference/type-aliases/OneOrMany.md +19 -0
  328. package/docs/reference/type-aliases/OneOrNull.md +19 -0
  329. package/docs/reference/type-aliases/PartialBaseEntity.md +17 -0
  330. package/docs/reference/type-aliases/PartialSimpleEntity.md +17 -0
  331. package/docs/reference/type-aliases/UpdateObject.md +19 -0
  332. package/package.json +125 -0
@@ -0,0 +1,892 @@
1
+ [**@rapidrest/service-core**](../README.md)
2
+
3
+ ***
4
+
5
+ [@rapidrest/service-core](../globals.md) / OpenApiSpec
6
+
7
+ # Class: OpenApiSpec
8
+
9
+ Defined in: [src/OpenApiSpec.ts:19](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L19)
10
+
11
+ `OpenApiSpec` is a container for an OpenAPI specification.
12
+
13
+ This class wraps the behavior of openapi-ts to make it easier to build an OpenAPI
14
+ specification dynamically at runtime using the server RapidREST information.
15
+
16
+ ## Author
17
+
18
+ Jean-Philippe Steinmetz <rapidrests@gmail.com>
19
+
20
+ ## Constructors
21
+
22
+ ### Constructor
23
+
24
+ > **new OpenApiSpec**(`spec?`): `OpenApiSpec`
25
+
26
+ Defined in: [src/OpenApiSpec.ts:25](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L25)
27
+
28
+ #### Parameters
29
+
30
+ ##### spec?
31
+
32
+ `OpenAPIObject`
33
+
34
+ #### Returns
35
+
36
+ `OpenApiSpec`
37
+
38
+ ## Accessors
39
+
40
+ ### builder
41
+
42
+ #### Get Signature
43
+
44
+ > **get** **builder**(): `OpenApiBuilder`
45
+
46
+ Defined in: [src/OpenApiSpec.ts:29](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L29)
47
+
48
+ ##### Returns
49
+
50
+ `OpenApiBuilder`
51
+
52
+ #### Set Signature
53
+
54
+ > **set** **builder**(`value`): `void`
55
+
56
+ Defined in: [src/OpenApiSpec.ts:33](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L33)
57
+
58
+ ##### Parameters
59
+
60
+ ###### value
61
+
62
+ `OpenApiBuilder`
63
+
64
+ ##### Returns
65
+
66
+ `void`
67
+
68
+ ***
69
+
70
+ ### components
71
+
72
+ #### Get Signature
73
+
74
+ > **get** **components**(): `ComponentsObject` \| `undefined`
75
+
76
+ Defined in: [src/OpenApiSpec.ts:53](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L53)
77
+
78
+ ##### Returns
79
+
80
+ `ComponentsObject` \| `undefined`
81
+
82
+ ***
83
+
84
+ ### externalDocs
85
+
86
+ #### Get Signature
87
+
88
+ > **get** **externalDocs**(): `ExternalDocumentationObject` \| `undefined`
89
+
90
+ Defined in: [src/OpenApiSpec.ts:65](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L65)
91
+
92
+ ##### Returns
93
+
94
+ `ExternalDocumentationObject` \| `undefined`
95
+
96
+ ***
97
+
98
+ ### info
99
+
100
+ #### Get Signature
101
+
102
+ > **get** **info**(): `InfoObject`
103
+
104
+ Defined in: [src/OpenApiSpec.ts:41](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L41)
105
+
106
+ ##### Returns
107
+
108
+ `InfoObject`
109
+
110
+ ***
111
+
112
+ ### openapi
113
+
114
+ #### Get Signature
115
+
116
+ > **get** **openapi**(): `string`
117
+
118
+ Defined in: [src/OpenApiSpec.ts:37](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L37)
119
+
120
+ ##### Returns
121
+
122
+ `string`
123
+
124
+ ***
125
+
126
+ ### paths
127
+
128
+ #### Get Signature
129
+
130
+ > **get** **paths**(): `PathsObject` \| `undefined`
131
+
132
+ Defined in: [src/OpenApiSpec.ts:49](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L49)
133
+
134
+ ##### Returns
135
+
136
+ `PathsObject` \| `undefined`
137
+
138
+ ***
139
+
140
+ ### security
141
+
142
+ #### Get Signature
143
+
144
+ > **get** **security**(): `SecurityRequirementObject`[] \| `undefined`
145
+
146
+ Defined in: [src/OpenApiSpec.ts:57](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L57)
147
+
148
+ ##### Returns
149
+
150
+ `SecurityRequirementObject`[] \| `undefined`
151
+
152
+ ***
153
+
154
+ ### servers
155
+
156
+ #### Get Signature
157
+
158
+ > **get** **servers**(): `ServerObject`[] \| `undefined`
159
+
160
+ Defined in: [src/OpenApiSpec.ts:45](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L45)
161
+
162
+ ##### Returns
163
+
164
+ `ServerObject`[] \| `undefined`
165
+
166
+ ***
167
+
168
+ ### tags
169
+
170
+ #### Get Signature
171
+
172
+ > **get** **tags**(): `TagObject`[] \| `undefined`
173
+
174
+ Defined in: [src/OpenApiSpec.ts:61](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L61)
175
+
176
+ ##### Returns
177
+
178
+ `TagObject`[] \| `undefined`
179
+
180
+ ***
181
+
182
+ ### webhooks
183
+
184
+ #### Get Signature
185
+
186
+ > **get** **webhooks**(): `PathsObject` \| `undefined`
187
+
188
+ Defined in: [src/OpenApiSpec.ts:69](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L69)
189
+
190
+ ##### Returns
191
+
192
+ `PathsObject` \| `undefined`
193
+
194
+ ## Methods
195
+
196
+ ### addCallback()
197
+
198
+ > **addCallback**(`name`, `callback`): `OpenApiSpec`
199
+
200
+ Defined in: [src/OpenApiSpec.ts:264](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L264)
201
+
202
+ #### Parameters
203
+
204
+ ##### name
205
+
206
+ `string`
207
+
208
+ ##### callback
209
+
210
+ `ReferenceObject` \| `CallbackObject`
211
+
212
+ #### Returns
213
+
214
+ `OpenApiSpec`
215
+
216
+ ***
217
+
218
+ ### addContact()
219
+
220
+ > **addContact**(`contact`): `OpenApiSpec`
221
+
222
+ Defined in: [src/OpenApiSpec.ts:189](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L189)
223
+
224
+ #### Parameters
225
+
226
+ ##### contact
227
+
228
+ `ContactObject`
229
+
230
+ #### Returns
231
+
232
+ `OpenApiSpec`
233
+
234
+ ***
235
+
236
+ ### addDescription()
237
+
238
+ > **addDescription**(`description`): `OpenApiSpec`
239
+
240
+ Defined in: [src/OpenApiSpec.ts:204](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L204)
241
+
242
+ #### Parameters
243
+
244
+ ##### description
245
+
246
+ `string`
247
+
248
+ #### Returns
249
+
250
+ `OpenApiSpec`
251
+
252
+ ***
253
+
254
+ ### addExample()
255
+
256
+ > **addExample**(`name`, `example`): `OpenApiSpec`
257
+
258
+ Defined in: [src/OpenApiSpec.ts:239](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L239)
259
+
260
+ #### Parameters
261
+
262
+ ##### name
263
+
264
+ `string`
265
+
266
+ ##### example
267
+
268
+ `ReferenceObject` \| `ExampleObject`
269
+
270
+ #### Returns
271
+
272
+ `OpenApiSpec`
273
+
274
+ ***
275
+
276
+ ### addExternalDocs()
277
+
278
+ > **addExternalDocs**(`extDoc`): `OpenApiSpec`
279
+
280
+ Defined in: [src/OpenApiSpec.ts:279](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L279)
281
+
282
+ #### Parameters
283
+
284
+ ##### extDoc
285
+
286
+ `ExternalDocumentationObject`
287
+
288
+ #### Returns
289
+
290
+ `OpenApiSpec`
291
+
292
+ ***
293
+
294
+ ### addHeader()
295
+
296
+ > **addHeader**(`name`, `header`): `OpenApiSpec`
297
+
298
+ Defined in: [src/OpenApiSpec.ts:249](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L249)
299
+
300
+ #### Parameters
301
+
302
+ ##### name
303
+
304
+ `string`
305
+
306
+ ##### header
307
+
308
+ `ReferenceObject` \| `HeaderObject`
309
+
310
+ #### Returns
311
+
312
+ `OpenApiSpec`
313
+
314
+ ***
315
+
316
+ ### addInfo()
317
+
318
+ > **addInfo**(`info`): `OpenApiSpec`
319
+
320
+ Defined in: [src/OpenApiSpec.ts:184](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L184)
321
+
322
+ #### Parameters
323
+
324
+ ##### info
325
+
326
+ `InfoObject`
327
+
328
+ #### Returns
329
+
330
+ `OpenApiSpec`
331
+
332
+ ***
333
+
334
+ ### addLicense()
335
+
336
+ > **addLicense**(`license`): `OpenApiSpec`
337
+
338
+ Defined in: [src/OpenApiSpec.ts:194](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L194)
339
+
340
+ #### Parameters
341
+
342
+ ##### license
343
+
344
+ `LicenseObject`
345
+
346
+ #### Returns
347
+
348
+ `OpenApiSpec`
349
+
350
+ ***
351
+
352
+ ### addLink()
353
+
354
+ > **addLink**(`name`, `link`): `OpenApiSpec`
355
+
356
+ Defined in: [src/OpenApiSpec.ts:259](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L259)
357
+
358
+ #### Parameters
359
+
360
+ ##### name
361
+
362
+ `string`
363
+
364
+ ##### link
365
+
366
+ `ReferenceObject` \| `LinkObject`
367
+
368
+ #### Returns
369
+
370
+ `OpenApiSpec`
371
+
372
+ ***
373
+
374
+ ### addModel()
375
+
376
+ > **addModel**(`name`, `clazz`): `OpenApiSpec`
377
+
378
+ Defined in: [src/OpenApiSpec.ts:295](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L295)
379
+
380
+ Adds a RapidREST model class to the OpenAPI specification as a schema.
381
+
382
+ #### Parameters
383
+
384
+ ##### name
385
+
386
+ `string`
387
+
388
+ The name of the model to add.
389
+
390
+ ##### clazz
391
+
392
+ `any`
393
+
394
+ The class prototype to build the schema from.
395
+
396
+ #### Returns
397
+
398
+ `OpenApiSpec`
399
+
400
+ ***
401
+
402
+ ### addOpenApiVersion()
403
+
404
+ > **addOpenApiVersion**(`openApiVersion`): `OpenApiSpec`
405
+
406
+ Defined in: [src/OpenApiSpec.ts:179](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L179)
407
+
408
+ #### Parameters
409
+
410
+ ##### openApiVersion
411
+
412
+ `string`
413
+
414
+ #### Returns
415
+
416
+ `OpenApiSpec`
417
+
418
+ ***
419
+
420
+ ### addParameter()
421
+
422
+ > **addParameter**(`name`, `parameter`): `OpenApiSpec`
423
+
424
+ Defined in: [src/OpenApiSpec.ts:234](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L234)
425
+
426
+ #### Parameters
427
+
428
+ ##### name
429
+
430
+ `string`
431
+
432
+ ##### parameter
433
+
434
+ `ReferenceObject` \| `ParameterObject`
435
+
436
+ #### Returns
437
+
438
+ `OpenApiSpec`
439
+
440
+ ***
441
+
442
+ ### addPath()
443
+
444
+ > **addPath**(`path`, `pathItem`): `OpenApiSpec`
445
+
446
+ Defined in: [src/OpenApiSpec.ts:219](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L219)
447
+
448
+ #### Parameters
449
+
450
+ ##### path
451
+
452
+ `string`
453
+
454
+ ##### pathItem
455
+
456
+ `PathItemObject`
457
+
458
+ #### Returns
459
+
460
+ `OpenApiSpec`
461
+
462
+ ***
463
+
464
+ ### addRequestBody()
465
+
466
+ > **addRequestBody**(`name`, `reqBody`): `OpenApiSpec`
467
+
468
+ Defined in: [src/OpenApiSpec.ts:244](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L244)
469
+
470
+ #### Parameters
471
+
472
+ ##### name
473
+
474
+ `string`
475
+
476
+ ##### reqBody
477
+
478
+ `ReferenceObject` \| `RequestBodyObject`
479
+
480
+ #### Returns
481
+
482
+ `OpenApiSpec`
483
+
484
+ ***
485
+
486
+ ### addResponse()
487
+
488
+ > **addResponse**(`name`, `response`): `OpenApiSpec`
489
+
490
+ Defined in: [src/OpenApiSpec.ts:229](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L229)
491
+
492
+ #### Parameters
493
+
494
+ ##### name
495
+
496
+ `string`
497
+
498
+ ##### response
499
+
500
+ `ReferenceObject` \| `ResponseObject`
501
+
502
+ #### Returns
503
+
504
+ `OpenApiSpec`
505
+
506
+ ***
507
+
508
+ ### addRoute()
509
+
510
+ > **addRoute**(`name`, `path`, `method`, `metadata`, `docs`, `routeClass`): `OpenApiSpec`
511
+
512
+ Defined in: [src/OpenApiSpec.ts:311](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L311)
513
+
514
+ Adds a RapidREST route handler to the OpenAPI specification.
515
+
516
+ #### Parameters
517
+
518
+ ##### name
519
+
520
+ `string`
521
+
522
+ The name of the route handler. (e.g. findAll)
523
+
524
+ ##### path
525
+
526
+ `string`
527
+
528
+ The complete path of the route handler. (e.g. `/my/resources/:id`)
529
+
530
+ ##### method
531
+
532
+ `string`
533
+
534
+ The HTTP verb type that the route handler processes. (e.g. `GET`)
535
+
536
+ ##### metadata
537
+
538
+ `any`
539
+
540
+ The object containing all API information about the route handler.
541
+
542
+ ##### docs
543
+
544
+ [`DocumentsData`](../@rapidrest/namespaces/DocDecorators/interfaces/DocumentsData.md)
545
+
546
+ The object containing all documentation information about the route handler.
547
+
548
+ ##### routeClass
549
+
550
+ `any`
551
+
552
+ The parent route class that the route handler belongs to.
553
+
554
+ #### Returns
555
+
556
+ `OpenApiSpec`
557
+
558
+ ***
559
+
560
+ ### addSchema()
561
+
562
+ > **addSchema**(`name`, `schema`): `OpenApiSpec`
563
+
564
+ Defined in: [src/OpenApiSpec.ts:224](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L224)
565
+
566
+ #### Parameters
567
+
568
+ ##### name
569
+
570
+ `string`
571
+
572
+ ##### schema
573
+
574
+ `SchemaObject` \| `ReferenceObject`
575
+
576
+ #### Returns
577
+
578
+ `OpenApiSpec`
579
+
580
+ ***
581
+
582
+ ### addSecurityScheme()
583
+
584
+ > **addSecurityScheme**(`name`, `secScheme`): `OpenApiSpec`
585
+
586
+ Defined in: [src/OpenApiSpec.ts:254](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L254)
587
+
588
+ #### Parameters
589
+
590
+ ##### name
591
+
592
+ `string`
593
+
594
+ ##### secScheme
595
+
596
+ `ReferenceObject` \| `SecuritySchemeObject`
597
+
598
+ #### Returns
599
+
600
+ `OpenApiSpec`
601
+
602
+ ***
603
+
604
+ ### addServer()
605
+
606
+ > **addServer**(`server`): `OpenApiSpec`
607
+
608
+ Defined in: [src/OpenApiSpec.ts:269](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L269)
609
+
610
+ #### Parameters
611
+
612
+ ##### server
613
+
614
+ `ServerObject`
615
+
616
+ #### Returns
617
+
618
+ `OpenApiSpec`
619
+
620
+ ***
621
+
622
+ ### addTag()
623
+
624
+ > **addTag**(`tag`): `OpenApiSpec`
625
+
626
+ Defined in: [src/OpenApiSpec.ts:274](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L274)
627
+
628
+ #### Parameters
629
+
630
+ ##### tag
631
+
632
+ `TagObject`
633
+
634
+ #### Returns
635
+
636
+ `OpenApiSpec`
637
+
638
+ ***
639
+
640
+ ### addTermsOfService()
641
+
642
+ > **addTermsOfService**(`termsOfService`): `OpenApiSpec`
643
+
644
+ Defined in: [src/OpenApiSpec.ts:209](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L209)
645
+
646
+ #### Parameters
647
+
648
+ ##### termsOfService
649
+
650
+ `string`
651
+
652
+ #### Returns
653
+
654
+ `OpenApiSpec`
655
+
656
+ ***
657
+
658
+ ### addTitle()
659
+
660
+ > **addTitle**(`title`): `OpenApiSpec`
661
+
662
+ Defined in: [src/OpenApiSpec.ts:199](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L199)
663
+
664
+ #### Parameters
665
+
666
+ ##### title
667
+
668
+ `string`
669
+
670
+ #### Returns
671
+
672
+ `OpenApiSpec`
673
+
674
+ ***
675
+
676
+ ### addVersion()
677
+
678
+ > **addVersion**(`version`): `OpenApiSpec`
679
+
680
+ Defined in: [src/OpenApiSpec.ts:214](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L214)
681
+
682
+ #### Parameters
683
+
684
+ ##### version
685
+
686
+ `string`
687
+
688
+ #### Returns
689
+
690
+ `OpenApiSpec`
691
+
692
+ ***
693
+
694
+ ### addWebhook()
695
+
696
+ > **addWebhook**(`webhook`, `webhookItem`): `OpenApiSpec`
697
+
698
+ Defined in: [src/OpenApiSpec.ts:284](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L284)
699
+
700
+ #### Parameters
701
+
702
+ ##### webhook
703
+
704
+ `string`
705
+
706
+ ##### webhookItem
707
+
708
+ `PathItemObject`
709
+
710
+ #### Returns
711
+
712
+ `OpenApiSpec`
713
+
714
+ ***
715
+
716
+ ### createSchemaClass()
717
+
718
+ > **createSchemaClass**(`clazz`): `SchemaObject`
719
+
720
+ Defined in: [src/OpenApiSpec.ts:590](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L590)
721
+
722
+ Creates a new SchemaObject given the specified class prototype.
723
+
724
+ #### Parameters
725
+
726
+ ##### clazz
727
+
728
+ `any`
729
+
730
+ The class prototype to build a schema object from.
731
+
732
+ #### Returns
733
+
734
+ `SchemaObject`
735
+
736
+ The schema object with all information derived from the given class prototype.
737
+
738
+ ***
739
+
740
+ ### createSchemaObject()
741
+
742
+ > **createSchemaObject**(`typeInfo`, `defaultValue?`, `description?`, `example?`, `format?`, `identifier?`): `SchemaObject` \| `ReferenceObject`
743
+
744
+ Defined in: [src/OpenApiSpec.ts:685](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L685)
745
+
746
+ Creates a schema object for the given type.
747
+
748
+ #### Parameters
749
+
750
+ ##### typeInfo
751
+
752
+ `any`
753
+
754
+ ##### defaultValue?
755
+
756
+ `any`
757
+
758
+ ##### description?
759
+
760
+ `string`
761
+
762
+ ##### example?
763
+
764
+ `any`
765
+
766
+ ##### format?
767
+
768
+ `string`
769
+
770
+ ##### identifier?
771
+
772
+ `boolean`
773
+
774
+ #### Returns
775
+
776
+ `SchemaObject` \| `ReferenceObject`
777
+
778
+ ***
779
+
780
+ ### getParameterReference()
781
+
782
+ > **getParameterReference**(`name`): `ReferenceObject` \| `undefined`
783
+
784
+ Defined in: [src/OpenApiSpec.ts:781](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L781)
785
+
786
+ Returns a reference to an existing parameter defined in the OpenAPI specification for the given name.
787
+
788
+ #### Parameters
789
+
790
+ ##### name
791
+
792
+ `string`
793
+
794
+ The name of the parameter to find a reference for.
795
+
796
+ #### Returns
797
+
798
+ `ReferenceObject` \| `undefined`
799
+
800
+ The reference to the parameter with the given name, otherwise `undefined`.
801
+
802
+ ***
803
+
804
+ ### getSchemaReference()
805
+
806
+ > **getSchemaReference**(`name`): `ReferenceObject` \| `undefined`
807
+
808
+ Defined in: [src/OpenApiSpec.ts:797](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L797)
809
+
810
+ Returns a reference to an existing schema defined in the OpenAPI specification for the given name.
811
+
812
+ #### Parameters
813
+
814
+ ##### name
815
+
816
+ `string`
817
+
818
+ The name of the schema to find a reference for.
819
+
820
+ #### Returns
821
+
822
+ `ReferenceObject` \| `undefined`
823
+
824
+ The reference to the schema with the given name, otherwise `undefined`.
825
+
826
+ ***
827
+
828
+ ### getSpec()
829
+
830
+ > **getSpec**(): `OpenAPIObject`
831
+
832
+ Defined in: [src/OpenApiSpec.ts:167](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L167)
833
+
834
+ #### Returns
835
+
836
+ `OpenAPIObject`
837
+
838
+ ***
839
+
840
+ ### getSpecAsJson()
841
+
842
+ > **getSpecAsJson**(`replacer?`, `space?`): `string`
843
+
844
+ Defined in: [src/OpenApiSpec.ts:171](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L171)
845
+
846
+ #### Parameters
847
+
848
+ ##### replacer?
849
+
850
+ (`key`, `value`) => `unknown`
851
+
852
+ ##### space?
853
+
854
+ `string` \| `number`
855
+
856
+ #### Returns
857
+
858
+ `string`
859
+
860
+ ***
861
+
862
+ ### getSpecAsYaml()
863
+
864
+ > **getSpecAsYaml**(): `string`
865
+
866
+ Defined in: [src/OpenApiSpec.ts:175](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L175)
867
+
868
+ #### Returns
869
+
870
+ `string`
871
+
872
+ ***
873
+
874
+ ### merge()
875
+
876
+ > **merge**(`other`): `void`
877
+
878
+ Defined in: [src/OpenApiSpec.ts:811](https://github.com/rapidrest/service-core/blob/c8974caa9b5d3eb225bcbcd93945f2e588fe2f0a/src/OpenApiSpec.ts#L811)
879
+
880
+ Merges a provided OpenAPI specification with this specification.
881
+
882
+ #### Parameters
883
+
884
+ ##### other
885
+
886
+ `any`
887
+
888
+ The other OpenAPI spec object to merge.
889
+
890
+ #### Returns
891
+
892
+ `void`