UNPKG

5.56 kBTypeScriptView Raw
1declare module '@ember/-internals/environment/lib/env' {
2 /**
3 The hash of environment variables used to control various configuration
4 settings. To specify your own or override default settings, add the
5 desired properties to a global hash named `EmberENV` (or `ENV` for
6 backwards compatibility with earlier versions of Ember). The `EmberENV`
7 hash must be created before loading Ember.
8
9 @class EmberENV
10 @type Object
11 @public
12 */
13 export const ENV: {
14 ENABLE_OPTIONAL_FEATURES: boolean;
15 /**
16 Determines whether Ember should add to `Array`
17 native object prototypes, a few extra methods in order to provide a more
18 friendly API.
19
20 The behavior from setting this option to `true` was deprecated in Ember 5.10.
21
22 @property EXTEND_PROTOTYPES
23 @type Boolean
24 @default true
25 @for EmberENV
26 @private
27 @deprecated in v5.10
28 */
29 EXTEND_PROTOTYPES: {
30 Array: boolean;
31 };
32 /**
33 The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log
34 a full stack trace during deprecation warnings.
35
36 @property LOG_STACKTRACE_ON_DEPRECATION
37 @type Boolean
38 @default true
39 @for EmberENV
40 @public
41 */
42 LOG_STACKTRACE_ON_DEPRECATION: boolean;
43 /**
44 The `LOG_VERSION` property, when true, tells Ember to log versions of all
45 dependent libraries in use.
46
47 @property LOG_VERSION
48 @type Boolean
49 @default true
50 @for EmberENV
51 @public
52 */
53 LOG_VERSION: boolean;
54 RAISE_ON_DEPRECATION: boolean;
55 STRUCTURED_PROFILE: boolean;
56 /**
57 Whether to perform extra bookkeeping needed to make the `captureRenderTree`
58 API work.
59
60 This has to be set before the ember JavaScript code is evaluated. This is
61 usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };`
62 before the "vendor" `<script>` tag in `index.html`.
63
64 Setting the flag after Ember is already loaded will not work correctly. It
65 may appear to work somewhat, but fundamentally broken.
66
67 This is not intended to be set directly. Ember Inspector will enable the
68 flag on behalf of the user as needed.
69
70 This flag is always on in development mode.
71
72 The flag is off by default in production mode, due to the cost associated
73 with the the bookkeeping work.
74
75 The expected flow is that Ember Inspector will ask the user to refresh the
76 page after enabling the feature. It could also offer a feature where the
77 user add some domains to the "always on" list. In either case, Ember
78 Inspector will inject the code on the page to set the flag if needed.
79
80 @property _DEBUG_RENDER_TREE
81 @for EmberENV
82 @type Boolean
83 @default false
84 @private
85 */
86 _DEBUG_RENDER_TREE: boolean;
87 /**
88 Whether to force all deprecations to be enabled. This is used internally by
89 Ember to enable deprecations in tests. It is not intended to be set in
90 projects.
91
92 @property _ALL_DEPRECATIONS_ENABLED
93 @for EmberENV
94 @type Boolean
95 @default false
96 @private
97 */
98 _ALL_DEPRECATIONS_ENABLED: boolean;
99 /**
100 Override the version of ember-source used to determine when deprecations "break".
101 This is used internally by Ember to test with deprecated features "removed".
102 This is never intended to be set by projects.
103 @property _OVERRIDE_DEPRECATION_VERSION
104 @for EmberENV
105 @type string | null
106 @default null
107 @private
108 */
109 _OVERRIDE_DEPRECATION_VERSION: null;
110 /**
111 Whether the app defaults to using async observers.
112
113 This is not intended to be set directly, as the implementation may change in
114 the future. Use `@ember/optional-features` instead.
115
116 @property _DEFAULT_ASYNC_OBSERVERS
117 @for EmberENV
118 @type Boolean
119 @default false
120 @private
121 */
122 _DEFAULT_ASYNC_OBSERVERS: boolean;
123 /**
124 Whether the app still has default record-loading behavior in the model
125 hook from RFC https://rfcs.emberjs.com/id/0774-implicit-record-route-loading
126 This will also remove the default store property from the route.
127
128 This is not intended to be set directly, as the implementation may change in
129 the future. Use `@ember/optional-features` instead.
130
131 @property _NO_IMPLICIT_ROUTE_MODEL
132 @for EmberENV
133 @type Boolean
134 @default false
135 @private
136 */
137 _NO_IMPLICIT_ROUTE_MODEL: boolean;
138 /**
139 Controls the maximum number of scheduled rerenders without "settling". In general,
140 applications should not need to modify this environment variable, but please
141 open an issue so that we can determine if a better default value is needed.
142
143 @property _RERENDER_LOOP_LIMIT
144 @for EmberENV
145 @type number
146 @default 1000
147 @private
148 */
149 _RERENDER_LOOP_LIMIT: number;
150 EMBER_LOAD_HOOKS: {
151 [hook: string]: Function[];
152 };
153 FEATURES: {
154 [feature: string]: boolean;
155 };
156 };
157 export function getENV(): object;
158}