ember-source 4.10.0-beta.2 → 4.11.0-alpha.2

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 (361) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/build-metadata.json +3 -3
  3. package/dist/ember-template-compiler.js +147 -172
  4. package/dist/ember-template-compiler.map +1 -1
  5. package/dist/ember-testing.js +129 -6
  6. package/dist/ember-testing.map +1 -1
  7. package/dist/ember.debug.js +334 -314
  8. package/dist/ember.debug.map +1 -1
  9. package/dist/header/license.js +1 -1
  10. package/dist/packages/@ember/-internals/glimmer/index.js +60 -59
  11. package/dist/packages/@ember/-internals/metal/index.js +6 -6
  12. package/dist/packages/@ember/-internals/{utils/types.js → utility-types/index.js} +0 -0
  13. package/dist/packages/@ember/-internals/utils/index.js +3 -137
  14. package/dist/packages/@ember/-internals/views/lib/mixins/action_support.js +1 -2
  15. package/dist/packages/@ember/-internals/views/lib/views/states/default.js +1 -2
  16. package/dist/packages/@ember/-internals/views/lib/views/states/destroying.js +2 -3
  17. package/dist/packages/@ember/-internals/views/lib/views/states/in_dom.js +1 -2
  18. package/dist/packages/@ember/array/-internals.js +8 -0
  19. package/dist/packages/@ember/array/index.js +2 -2
  20. package/dist/packages/@ember/array/lib/make-array.js +10 -0
  21. package/dist/packages/@ember/canary-features/index.js +0 -4
  22. package/dist/packages/@ember/debug/data-adapter.js +16 -16
  23. package/dist/packages/@ember/debug/index.js +2 -3
  24. package/dist/packages/@ember/debug/lib/inspect.js +117 -0
  25. package/dist/packages/@ember/engine/instance.js +1 -2
  26. package/dist/packages/@ember/instrumentation/index.js +2 -8
  27. package/dist/packages/@ember/object/core.js +2 -1
  28. package/dist/packages/@ember/object/mixin.js +11 -2
  29. package/dist/packages/@ember/object/promise-proxy-mixin.js +1 -2
  30. package/dist/packages/@ember/owner/index.js +2 -2
  31. package/dist/packages/@ember/routing/lib/utils.js +1 -2
  32. package/dist/packages/@ember/routing/router.js +36 -37
  33. package/dist/packages/ember/index.js +3 -3
  34. package/dist/packages/ember/version.js +1 -1
  35. package/dist/packages/ember-testing/lib/adapters/qunit.js +1 -1
  36. package/docs/data.json +252 -253
  37. package/package.json +19 -19
  38. package/types/preview/@ember/controller/index.d.ts +1 -1
  39. package/types/preview/@ember/engine/-private/container-proxy-mixin.d.ts +1 -1
  40. package/types/preview/@ember/engine/-private/registry-proxy-mixin.d.ts +1 -1
  41. package/types/preview/@ember/error/index.d.ts +2 -2
  42. package/types/preview/ember/index.d.ts +1 -1
  43. package/types/preview/index.d.ts +0 -2
  44. package/types/publish.mjs +314 -294
  45. package/types/stable/@ember/-internals/bootstrap/index.d.ts +3 -0
  46. package/types/stable/@ember/-internals/browser-environment/index.d.ts +9 -0
  47. package/types/stable/@ember/-internals/browser-environment/lib/has-dom.d.ts +4 -0
  48. package/types/stable/@ember/-internals/container/index.d.ts +4 -0
  49. package/types/stable/@ember/-internals/container/lib/container.d.ts +164 -0
  50. package/types/stable/@ember/-internals/container/lib/registry.d.ts +292 -0
  51. package/types/stable/@ember/-internals/environment/index.d.ts +5 -0
  52. package/types/stable/@ember/-internals/environment/lib/context.d.ts +10 -0
  53. package/types/stable/@ember/-internals/environment/lib/env.d.ts +153 -0
  54. package/types/stable/@ember/-internals/environment/lib/global.d.ts +4 -0
  55. package/types/stable/@ember/-internals/error-handling/index.d.ts +9 -0
  56. package/types/stable/@ember/-internals/glimmer/index.d.ts +456 -0
  57. package/types/stable/@ember/-internals/glimmer/lib/component-managers/curly.d.ts +47 -0
  58. package/types/stable/@ember/-internals/glimmer/lib/component-managers/mount.d.ts +41 -0
  59. package/types/stable/@ember/-internals/glimmer/lib/component-managers/outlet.d.ts +51 -0
  60. package/types/stable/@ember/-internals/glimmer/lib/component-managers/root.d.ts +23 -0
  61. package/types/stable/@ember/-internals/glimmer/lib/component.d.ts +840 -0
  62. package/types/stable/@ember/-internals/glimmer/lib/components/abstract-input.d.ts +37 -0
  63. package/types/stable/@ember/-internals/glimmer/lib/components/input.d.ts +4 -0
  64. package/types/stable/@ember/-internals/glimmer/lib/components/internal.d.ts +48 -0
  65. package/types/stable/@ember/-internals/glimmer/lib/components/link-to.d.ts +4 -0
  66. package/types/stable/@ember/-internals/glimmer/lib/components/textarea.d.ts +4 -0
  67. package/types/stable/@ember/-internals/glimmer/lib/dom.d.ts +4 -0
  68. package/types/stable/@ember/-internals/glimmer/lib/environment.d.ts +11 -0
  69. package/types/stable/@ember/-internals/glimmer/lib/glimmer-component-docs.d.ts +387 -0
  70. package/types/stable/@ember/-internals/glimmer/lib/glimmer-tracking-docs.d.ts +249 -0
  71. package/types/stable/@ember/-internals/glimmer/lib/helper.d.ts +160 -0
  72. package/types/stable/@ember/-internals/glimmer/lib/helpers/-disallow-dynamic-resolution.d.ts +4 -0
  73. package/types/stable/@ember/-internals/glimmer/lib/helpers/-in-element-null-check.d.ts +4 -0
  74. package/types/stable/@ember/-internals/glimmer/lib/helpers/-normalize-class.d.ts +4 -0
  75. package/types/stable/@ember/-internals/glimmer/lib/helpers/-resolve.d.ts +4 -0
  76. package/types/stable/@ember/-internals/glimmer/lib/helpers/-track-array.d.ts +9 -0
  77. package/types/stable/@ember/-internals/glimmer/lib/helpers/action.d.ts +268 -0
  78. package/types/stable/@ember/-internals/glimmer/lib/helpers/array.d.ts +40 -0
  79. package/types/stable/@ember/-internals/glimmer/lib/helpers/component.d.ts +148 -0
  80. package/types/stable/@ember/-internals/glimmer/lib/helpers/concat.d.ts +27 -0
  81. package/types/stable/@ember/-internals/glimmer/lib/helpers/each-in.d.ts +160 -0
  82. package/types/stable/@ember/-internals/glimmer/lib/helpers/fn.d.ts +72 -0
  83. package/types/stable/@ember/-internals/glimmer/lib/helpers/get.d.ts +99 -0
  84. package/types/stable/@ember/-internals/glimmer/lib/helpers/hash.d.ts +43 -0
  85. package/types/stable/@ember/-internals/glimmer/lib/helpers/helper.d.ts +42 -0
  86. package/types/stable/@ember/-internals/glimmer/lib/helpers/if-unless.d.ts +181 -0
  87. package/types/stable/@ember/-internals/glimmer/lib/helpers/internal-helper.d.ts +5 -0
  88. package/types/stable/@ember/-internals/glimmer/lib/helpers/log.d.ts +18 -0
  89. package/types/stable/@ember/-internals/glimmer/lib/helpers/modifier.d.ts +41 -0
  90. package/types/stable/@ember/-internals/glimmer/lib/helpers/mut.d.ts +77 -0
  91. package/types/stable/@ember/-internals/glimmer/lib/helpers/page-title.d.ts +19 -0
  92. package/types/stable/@ember/-internals/glimmer/lib/helpers/readonly.d.ts +119 -0
  93. package/types/stable/@ember/-internals/glimmer/lib/helpers/unbound.d.ts +34 -0
  94. package/types/stable/@ember/-internals/glimmer/lib/helpers/unique-id.d.ts +7 -0
  95. package/types/stable/@ember/-internals/glimmer/lib/modifiers/action.d.ts +30 -0
  96. package/types/stable/@ember/-internals/glimmer/lib/modifiers/internal.d.ts +33 -0
  97. package/types/stable/@ember/-internals/glimmer/lib/modifiers/on.d.ts +94 -0
  98. package/types/stable/@ember/-internals/glimmer/lib/renderer.d.ts +96 -0
  99. package/types/stable/@ember/-internals/glimmer/lib/resolver.d.ts +16 -0
  100. package/types/stable/@ember/-internals/glimmer/lib/setup-registry.d.ts +5 -0
  101. package/types/stable/@ember/-internals/glimmer/lib/syntax/in-element.d.ts +46 -0
  102. package/types/stable/@ember/-internals/glimmer/lib/syntax/let.d.ts +54 -0
  103. package/types/stable/@ember/-internals/glimmer/lib/syntax/mount.d.ts +43 -0
  104. package/types/stable/@ember/-internals/glimmer/lib/syntax/outlet.d.ts +27 -0
  105. package/types/stable/@ember/-internals/glimmer/lib/syntax/utils.d.ts +4 -0
  106. package/types/stable/@ember/-internals/glimmer/lib/template.d.ts +6 -0
  107. package/types/stable/@ember/-internals/glimmer/lib/template_registry.d.ts +11 -0
  108. package/types/stable/@ember/-internals/glimmer/lib/utils/bindings.d.ts +10 -0
  109. package/types/stable/@ember/-internals/glimmer/lib/utils/curly-component-state-bucket.d.ts +31 -0
  110. package/types/stable/@ember/-internals/glimmer/lib/utils/debug-render-message.d.ts +4 -0
  111. package/types/stable/@ember/-internals/glimmer/lib/utils/iterator.d.ts +5 -0
  112. package/types/stable/@ember/-internals/glimmer/lib/utils/managers.d.ts +19 -0
  113. package/types/stable/@ember/-internals/glimmer/lib/utils/outlet.d.ts +51 -0
  114. package/types/stable/@ember/-internals/glimmer/lib/utils/process-args.d.ts +4 -0
  115. package/types/stable/@ember/-internals/glimmer/lib/utils/serialization-first-node-helpers.d.ts +3 -0
  116. package/types/stable/@ember/-internals/glimmer/lib/utils/string.d.ts +61 -0
  117. package/types/stable/@ember/-internals/glimmer/lib/utils/to-bool.d.ts +3 -0
  118. package/types/stable/@ember/-internals/glimmer/lib/views/outlet.d.ts +34 -0
  119. package/types/stable/@ember/-internals/meta/index.d.ts +3 -0
  120. package/types/stable/@ember/-internals/meta/lib/meta.d.ts +174 -0
  121. package/types/stable/@ember/-internals/metal/index.d.ts +26 -0
  122. package/types/stable/@ember/-internals/metal/lib/alias.d.ts +22 -0
  123. package/types/stable/@ember/-internals/metal/lib/array.d.ts +18 -0
  124. package/types/stable/@ember/-internals/metal/lib/array_events.d.ts +6 -0
  125. package/types/stable/@ember/-internals/metal/lib/cache.d.ts +121 -0
  126. package/types/stable/@ember/-internals/metal/lib/cached.d.ts +3 -0
  127. package/types/stable/@ember/-internals/metal/lib/chain-tags.d.ts +8 -0
  128. package/types/stable/@ember/-internals/metal/lib/change_event.d.ts +3 -0
  129. package/types/stable/@ember/-internals/metal/lib/computed.d.ts +484 -0
  130. package/types/stable/@ember/-internals/metal/lib/computed_cache.d.ts +3 -0
  131. package/types/stable/@ember/-internals/metal/lib/decorator.d.ts +64 -0
  132. package/types/stable/@ember/-internals/metal/lib/dependent_keys.d.ts +2 -0
  133. package/types/stable/@ember/-internals/metal/lib/deprecate_property.d.ts +18 -0
  134. package/types/stable/@ember/-internals/metal/lib/each_proxy_events.d.ts +5 -0
  135. package/types/stable/@ember/-internals/metal/lib/events.d.ts +91 -0
  136. package/types/stable/@ember/-internals/metal/lib/expand_properties.d.ts +33 -0
  137. package/types/stable/@ember/-internals/metal/lib/get_properties.d.ts +36 -0
  138. package/types/stable/@ember/-internals/metal/lib/injected_property.d.ts +25 -0
  139. package/types/stable/@ember/-internals/metal/lib/libraries.d.ts +31 -0
  140. package/types/stable/@ember/-internals/metal/lib/namespace_search.d.ts +19 -0
  141. package/types/stable/@ember/-internals/metal/lib/observer.d.ts +54 -0
  142. package/types/stable/@ember/-internals/metal/lib/path_cache.d.ts +3 -0
  143. package/types/stable/@ember/-internals/metal/lib/properties.d.ts +58 -0
  144. package/types/stable/@ember/-internals/metal/lib/property_events.d.ts +59 -0
  145. package/types/stable/@ember/-internals/metal/lib/property_get.d.ts +44 -0
  146. package/types/stable/@ember/-internals/metal/lib/property_set.d.ts +52 -0
  147. package/types/stable/@ember/-internals/metal/lib/set_properties.d.ts +32 -0
  148. package/types/stable/@ember/-internals/metal/lib/tags.d.ts +7 -0
  149. package/types/stable/@ember/-internals/metal/lib/tracked.d.ts +78 -0
  150. package/types/stable/@ember/-internals/overrides/index.d.ts +3 -0
  151. package/types/stable/@ember/-internals/owner/index.d.ts +646 -0
  152. package/types/stable/@ember/-internals/routing/index.d.ts +3 -0
  153. package/types/stable/@ember/-internals/runtime/index.d.ts +11 -0
  154. package/types/stable/@ember/-internals/runtime/lib/ext/rsvp.d.ts +5 -0
  155. package/types/stable/@ember/-internals/runtime/lib/mixins/-proxy.d.ts +34 -0
  156. package/types/stable/@ember/-internals/runtime/lib/mixins/action_handler.d.ts +23 -0
  157. package/types/stable/@ember/-internals/runtime/lib/mixins/comparable.d.ts +22 -0
  158. package/types/stable/@ember/-internals/runtime/lib/mixins/container_proxy.d.ts +22 -0
  159. package/types/stable/@ember/-internals/runtime/lib/mixins/registry_proxy.d.ts +22 -0
  160. package/types/stable/@ember/-internals/runtime/lib/mixins/target_action_support.d.ts +29 -0
  161. package/types/stable/@ember/-internals/utility-types/index.d.ts +10 -0
  162. package/types/stable/@ember/-internals/utils/index.d.ts +16 -0
  163. package/types/stable/@ember/-internals/utils/lib/cache.d.ts +14 -0
  164. package/types/stable/@ember/-internals/utils/lib/dictionary.d.ts +7 -0
  165. package/types/stable/@ember/-internals/utils/lib/get-debug-name.d.ts +4 -0
  166. package/types/stable/@ember/-internals/utils/lib/guid.d.ts +60 -0
  167. package/types/stable/@ember/-internals/utils/lib/intern.d.ts +42 -0
  168. package/types/stable/@ember/-internals/utils/lib/invoke.d.ts +24 -0
  169. package/types/stable/@ember/-internals/utils/lib/is_proxy.d.ts +5 -0
  170. package/types/stable/@ember/-internals/utils/lib/lookup-descriptor.d.ts +3 -0
  171. package/types/stable/@ember/-internals/utils/lib/mandatory-setter.d.ts +6 -0
  172. package/types/stable/@ember/-internals/utils/lib/name.d.ts +4 -0
  173. package/types/stable/@ember/-internals/utils/lib/spec.d.ts +14 -0
  174. package/types/stable/@ember/-internals/utils/lib/super.d.ts +31 -0
  175. package/types/stable/@ember/-internals/utils/lib/symbol.d.ts +5 -0
  176. package/types/stable/@ember/-internals/utils/lib/to-string.d.ts +3 -0
  177. package/types/stable/@ember/-internals/views/index.d.ts +13 -0
  178. package/types/stable/@ember/-internals/views/lib/compat/attrs.d.ts +3 -0
  179. package/types/stable/@ember/-internals/views/lib/compat/fallback-view-registry.d.ts +6 -0
  180. package/types/stable/@ember/-internals/views/lib/component_lookup.d.ts +5 -0
  181. package/types/stable/@ember/-internals/views/lib/mixins/action_support.d.ts +13 -0
  182. package/types/stable/@ember/-internals/views/lib/mixins/child_views_support.d.ts +13 -0
  183. package/types/stable/@ember/-internals/views/lib/mixins/class_names_support.d.ts +14 -0
  184. package/types/stable/@ember/-internals/views/lib/mixins/view_state_support.d.ts +13 -0
  185. package/types/stable/@ember/-internals/views/lib/mixins/view_support.d.ts +25 -0
  186. package/types/stable/@ember/-internals/views/lib/system/action_manager.d.ts +11 -0
  187. package/types/stable/@ember/-internals/views/lib/system/event_dispatcher.d.ts +117 -0
  188. package/types/stable/@ember/-internals/views/lib/system/utils.d.ts +94 -0
  189. package/types/stable/@ember/-internals/views/lib/views/core_view.d.ts +60 -0
  190. package/types/stable/@ember/-internals/views/lib/views/states/default.d.ts +5 -0
  191. package/types/stable/@ember/-internals/views/lib/views/states/destroying.d.ts +5 -0
  192. package/types/stable/@ember/-internals/views/lib/views/states/has_element.d.ts +5 -0
  193. package/types/stable/@ember/-internals/views/lib/views/states/in_dom.d.ts +5 -0
  194. package/types/stable/@ember/-internals/views/lib/views/states/pre_render.d.ts +11 -0
  195. package/types/stable/@ember/-internals/views/lib/views/states.d.ts +25 -0
  196. package/types/stable/@ember/application/index.d.ts +814 -0
  197. package/types/stable/@ember/application/instance.d.ts +288 -0
  198. package/types/stable/@ember/application/lib/lazy_load.d.ts +38 -0
  199. package/types/stable/@ember/application/namespace.d.ts +38 -0
  200. package/types/stable/@ember/array/-internals.d.ts +5 -0
  201. package/types/stable/@ember/array/index.d.ts +1457 -0
  202. package/types/stable/@ember/array/lib/make-array.d.ts +34 -0
  203. package/types/stable/@ember/array/mutable.d.ts +3 -0
  204. package/types/stable/@ember/array/proxy.d.ts +158 -0
  205. package/types/stable/@ember/canary-features/index.d.ts +49 -0
  206. package/types/stable/@ember/component/helper.d.ts +3 -0
  207. package/types/stable/@ember/component/index.d.ts +5 -0
  208. package/types/stable/@ember/component/template-only.d.ts +33 -0
  209. package/types/stable/@ember/controller/index.d.ts +277 -0
  210. package/types/stable/@ember/debug/container-debug-adapter.d.ts +73 -0
  211. package/types/stable/@ember/debug/data-adapter.d.ts +325 -0
  212. package/types/stable/@ember/debug/index.d.ts +52 -0
  213. package/types/stable/@ember/debug/lib/capture-render-tree.d.ts +21 -0
  214. package/types/stable/@ember/debug/lib/deprecate.d.ts +72 -0
  215. package/types/stable/@ember/debug/lib/handlers.d.ts +14 -0
  216. package/types/stable/@ember/debug/lib/inspect.d.ts +20 -0
  217. package/types/stable/@ember/debug/lib/testing.d.ts +4 -0
  218. package/types/stable/@ember/debug/lib/warn.d.ts +14 -0
  219. package/types/stable/@ember/deprecated-features/index.d.ts +3 -0
  220. package/types/stable/@ember/destroyable/index.d.ts +237 -0
  221. package/types/stable/@ember/engine/index.d.ts +347 -0
  222. package/types/stable/@ember/engine/instance.d.ts +127 -0
  223. package/types/stable/@ember/engine/lib/engine-parent.d.ts +27 -0
  224. package/types/stable/@ember/enumerable/index.d.ts +19 -0
  225. package/types/stable/@ember/enumerable/mutable.d.ts +21 -0
  226. package/types/stable/@ember/error/index.d.ts +15 -0
  227. package/types/stable/@ember/helper/index.d.ts +314 -0
  228. package/types/stable/@ember/instrumentation/index.d.ts +127 -0
  229. package/types/stable/@ember/modifier/index.d.ts +5 -0
  230. package/types/stable/@ember/object/-internals.d.ts +9 -0
  231. package/types/stable/@ember/object/compat.d.ts +90 -0
  232. package/types/stable/@ember/object/computed.d.ts +5 -0
  233. package/types/stable/@ember/object/core.d.ts +638 -0
  234. package/types/stable/@ember/object/evented.d.ts +134 -0
  235. package/types/stable/@ember/object/events.d.ts +3 -0
  236. package/types/stable/@ember/object/index.d.ts +60 -0
  237. package/types/stable/@ember/object/internals.d.ts +3 -0
  238. package/types/stable/@ember/object/lib/computed/computed_macros.d.ts +644 -0
  239. package/types/stable/@ember/object/lib/computed/reduce_computed_macros.d.ts +791 -0
  240. package/types/stable/@ember/object/mixin.d.ts +157 -0
  241. package/types/stable/@ember/object/observable.d.ts +383 -0
  242. package/types/stable/@ember/object/observers.d.ts +3 -0
  243. package/types/stable/@ember/object/promise-proxy-mixin.d.ts +167 -0
  244. package/types/stable/@ember/object/proxy.d.ts +88 -0
  245. package/types/stable/@ember/owner/index.d.ts +80 -0
  246. package/types/stable/@ember/polyfills/index.d.ts +4 -0
  247. package/types/stable/@ember/polyfills/lib/assign.d.ts +9 -0
  248. package/types/stable/@ember/renderer/index.d.ts +28 -0
  249. package/types/stable/@ember/routing/-internals.d.ts +11 -0
  250. package/types/stable/@ember/routing/auto-location.d.ts +149 -0
  251. package/types/stable/@ember/routing/hash-location.d.ts +113 -0
  252. package/types/stable/@ember/routing/history-location.d.ts +143 -0
  253. package/types/stable/@ember/routing/index.d.ts +3 -0
  254. package/types/stable/@ember/routing/lib/cache.d.ts +16 -0
  255. package/types/stable/@ember/routing/lib/controller_for.d.ts +15 -0
  256. package/types/stable/@ember/routing/lib/dsl.d.ts +52 -0
  257. package/types/stable/@ember/routing/lib/engines.d.ts +14 -0
  258. package/types/stable/@ember/routing/lib/generate_controller.d.ts +25 -0
  259. package/types/stable/@ember/routing/lib/location-utils.d.ts +31 -0
  260. package/types/stable/@ember/routing/lib/query_params.d.ts +7 -0
  261. package/types/stable/@ember/routing/lib/route-info.d.ts +3 -0
  262. package/types/stable/@ember/routing/lib/router_state.d.ts +13 -0
  263. package/types/stable/@ember/routing/lib/routing-service.d.ts +35 -0
  264. package/types/stable/@ember/routing/lib/utils.d.ts +36 -0
  265. package/types/stable/@ember/routing/location.d.ts +108 -0
  266. package/types/stable/@ember/routing/none-location.d.ts +83 -0
  267. package/types/stable/@ember/routing/route-info.d.ts +125 -0
  268. package/types/stable/@ember/routing/route.d.ts +1456 -0
  269. package/types/stable/@ember/routing/router-service.d.ts +588 -0
  270. package/types/stable/@ember/routing/router.d.ts +431 -0
  271. package/types/stable/@ember/routing/transition.d.ts +180 -0
  272. package/types/stable/@ember/runloop/index.d.ts +657 -0
  273. package/types/stable/@ember/service/index.d.ts +82 -0
  274. package/types/stable/@ember/string/index.d.ts +152 -0
  275. package/types/stable/@ember/string/lib/string_registry.d.ts +9 -0
  276. package/types/stable/@ember/template/index.d.ts +3 -0
  277. package/types/stable/@ember/template-compilation/index.d.ts +4 -0
  278. package/types/stable/@ember/template-factory/index.d.ts +3 -0
  279. package/types/stable/@ember/test/adapter.d.ts +4 -0
  280. package/types/stable/@ember/test/index.d.ts +8 -0
  281. package/types/stable/@ember/utils/index.d.ts +9 -0
  282. package/types/stable/@ember/utils/lib/compare.d.ts +54 -0
  283. package/types/stable/@ember/utils/lib/is-equal.d.ts +52 -0
  284. package/types/stable/@ember/utils/lib/is_blank.d.ts +32 -0
  285. package/types/stable/@ember/utils/lib/is_empty.d.ts +38 -0
  286. package/types/stable/@ember/utils/lib/is_none.d.ts +26 -0
  287. package/types/stable/@ember/utils/lib/is_present.d.ts +35 -0
  288. package/types/stable/@ember/utils/lib/type-of.d.ts +68 -0
  289. package/types/stable/@ember/version/index.d.ts +3 -0
  290. package/types/stable/@glimmer/tracking/index.d.ts +203 -0
  291. package/types/stable/@glimmer/tracking/primitives/cache.d.ts +3 -0
  292. package/types/stable/ember/index.d.ts +376 -0
  293. package/types/stable/ember-template-compiler/index.d.ts +21 -0
  294. package/types/stable/ember-template-compiler/lib/plugins/assert-against-attrs.d.ts +20 -0
  295. package/types/stable/ember-template-compiler/lib/plugins/assert-against-named-outlets.d.ts +14 -0
  296. package/types/stable/ember-template-compiler/lib/plugins/assert-input-helper-without-block.d.ts +5 -0
  297. package/types/stable/ember-template-compiler/lib/plugins/assert-reserved-named-arguments.d.ts +5 -0
  298. package/types/stable/ember-template-compiler/lib/plugins/assert-splattribute-expression.d.ts +5 -0
  299. package/types/stable/ember-template-compiler/lib/plugins/index.d.ts +5 -0
  300. package/types/stable/ember-template-compiler/lib/plugins/transform-action-syntax.d.ts +28 -0
  301. package/types/stable/ember-template-compiler/lib/plugins/transform-each-in-into-each.d.ts +24 -0
  302. package/types/stable/ember-template-compiler/lib/plugins/transform-each-track-array.d.ts +24 -0
  303. package/types/stable/ember-template-compiler/lib/plugins/transform-in-element.d.ts +22 -0
  304. package/types/stable/ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.d.ts +4 -0
  305. package/types/stable/ember-template-compiler/lib/plugins/transform-resolutions.d.ts +5 -0
  306. package/types/stable/ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet.d.ts +36 -0
  307. package/types/stable/ember-template-compiler/lib/plugins/utils.d.ts +13 -0
  308. package/types/stable/ember-template-compiler/lib/system/bootstrap.d.ts +26 -0
  309. package/types/stable/ember-template-compiler/lib/system/calculate-location-display.d.ts +4 -0
  310. package/types/stable/ember-template-compiler/lib/system/compile-options.d.ts +6 -0
  311. package/types/stable/ember-template-compiler/lib/system/compile.d.ts +13 -0
  312. package/types/stable/ember-template-compiler/lib/system/dasherize-component-name.d.ts +5 -0
  313. package/types/stable/ember-template-compiler/lib/system/initializer.d.ts +3 -0
  314. package/types/stable/ember-template-compiler/lib/system/precompile.d.ts +17 -0
  315. package/types/stable/ember-testing/index.d.ts +10 -0
  316. package/types/stable/ember-testing/lib/adapters/adapter.d.ts +20 -0
  317. package/types/stable/ember-testing/lib/adapters/qunit.d.ts +19 -0
  318. package/types/stable/ember-testing/lib/ext/application.d.ts +12 -0
  319. package/types/stable/ember-testing/lib/ext/rsvp.d.ts +4 -0
  320. package/types/stable/ember-testing/lib/helpers/and_then.d.ts +4 -0
  321. package/types/stable/ember-testing/lib/helpers/current_path.d.ts +22 -0
  322. package/types/stable/ember-testing/lib/helpers/current_route_name.d.ts +21 -0
  323. package/types/stable/ember-testing/lib/helpers/current_url.d.ts +22 -0
  324. package/types/stable/ember-testing/lib/helpers/pause_test.d.ts +53 -0
  325. package/types/stable/ember-testing/lib/helpers/visit.d.ts +22 -0
  326. package/types/stable/ember-testing/lib/helpers/wait.d.ts +34 -0
  327. package/types/stable/ember-testing/lib/helpers.d.ts +3 -0
  328. package/types/stable/ember-testing/lib/initializers.d.ts +3 -0
  329. package/types/stable/ember-testing/lib/setup_for_testing.d.ts +15 -0
  330. package/types/stable/ember-testing/lib/test/adapter.d.ts +7 -0
  331. package/types/stable/ember-testing/lib/test/helpers.d.ts +115 -0
  332. package/types/stable/ember-testing/lib/test/on_inject_helpers.d.ts +33 -0
  333. package/types/stable/ember-testing/lib/test/pending_requests.d.ts +6 -0
  334. package/types/stable/ember-testing/lib/test/promise.d.ts +38 -0
  335. package/types/stable/ember-testing/lib/test/run.d.ts +3 -0
  336. package/types/stable/ember-testing/lib/test/waiters.d.ts +67 -0
  337. package/types/stable/ember-testing/lib/test.d.ts +47 -0
  338. package/types/stable/index.d.ts +47 -0
  339. package/types/preview/@ember/application/tsconfig.json +0 -3
  340. package/types/preview/@ember/array/tsconfig.json +0 -3
  341. package/types/preview/@ember/component/tsconfig.json +0 -3
  342. package/types/preview/@ember/controller/tsconfig.json +0 -3
  343. package/types/preview/@ember/debug/tsconfig.json +0 -3
  344. package/types/preview/@ember/destroyable/tsconfig.json +0 -3
  345. package/types/preview/@ember/engine/tsconfig.json +0 -3
  346. package/types/preview/@ember/error/tsconfig.json +0 -3
  347. package/types/preview/@ember/helper/tsconfig.json +0 -3
  348. package/types/preview/@ember/modifier/tsconfig.json +0 -3
  349. package/types/preview/@ember/object/tsconfig.json +0 -3
  350. package/types/preview/@ember/owner/index.d.ts +0 -423
  351. package/types/preview/@ember/owner/tsconfig.json +0 -3
  352. package/types/preview/@ember/polyfills/tsconfig.json +0 -3
  353. package/types/preview/@ember/routing/tsconfig.json +0 -3
  354. package/types/preview/@ember/runloop/tsconfig.json +0 -3
  355. package/types/preview/@ember/service/tsconfig.json +0 -3
  356. package/types/preview/@ember/string/tsconfig.json +0 -3
  357. package/types/preview/@ember/template/tsconfig.json +0 -3
  358. package/types/preview/@ember/test/tsconfig.json +0 -3
  359. package/types/preview/@ember/utils/tsconfig.json +0 -3
  360. package/types/preview/ember/tsconfig.json +0 -3
  361. package/types/preview/tsconfig.json +0 -6
@@ -0,0 +1,646 @@
1
+ declare module '@ember/-internals/owner' {
2
+ /**
3
+ @module @ember/owner
4
+ */
5
+ /**
6
+ The name for a factory consists of a namespace and the name of a specific type
7
+ within that namespace, like `'service:session'`.
8
+
9
+ **Note:** `FullName` is *not* a class, just a contract for strings used in the
10
+ DI system. It is currently documented as a class only due to limits in our
11
+ documentation infrastructure.
12
+
13
+ @for @ember/owner
14
+ @class FullName
15
+ @public
16
+ */
17
+ export type FullName<Type extends string = string, Name extends string = string> = `${Type}:${Name}`;
18
+ /**
19
+ A type registry for the DI system, which other participants in the DI system
20
+ can register themselves into with declaration merging. The contract for this
21
+ type is that its keys are the `Type` from a `FullName`, and each value for a
22
+ `Type` is another registry whose keys are the `Name` from a `FullName`. The
23
+ mechanic for providing a registry is [declaration merging][handbook].
24
+
25
+ [handbook]: https://www.typescriptlang.org/docs/handbook/declaration-merging.html
26
+
27
+ For example, Ember's `@ember/service` module includes this set of definitions:
28
+
29
+ ```ts
30
+ export default class Service extends EmberObject {}
31
+
32
+ // For concrete singleton classes to be merged into.
33
+ interface Registry extends Record<string, Service> {}
34
+
35
+ declare module '@ember/owner' {
36
+ service: Registry;
37
+ }
38
+ ```
39
+
40
+ Declarations of services can then include the registry:
41
+
42
+ ```ts
43
+ import Service from '@ember/service';
44
+
45
+ export default class Session extends Service {
46
+ login(username: string, password: string) {
47
+ // ...
48
+ }
49
+ }
50
+
51
+ declare module '@ember/service' {
52
+ interface Registry {
53
+ session: Session;
54
+ }
55
+ }
56
+ ```
57
+
58
+ Then users of the `Owner` API will be able to do things like this with strong
59
+ type safety guarantees:
60
+
61
+ ```ts
62
+ getOwner(this)?.lookup('service:session').login("hello", "1234abcd");
63
+ ```
64
+
65
+ @for @ember/owner
66
+ @private
67
+ */
68
+ export interface DIRegistry extends Record<string, Record<string, unknown>> {
69
+ }
70
+ /**
71
+ @private
72
+ */
73
+ type ResolveFactoryManager<Type extends string, Name extends string> = DIRegistry[Type][Name] extends object ? FactoryManager<DIRegistry[Type][Name]> : FactoryManager<object> | undefined;
74
+ /**
75
+ The common interface for the ability to `register()` an item, shared by the
76
+ `Owner` and `RegistryProxy` interfaces.
77
+
78
+ @for @ember/owner
79
+ @class BasicRegistry
80
+ @private
81
+ */
82
+ interface BasicRegistry {
83
+ /**
84
+ Registers a factory that can be used for dependency injection (with
85
+ `inject`) or for service lookup. Each factory is registered with
86
+ a full name including two parts: `type:name`.
87
+
88
+ A simple example:
89
+
90
+ ```javascript
91
+ import Application from '@ember/application';
92
+ import EmberObject from '@ember/object';
93
+
94
+ let App = Application.create();
95
+
96
+ App.Orange = EmberObject.extend();
97
+ App.register('fruit:favorite', App.Orange);
98
+ ```
99
+
100
+ Ember will resolve factories from the `App` namespace automatically.
101
+ For example `App.CarsController` will be discovered and returned if
102
+ an application requests `controller:cars`.
103
+
104
+ An example of registering a controller with a non-standard name:
105
+
106
+ ```javascript
107
+ import Application from '@ember/application';
108
+ import Controller from '@ember/controller';
109
+
110
+ let App = Application.create();
111
+ let Session = Controller.extend();
112
+
113
+ App.register('controller:session', Session);
114
+
115
+ // The Session controller can now be treated like a normal controller,
116
+ // despite its non-standard name.
117
+ App.ApplicationController = Controller.extend({
118
+ needs: ['session']
119
+ });
120
+ ```
121
+
122
+ Registered factories are **instantiated** by having `create`
123
+ called on them. Additionally they are **singletons**, each time
124
+ they are looked up they return the same instance.
125
+
126
+ Some examples modifying that default behavior:
127
+
128
+ ```javascript
129
+ import Application from '@ember/application';
130
+ import EmberObject from '@ember/object';
131
+
132
+ let App = Application.create();
133
+
134
+ App.Person = EmberObject.extend();
135
+ App.Orange = EmberObject.extend();
136
+ App.Email = EmberObject.extend();
137
+ App.session = EmberObject.create();
138
+
139
+ App.register('model:user', App.Person, { singleton: false });
140
+ App.register('fruit:favorite', App.Orange);
141
+ App.register('communication:main', App.Email, { singleton: false });
142
+ App.register('session', App.session, { instantiate: false });
143
+ ```
144
+
145
+ @method register
146
+ @param fullName {String} type:name (e.g., 'model:user')
147
+ @param factory {Factory|object} (e.g., App.Person)
148
+ @param options {Object} (optional) disable instantiation or singleton usage
149
+ @public
150
+ */
151
+ register(fullName: FullName, factory: Factory<object> | object, options?: RegisterOptions): void;
152
+ }
153
+ type ValidType = keyof DIRegistry & string;
154
+ type ValidName<Type extends ValidType> = keyof DIRegistry[Type] & string;
155
+ /**
156
+ The common interface for the ability to `lookup()` or get the `factoryFor` an
157
+ item, shared by the `Owner` and `ContainerProxy` interfaces.
158
+
159
+ @for @ember/owner
160
+ @class BasicContainer
161
+ @private
162
+ */
163
+ interface BasicContainer {
164
+ /**
165
+ Given a fullName return a corresponding instance.
166
+
167
+ The default behavior is for lookup to return a singleton instance.
168
+ The singleton is scoped to the container, allowing multiple containers
169
+ to all have their own locally scoped singletons.
170
+
171
+ ```javascript
172
+ let registry = new Registry();
173
+ let container = registry.container();
174
+
175
+ registry.register('api:twitter', Twitter);
176
+
177
+ let twitter = container.lookup('api:twitter');
178
+
179
+ twitter instanceof Twitter; // => true
180
+
181
+ // by default the container will return singletons
182
+ let twitter2 = container.lookup('api:twitter');
183
+ twitter2 instanceof Twitter; // => true
184
+
185
+ twitter === twitter2; //=> true
186
+ ```
187
+
188
+ If singletons are not wanted an optional flag can be provided at lookup.
189
+
190
+ ```javascript
191
+ let registry = new Registry();
192
+ let container = registry.container();
193
+
194
+ registry.register('api:twitter', Twitter);
195
+
196
+ let twitter = container.lookup('api:twitter', { singleton: false });
197
+ let twitter2 = container.lookup('api:twitter', { singleton: false });
198
+
199
+ twitter === twitter2; //=> false
200
+ ```
201
+
202
+ @public
203
+ @method lookup
204
+ @param {string} fullName
205
+ @param {RegisterOptions} options
206
+ @return {any}
207
+ */
208
+ lookup<Type extends ValidType, Name extends ValidName<Type>>(fullName: FullName<Type, Name>, options?: RegisterOptions): DIRegistry[Type][Name];
209
+ /**
210
+ Given a `FullName`, of the form `"type:name"` return a `FactoryManager`.
211
+
212
+ This method returns a manager which can be used for introspection of the
213
+ factory's class or for the creation of factory instances with initial
214
+ properties. The manager is an object with the following properties:
215
+
216
+ * `class` - The registered or resolved class.
217
+ * `create` - A function that will create an instance of the class with
218
+ any dependencies injected.
219
+
220
+ For example:
221
+
222
+ ```javascript
223
+ import { getOwner } from '@ember/application';
224
+
225
+ let owner = getOwner(otherInstance);
226
+ // the owner is commonly the `applicationInstance`, and can be accessed via
227
+ // an instance initializer.
228
+
229
+ let factory = owner.factoryFor('service:bespoke');
230
+
231
+ factory.class;
232
+ // The registered or resolved class. For example when used with an Ember-CLI
233
+ // app, this would be the default export from `app/services/bespoke.js`.
234
+
235
+ let instance = factory.create({
236
+ someProperty: 'an initial property value'
237
+ });
238
+ // Create an instance with any injections and the passed options as
239
+ // initial properties.
240
+ ```
241
+
242
+ Any instances created via the factory's `.create()` method *must* be destroyed
243
+ manually by the caller of `.create()`. Typically, this is done during the creating
244
+ objects own `destroy` or `willDestroy` methods.
245
+
246
+ @public
247
+ @method factoryFor
248
+ @param {string} fullName
249
+ @return {FactoryManager}
250
+ */
251
+ factoryFor<Type extends ValidType, Name extends ValidName<Type>>(fullName: FullName<Type, Name>): ResolveFactoryManager<Type, Name>;
252
+ }
253
+ /**
254
+ Framework objects in an Ember application (components, services, routes,
255
+ etc.) are created via a factory and dependency injection system. Each of
256
+ these objects is the responsibility of an "owner", which handles its
257
+ instantiation and manages its lifetime.
258
+
259
+ An `Owner` is not a class you construct; it is one the framework constructs
260
+ for you. The normal way to get access to the relevant `Owner` is using the
261
+ `getOwner` function.
262
+
263
+ @for @ember/owner
264
+ @uses BasicRegistry
265
+ @uses BasicContainer
266
+ @class Owner
267
+ @since 4.10.0
268
+ @public
269
+ */
270
+ export default interface Owner extends BasicRegistry, BasicContainer {
271
+ }
272
+ /**
273
+ * Interface representing the options for registering an item as a factory.
274
+ *
275
+ * @for @ember/owner
276
+ * @class RegisterOptions
277
+ * @public
278
+ */
279
+ export interface RegisterOptions {
280
+ /**
281
+ Whether to instantiate the item when returning it from a lookup. Defaults
282
+ to `true`.
283
+
284
+ @property instantiate
285
+ @type Boolean
286
+ @optional
287
+ @default true
288
+ @public
289
+ */
290
+ instantiate?: boolean | undefined;
291
+ /**
292
+ Whether the item is a singleton (like a service) and so should return the
293
+ same instance every time, or should generate a new instance on each call.
294
+ Defaults to `true`.
295
+
296
+ @property singleton
297
+ @type Boolean
298
+ @optional
299
+ @default true
300
+ @public
301
+ */
302
+ singleton?: boolean | undefined;
303
+ }
304
+ /**
305
+ Registered factories are instantiated by having create called on them.
306
+ Additionally they are singletons by default, so each time they are looked up
307
+ they return the same instance.
308
+
309
+ However, that behavior can be modified with the `instantiate` and `singleton`
310
+ options to the `Owner.register()` method.
311
+
312
+ @for @ember/owner
313
+ @class Factory
314
+ @since 4.10.0
315
+ @public
316
+ */
317
+ export interface Factory<T extends object> {
318
+ /**
319
+ * A function that will create an instance of the class with any
320
+ * dependencies injected.
321
+ *
322
+ * @method create
323
+ * @param initialValues {Object} Any values to set on an instance of the class
324
+ * @return {Object} The item produced by the factory.
325
+ * @public
326
+ */
327
+ create(initialValues?: object): T;
328
+ }
329
+ /**
330
+ The interface representing a manager which can be used for introspection of
331
+ the factory's class or for the creation of factory instances with initial
332
+ properties. The manager is an object with the following properties:
333
+
334
+ - `class` - The registered or resolved class.
335
+ - `create` - A function that will create an instance of the class with any
336
+ dependencies injected.
337
+
338
+ **Note:** `FactoryManager` is *not* user-constructible; the only legal way
339
+ to get a `FactoryManager` is via `Owner.factoryFor`.
340
+
341
+ @for @ember/owner
342
+ @class FactoryManager
343
+ @extends Factory
344
+ @public
345
+ */
346
+ export interface FactoryManager<T extends object> extends Factory<T> {
347
+ /**
348
+ The registered or resolved class.
349
+
350
+ @property class
351
+ @type Factory
352
+ @public
353
+ */
354
+ readonly class: Factory<T>;
355
+ }
356
+ /**
357
+ * A record mapping all known items of a given type: if the item is known it
358
+ * will be `true`; otherwise it will be `false` or `undefined`.
359
+ */
360
+ export type KnownForTypeResult<Type extends string> = {
361
+ [Key in FullName<Type, string>]: boolean | undefined;
362
+ };
363
+ /**
364
+ A `Resolver` is the mechanism responsible for looking up code in your
365
+ application and converting its naming conventions into the actual classes,
366
+ functions, and templates that Ember needs to resolve its dependencies, for
367
+ example, what template to render for a given route. It is a system that helps
368
+ the app resolve the lookup of JavaScript modules agnostic of what kind of
369
+ module system is used, which can be AMD, CommonJS or just plain globals. It
370
+ is used to lookup routes, models, components, templates, or anything that is
371
+ used in your Ember app.
372
+
373
+ This interface is not a concrete class; instead, it represents the contract a
374
+ custom resolver must implement. Most apps never need to think about this: in
375
+ the default blueprint, this is supplied by the `ember-resolver` package.
376
+
377
+ @for @ember/owner
378
+ @class Resolver
379
+ @since 4.10.0
380
+ @public
381
+ */
382
+ export interface Resolver {
383
+ /**
384
+ The one required method for a `Resolver`. Given a string, resolve it to a
385
+ `Factory`, if one exists.
386
+
387
+ @method resolve
388
+ @param name {String}
389
+ @public
390
+ */
391
+ resolve: (name: string) => Factory<object> | object | undefined;
392
+ /**
393
+ @method knownForType
394
+ @param type {String}
395
+ @return {Object}
396
+ @public
397
+ */
398
+ knownForType?: <Type extends string>(type: Type) => KnownForTypeResult<Type>;
399
+ /**
400
+ @method lookupDescription
401
+ @param fullName {String}
402
+ @return {String}
403
+ @public
404
+ */
405
+ lookupDescription?: (fullName: FullName) => string;
406
+ /**
407
+ @method makeToString
408
+ @param factory {Factory}
409
+ @param fullName {String}
410
+ @return {String}
411
+ @public
412
+ */
413
+ makeToString?: (factory: Factory<object>, fullName: FullName) => string;
414
+ /**
415
+ @method normalize
416
+ @param fullName {String}
417
+ @return {String}
418
+ @public
419
+ */
420
+ normalize?: (fullName: FullName) => FullName;
421
+ }
422
+ export interface FactoryClass {
423
+ positionalParams?: string | string[] | undefined | null;
424
+ }
425
+ /**
426
+ The internal representation of a `Factory`, for the extra detail available for
427
+ private use internally than we expose to consumers.
428
+
429
+ @for @ember/owner
430
+ @class InternalFactory
431
+ @private
432
+ */
433
+ export interface InternalFactory<T extends object, C extends FactoryClass | object = FactoryClass> extends Factory<T> {
434
+ /**
435
+ @property class
436
+ @optional
437
+ @private
438
+ */
439
+ class?: C;
440
+ /**
441
+ @property name
442
+ @type String
443
+ @optional
444
+ @private
445
+ */
446
+ name?: string;
447
+ /**
448
+ @property fullName
449
+ @type String
450
+ @optional
451
+ @private
452
+ */
453
+ fullName?: FullName;
454
+ /**
455
+ @property normalizedName
456
+ @type String
457
+ @optional
458
+ @private
459
+ */
460
+ normalizedName?: string;
461
+ }
462
+ /**
463
+ @private
464
+ @method isFactory
465
+ @param {Object} obj
466
+ @return {Boolean}
467
+ @static
468
+ */
469
+ export function isFactory(obj: unknown): obj is InternalFactory<object>;
470
+ export function getOwner(object: object): InternalOwner | undefined;
471
+ /**
472
+ `setOwner` forces a new owner on a given object instance. This is primarily
473
+ useful in some testing cases.
474
+
475
+ @method setOwner
476
+ @static
477
+ @for @ember/owner
478
+ @param {Object} object An object instance.
479
+ @param {Owner} object The new owner object of the object instance.
480
+ @since 2.3.0
481
+ @public
482
+ */
483
+ export function setOwner(object: object, owner: Owner): void;
484
+ /**
485
+ * The interface for a container proxy, which is itself a private API used
486
+ * by the private `ContainerProxyMixin` as part of the base definition of
487
+ * `EngineInstance`.
488
+ *
489
+ * @class ContainerProxy
490
+ * @for @ember/owner
491
+ * @private
492
+ * @extends BasicContainer
493
+ */
494
+ export interface ContainerProxy extends BasicContainer {
495
+ /**
496
+ Returns an object that can be used to provide an owner to a
497
+ manually created instance.
498
+
499
+ Example:
500
+
501
+ ```
502
+ import { getOwner } from '@ember/application';
503
+
504
+ let owner = getOwner(this);
505
+
506
+ User.create(
507
+ owner.ownerInjection(),
508
+ { username: 'rwjblue' }
509
+ )
510
+ ```
511
+
512
+ @public
513
+ @method ownerInjection
514
+ @since 2.3.0
515
+ @return {Object}
516
+ */
517
+ ownerInjection(): object;
518
+ }
519
+ /**
520
+ * @class RegistryProxy
521
+ * @extends BasicRegistry
522
+ * @private
523
+ * @for @ember/owner
524
+ */
525
+ export interface RegistryProxy extends BasicRegistry {
526
+ /**
527
+ Given a fullName return the corresponding factory.
528
+
529
+ @public
530
+ @method resolveRegistration
531
+ @param fullName {String}
532
+ @return {Function} fullName's factory
533
+ */
534
+ resolveRegistration(fullName: FullName): Factory<object> | object | undefined;
535
+ /**
536
+ Unregister a factory.
537
+
538
+ ```javascript
539
+ import Application from '@ember/application';
540
+ import EmberObject from '@ember/object';
541
+
542
+ let App = Application.create();
543
+ let User = EmberObject.extend();
544
+ App.register('model:user', User);
545
+
546
+ App.resolveRegistration('model:user').create() instanceof User //=> true
547
+
548
+ App.unregister('model:user')
549
+ App.resolveRegistration('model:user') === undefined //=> true
550
+ ```
551
+
552
+ @public
553
+ @method unregister
554
+ @param {String} fullName
555
+ */
556
+ unregister(fullName: FullName): void;
557
+ /**
558
+ Check if a factory is registered.
559
+
560
+ @public
561
+ @method hasRegistration
562
+ @param {String} fullName
563
+ @return {Boolean}
564
+ */
565
+ hasRegistration(fullName: FullName): boolean;
566
+ /**
567
+ Return a specific registered option for a particular factory.
568
+
569
+ @public
570
+ @method registeredOption
571
+ @param {String} fullName
572
+ @param {String} optionName
573
+ @return {Object} options
574
+ */
575
+ registeredOption<K extends keyof RegisterOptions>(fullName: FullName, optionName: K): RegisterOptions[K] | undefined;
576
+ /**
577
+ Register options for a particular factory.
578
+
579
+ @public
580
+ @method registerOptions
581
+ @param {String} fullName
582
+ @param {Object} options
583
+ */
584
+ registerOptions(fullName: FullName, options: RegisterOptions): void;
585
+ /**
586
+ Return registered options for a particular factory.
587
+
588
+ @public
589
+ @method registeredOptions
590
+ @param {String} fullName
591
+ @return {Object} options
592
+ */
593
+ registeredOptions(fullName: FullName): RegisterOptions | undefined;
594
+ /**
595
+ Allow registering options for all factories of a type.
596
+
597
+ ```javascript
598
+ import Application from '@ember/application';
599
+
600
+ let App = Application.create();
601
+ let appInstance = App.buildInstance();
602
+
603
+ // if all of type `connection` must not be singletons
604
+ appInstance.registerOptionsForType('connection', { singleton: false });
605
+
606
+ appInstance.register('connection:twitter', TwitterConnection);
607
+ appInstance.register('connection:facebook', FacebookConnection);
608
+
609
+ let twitter = appInstance.lookup('connection:twitter');
610
+ let twitter2 = appInstance.lookup('connection:twitter');
611
+
612
+ twitter === twitter2; // => false
613
+
614
+ let facebook = appInstance.lookup('connection:facebook');
615
+ let facebook2 = appInstance.lookup('connection:facebook');
616
+
617
+ facebook === facebook2; // => false
618
+ ```
619
+
620
+ @public
621
+ @method registerOptionsForType
622
+ @param {String} type
623
+ @param {Object} options
624
+ */
625
+ registerOptionsForType(type: string, options: RegisterOptions): void;
626
+ /**
627
+ Return the registered options for all factories of a type.
628
+
629
+ @public
630
+ @method registeredOptionsForType
631
+ @param {String} type
632
+ @return {Object} options
633
+ */
634
+ registeredOptionsForType(type: string): RegisterOptions | undefined;
635
+ }
636
+ /**
637
+ * @internal This is the same basic interface which is implemented (via the
638
+ * mixins) by `EngineInstance` and therefore `ApplicationInstance`, which are
639
+ * the normal interfaces to an `Owner` for end user applications now. However,
640
+ * going forward, we expect to progressively deprecate and remove the "extra"
641
+ * APIs which are not exposed on `Owner` itself.
642
+ */
643
+ export interface InternalOwner extends RegistryProxy, ContainerProxy {
644
+ }
645
+ export {};
646
+ }
@@ -0,0 +1,3 @@
1
+ declare module '@ember/-internals/routing' {
2
+ export { controllerFor, generateController, generateControllerFactory, DSL as RouterDSL, } from '@ember/routing/-internals';
3
+ }
@@ -0,0 +1,11 @@
1
+ declare module '@ember/-internals/runtime' {
2
+ export { default as RegistryProxyMixin } from './lib/mixins/registry_proxy';
3
+ export { default as ContainerProxyMixin } from './lib/mixins/container_proxy';
4
+ export { default as Comparable } from './lib/mixins/comparable';
5
+ export { NativeArray } from '@ember/array';
6
+ export { default as ActionHandler } from './lib/mixins/action_handler';
7
+ export { default as _ProxyMixin, contentFor as _contentFor } from './lib/mixins/-proxy';
8
+ export { default as MutableEnumerable } from '@ember/enumerable/mutable';
9
+ export { default as TargetActionSupport } from './lib/mixins/target_action_support';
10
+ export { default as RSVP, onerrorDefault } from './lib/ext/rsvp';
11
+ }
@@ -0,0 +1,5 @@
1
+ declare module '@ember/-internals/runtime/lib/ext/rsvp.d.ts' {
2
+ import * as RSVP from 'rsvp';
3
+ export function onerrorDefault(reason: unknown): void;
4
+ export default RSVP;
5
+ }
@@ -0,0 +1,34 @@
1
+ declare module '@ember/-internals/runtime/lib/mixins/-proxy.d.ts' {
2
+ /**
3
+ @module ember
4
+ */
5
+ import Mixin from '@ember/object/mixin';
6
+ export function contentFor<T>(proxy: ProxyMixin<T>): T | null;
7
+ /**
8
+ `Ember.ProxyMixin` forwards all properties not defined by the proxy itself
9
+ to a proxied `content` object. See ObjectProxy for more details.
10
+
11
+ @class ProxyMixin
12
+ @namespace Ember
13
+ @private
14
+ */
15
+ interface ProxyMixin<T = unknown> {
16
+ /**
17
+ The object whose properties will be forwarded.
18
+
19
+ @property content
20
+ @type {unknown}
21
+ @default null
22
+ @public
23
+ */
24
+ content: T | null;
25
+ willDestroy(): void;
26
+ isTruthy: boolean;
27
+ unknownProperty<K extends keyof T>(key: K): T[K] | undefined;
28
+ unknownProperty(key: string): unknown;
29
+ setUnknownProperty<K extends keyof T>(key: K, value: T[K]): T[K];
30
+ setUnknownProperty<V>(key: string, value: V): V;
31
+ }
32
+ const ProxyMixin: Mixin;
33
+ export default ProxyMixin;
34
+ }