exupery 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/generated/generic/resolve.d.ts +90 -0
  2. package/dist/generated/generic/resolve.js +249 -0
  3. package/dist/generated/implementation/schemas/exupery_implementation/migration_boilerplate.d.ts +8 -0
  4. package/dist/generated/implementation/schemas/exupery_implementation/migration_boilerplate.js +234 -0
  5. package/dist/generated/implementation/schemas/exupery_implementation/resolve.d.ts +9 -0
  6. package/dist/generated/implementation/schemas/exupery_implementation/resolve.js +782 -0
  7. package/dist/generated/implementation/schemas/exupery_interface/migration_boilerplate.d.ts +8 -0
  8. package/dist/generated/implementation/schemas/exupery_interface/migration_boilerplate.js +131 -0
  9. package/dist/generated/implementation/schemas/exupery_interface/resolve.d.ts +9 -0
  10. package/dist/generated/implementation/schemas/exupery_interface/resolve.js +442 -0
  11. package/dist/generated/interface/core/poormans_parser.d.ts +184 -0
  12. package/dist/generated/interface/core/poormans_parser.js +3 -0
  13. package/dist/generated/interface/core/resolved.d.ts +100 -0
  14. package/dist/generated/interface/core/resolved.js +3 -0
  15. package/dist/generated/interface/core/unresolved.d.ts +35 -0
  16. package/dist/generated/interface/core/unresolved.js +3 -0
  17. package/dist/generated/interface/schemas/exupery_implementation/constrained/resolve.d.ts +437 -0
  18. package/dist/generated/interface/schemas/exupery_implementation/constrained/resolve.js +3 -0
  19. package/dist/generated/interface/schemas/exupery_implementation/migration_boilerplate.d.ts +156 -0
  20. package/dist/generated/interface/schemas/exupery_implementation/migration_boilerplate.js +3 -0
  21. package/dist/generated/interface/schemas/exupery_implementation/poormans_parser.d.ts +1912 -0
  22. package/dist/generated/interface/schemas/exupery_implementation/poormans_parser.js +3 -0
  23. package/dist/generated/interface/schemas/exupery_implementation/resolved.d.ts +1912 -0
  24. package/dist/generated/interface/schemas/exupery_implementation/resolved.js +3 -0
  25. package/dist/generated/interface/schemas/exupery_implementation/unresolved.d.ts +1912 -0
  26. package/dist/generated/interface/schemas/exupery_implementation/unresolved.js +3 -0
  27. package/dist/generated/interface/schemas/exupery_interface/constrained/resolve.d.ts +437 -0
  28. package/dist/generated/interface/schemas/exupery_interface/constrained/resolve.js +3 -0
  29. package/dist/generated/interface/schemas/exupery_interface/migration_boilerplate.d.ts +156 -0
  30. package/dist/generated/interface/schemas/exupery_interface/migration_boilerplate.js +3 -0
  31. package/dist/generated/interface/schemas/exupery_interface/poormans_parser.d.ts +622 -0
  32. package/dist/generated/interface/schemas/exupery_interface/poormans_parser.js +3 -0
  33. package/dist/generated/interface/schemas/exupery_interface/resolved.d.ts +622 -0
  34. package/dist/generated/interface/schemas/exupery_interface/resolved.js +3 -0
  35. package/dist/generated/interface/schemas/exupery_interface/unresolved.d.ts +622 -0
  36. package/dist/generated/interface/schemas/exupery_interface/unresolved.js +3 -0
  37. package/dist/generated/interface/schemas/typescript_light/migration_boilerplate.d.ts +90 -0
  38. package/dist/generated/interface/schemas/typescript_light/migration_boilerplate.js +3 -0
  39. package/dist/generated/interface/schemas/typescript_light/poormans_parser.d.ts +966 -0
  40. package/dist/generated/interface/schemas/typescript_light/poormans_parser.js +3 -0
  41. package/dist/generated/interface/schemas/typescript_light/resolved.d.ts +966 -0
  42. package/dist/generated/interface/schemas/typescript_light/resolved.js +3 -0
  43. package/dist/generated/interface/schemas/typescript_light/unresolved.d.ts +966 -0
  44. package/dist/generated/interface/schemas/typescript_light/unresolved.js +3 -0
  45. package/dist/globals.d.ts +24 -0
  46. package/dist/globals.js +2 -0
  47. package/dist/index.d.ts +1 -0
  48. package/dist/index.js +5 -0
  49. package/dist/shorthands/implementation.d.ts +58 -0
  50. package/dist/shorthands/implementation.js +329 -0
  51. package/dist/shorthands/interface.d.ts +39 -0
  52. package/dist/shorthands/interface.js +146 -0
  53. package/dist/shorthands/typescript_light.d.ts +24 -0
  54. package/dist/shorthands/typescript_light.js +127 -0
  55. package/dist/transformations/implementation/fountain_pen.d.ts +6 -0
  56. package/dist/transformations/implementation/fountain_pen.js +36 -0
  57. package/dist/transformations/implementation/typescript.d.ts +24 -0
  58. package/dist/transformations/implementation/typescript.js +554 -0
  59. package/dist/transformations/interface/fountain_pen.d.ts +4 -0
  60. package/dist/transformations/interface/fountain_pen.js +47 -0
  61. package/dist/transformations/interface/typescript.d.ts +23 -0
  62. package/dist/transformations/interface/typescript.js +524 -0
  63. package/dist/transformations/typescript/fountain_pen.d.ts +15 -0
  64. package/dist/transformations/typescript/fountain_pen.js +281 -0
  65. package/dist/transformations/typescript/operations/create_identifier.d.ts +1 -0
  66. package/dist/transformations/typescript/operations/create_identifier.js +260 -0
  67. package/package.json +4 -1
@@ -0,0 +1,90 @@
1
+ import * as pt from 'exupery-core-types';
2
+ import * as pd from 'exupery-core-data';
3
+ import * as unresolved$ from "../interface/core/poormans_parser";
4
+ import * as resolved$ from "../interface/core/resolved";
5
+ export type Location_to_String<Source> = ($: Source) => string;
6
+ export type Acyclic_Entry_Reference<T_Dictionary_Entry> = {
7
+ readonly 'entry': T_Dictionary_Entry;
8
+ readonly 'key': string;
9
+ };
10
+ export type Parameters<Source, V, L> = {
11
+ 'location 2 string': Location_to_String<Source>;
12
+ 'parameters': {
13
+ 'lookups': L;
14
+ 'values': V;
15
+ };
16
+ };
17
+ export type Key_Value_Location_Triplet<Source, T> = {
18
+ 'key': string;
19
+ 'value': T;
20
+ 'location': Source;
21
+ };
22
+ export type Possibly_Circular_Result<T> = () => T;
23
+ export type Non_Circular_Result<T> = ['error', ['circular', pt.Array<string>]] | ['resolved', T];
24
+ export type Path<Source, Resolved_Element, Seed> = {
25
+ 'list': pt.Array<Resolved_Element>;
26
+ 'result': {
27
+ 'data': Seed;
28
+ };
29
+ };
30
+ export type Resolved_Step<Resolved_Element, Seed> = {
31
+ 'element': Resolved_Element;
32
+ 'result': Seed;
33
+ };
34
+ export type _T_Location_2_String<Source> = Location_to_String<Source>;
35
+ export type _T_Location_Info = pd.Source_Location;
36
+ export type Location_Info = pd.Source_Location;
37
+ export type Acyclic_Lookup<T> = pt.Optional_Value<pt.Lookup<Non_Circular_Result<T>>>;
38
+ export type Cyclic_Lookup<T> = pt.Optional_Value<pt.Lookup<Possibly_Circular_Result<T>>>;
39
+ export type Lookup_Stack<T> = pt.Array<Acyclic_Lookup<T>>;
40
+ export type _T_Cyclic_Lookup<T> = Cyclic_Lookup<T>;
41
+ export type _T_Acyclic_Lookup<T> = Acyclic_Lookup<T>;
42
+ export type _T_Lookup_Stack<T> = Lookup_Stack<T>;
43
+ export declare const dictionary_to_lookup: <T>($: pt.Dictionary<T>, $p: null) => Acyclic_Lookup<T>;
44
+ export declare const get_possibly_circular_dependent_sibling_entry: <Source, T>($: Cyclic_Lookup<T>, $p: {
45
+ "reference": unresolved$.Reference_To_Circular_Dependent_Sibling<Source, T>;
46
+ "location 2 string": Location_to_String<Source>;
47
+ }) => resolved$.Reference_To_Circular_Dependent_Sibling<Source, T>;
48
+ export declare const push_stack: <T>($: pt.Array<T>, $p: {
49
+ "element": T;
50
+ }) => pt.Array<T>;
51
+ export declare const get_entry_from_stack: <Source, T>($: Lookup_Stack<T>, $p: {
52
+ "reference": unresolved$.Reference_To_Stacked_Dictionary_Entry<Source, T>;
53
+ "location 2 string": Location_to_String<Source>;
54
+ }) => resolved$.Reference_To_Stacked_Dictionary_Entry<Source, T>;
55
+ export declare const get_entry: <Source, T>($: Acyclic_Lookup<T>, $p: {
56
+ "reference": unresolved$.Reference_To_Normal_Dictionary_Entry<Source, T>;
57
+ "location 2 string": Location_to_String<Source>;
58
+ }) => resolved$.Reference_To_Normal_Dictionary_Entry<Source, T>;
59
+ export declare const resolve_path: <Source, Unresolved_Element, Resolved_Element, Seed>($: unresolved$.List<Source, Unresolved_Element>, $p: {
60
+ "seed": Seed;
61
+ "map": ($: Unresolved_Element, current: Seed) => Resolved_Step<Resolved_Element, Seed>;
62
+ }) => Path<Source, Resolved_Element, Seed>;
63
+ export declare const resolve_dictionary: <Source, TUnresolved, TResolved>($: unresolved$.Dictionary<Source, TUnresolved>, $p: {
64
+ "map": ($: Key_Value_Location_Triplet<Source, TUnresolved>, $l: {
65
+ "possibly circular dependent siblings": Cyclic_Lookup<TResolved>;
66
+ }) => TResolved;
67
+ "location 2 string": ($: Source) => string;
68
+ }) => resolved$.Dictionary<Source, TResolved>;
69
+ export declare const resolve_dense_dictionary: <Source, TUnresolved, TResolved, TBenchmark>($: unresolved$.Dictionary<Source, TUnresolved>, $p: {
70
+ "denseness benchmark": pt.Dictionary<TBenchmark>;
71
+ "map": ($: Key_Value_Location_Triplet<Source, TUnresolved>, $l: {
72
+ "possibly circular dependent siblings": Cyclic_Lookup<TResolved>;
73
+ }) => TResolved;
74
+ "location 2 string": ($: Source) => string;
75
+ }) => resolved$.Dictionary<Source, TResolved>;
76
+ export declare const resolve_dense_ordered_dictionary: <Source, TUnresolved, TResolved, TBenchmark>($: unresolved$.Dictionary<Source, TUnresolved>, $p: {
77
+ "denseness benchmark": pt.Dictionary<TBenchmark>;
78
+ "map": ($: Key_Value_Location_Triplet<Source, TUnresolved>, $l: {
79
+ "possibly circular dependent siblings": Cyclic_Lookup<TResolved>;
80
+ "not circular dependent siblings": Acyclic_Lookup<TResolved>;
81
+ }) => TResolved;
82
+ "location 2 string": ($: Source) => string;
83
+ }) => resolved$.Ordered_Dictionary<Source, TResolved>;
84
+ export declare const resolve_ordered_dictionary: <Source, TUnresolved, TResolved>($: unresolved$.Dictionary<Source, TUnresolved>, $p: {
85
+ "map": ($: Key_Value_Location_Triplet<Source, TUnresolved>, $l: {
86
+ "possibly circular dependent siblings": Cyclic_Lookup<TResolved>;
87
+ "not circular dependent siblings": Acyclic_Lookup<TResolved>;
88
+ }) => TResolved;
89
+ "location 2 string": ($: Source) => string;
90
+ }) => resolved$.Ordered_Dictionary<Source, TResolved>;
@@ -0,0 +1,249 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.resolve_ordered_dictionary = exports.resolve_dense_ordered_dictionary = exports.resolve_dense_dictionary = exports.resolve_dictionary = exports.resolve_path = exports.get_entry = exports.get_entry_from_stack = exports.push_stack = exports.get_possibly_circular_dependent_sibling_entry = exports.dictionary_to_lookup = void 0;
27
+ const pa = __importStar(require("exupery-core-alg"));
28
+ const dictionary_to_lookup = ($, $p) => {
29
+ return pa.set($.map(($) => (['resolved', $])));
30
+ };
31
+ exports.dictionary_to_lookup = dictionary_to_lookup;
32
+ const get_possibly_circular_dependent_sibling_entry = ($, $p) => {
33
+ return $.transform(($) => ({
34
+ 'key': $p.reference.key,
35
+ 'entry': $.__get_entry($p.reference.key).transform(($) => $, () => pa.panic("no such entry: '", $p.reference.key, "' @ ", $p['location 2 string']($p.reference.location)))
36
+ }), () => pa.panic("no context lookup @ ", $p['location 2 string']($p.reference.location)));
37
+ };
38
+ exports.get_possibly_circular_dependent_sibling_entry = get_possibly_circular_dependent_sibling_entry;
39
+ const push_stack = ($, $p) => {
40
+ return pa.pure.list.build(($i) => {
41
+ $i['add list']($);
42
+ $i['add element']($p['element']);
43
+ });
44
+ };
45
+ exports.push_stack = push_stack;
46
+ const get_entry_from_stack = ($, $p) => {
47
+ const get_lookup_from_stack = ($, $p) => $.__get_element_at($.__get_length() - 1 - $p['up steps']).transform(($) => $, () => pa.panic(`index out of bounds, ${$.__get_length()} ${$p['up steps']}`));
48
+ const x = (0, exports.get_entry)(get_lookup_from_stack($, { 'up steps': $p.reference['up steps'] }), {
49
+ 'reference': $p.reference,
50
+ 'location 2 string': $p['location 2 string'],
51
+ });
52
+ return {
53
+ 'key': x.key,
54
+ 'entry': x.entry,
55
+ 'up steps': $p.reference['up steps'],
56
+ };
57
+ };
58
+ exports.get_entry_from_stack = get_entry_from_stack;
59
+ const get_entry = ($, $p) => {
60
+ return $.transform(($) => ({
61
+ 'key': $p.reference.key,
62
+ 'entry': $.__get_entry($p.reference.key).transform(($) => pa.cc($, ($) => {
63
+ switch ($[0]) {
64
+ case 'error': return pa.ss($, ($) => pa.cc($, ($) => {
65
+ switch ($[0]) {
66
+ case 'circular': return pa.ss($, ($) => {
67
+ const keys = pa.pure.text.build(($i) => {
68
+ $.__for_each(($) => {
69
+ $i['add snippet'](` '${$}', `);
70
+ });
71
+ });
72
+ return pa.panic("circular dependency: '", $p.reference.key, "' (", keys, ")@ ", $p['location 2 string']($p.reference.location));
73
+ });
74
+ default: return pa.au($[0]);
75
+ }
76
+ }));
77
+ case 'resolved': return pa.ss($, ($) => $);
78
+ default: return pa.au($[0]);
79
+ }
80
+ }), () => {
81
+ return pa.panic("no such entry: '", $p.reference.key, "' @ ", $p['location 2 string']($p.reference.location));
82
+ })
83
+ }), () => pa.panic("no context lookup @ ", $p['location 2 string']($p.reference.location)));
84
+ };
85
+ exports.get_entry = get_entry;
86
+ const resolve_path = ($, $p) => {
87
+ let current = {
88
+ 'list': pa.array_literal([]),
89
+ 'result': {
90
+ 'data': $p.seed,
91
+ },
92
+ };
93
+ $.list.__for_each(($) => {
94
+ const result = $p.map($.element, current.result.data);
95
+ const data = pa.pure.list.build(($i) => {
96
+ current.list.__for_each(($) => {
97
+ $i['add element']($);
98
+ });
99
+ $i['add element'](result.element);
100
+ });
101
+ current = {
102
+ 'list': data,
103
+ 'result': {
104
+ 'data': result.result,
105
+ }
106
+ };
107
+ });
108
+ return current;
109
+ };
110
+ exports.resolve_path = resolve_path;
111
+ const resolve_dictionary = ($, $p) => {
112
+ return (0, exports.resolve_ordered_dictionary)($, $p).dictionary;
113
+ };
114
+ exports.resolve_dictionary = resolve_dictionary;
115
+ const resolve_dense_dictionary = ($, $p) => {
116
+ return (0, exports.resolve_dense_ordered_dictionary)($, $p).dictionary;
117
+ };
118
+ exports.resolve_dense_dictionary = resolve_dense_dictionary;
119
+ const resolve_dense_ordered_dictionary = ($, $p) => {
120
+ const location = $.location;
121
+ const result = (0, exports.resolve_ordered_dictionary)($, $p);
122
+ $p['denseness benchmark'].map(($) => {
123
+ const validate_denseness = (benchmark, focus, location, location_to_string) => {
124
+ benchmark.map(($, key) => {
125
+ const benchmark = $;
126
+ focus.__get_entry(key).transform(($) => {
127
+ }, () => {
128
+ pa.panic("missing entry '", key, "' @ ", location_to_string(location));
129
+ });
130
+ });
131
+ };
132
+ validate_denseness($p['denseness benchmark'], result.dictionary, location, $p['location 2 string']);
133
+ });
134
+ return result;
135
+ };
136
+ exports.resolve_dense_ordered_dictionary = resolve_dense_ordered_dictionary;
137
+ const resolve_ordered_dictionary = ($, $p) => {
138
+ const dictionary_location = $.location;
139
+ /**
140
+ * this variable contains all the entries on which siblings have subscribed
141
+ */
142
+ const all_siblings_subscribed_entries = {};
143
+ const finished = {};
144
+ const ordered_list = pa.pure.list.build(($i) => {
145
+ const source_dictionary = $;
146
+ const status_dictionary = {};
147
+ function process_entry($, location, key_of_entry_being_processed) {
148
+ status_dictionary[key_of_entry_being_processed] = ['processing', null];
149
+ const entry = $p.map({
150
+ 'key': key_of_entry_being_processed,
151
+ 'value': $,
152
+ 'location': location,
153
+ }, {
154
+ 'possibly circular dependent siblings': pa.set({
155
+ __get_entry(key) {
156
+ //does the entry exist?
157
+ return source_dictionary.dictionary.__get_entry(key).map(($) => {
158
+ //yes, it exists in the source dictionary
159
+ if (all_siblings_subscribed_entries[key] === undefined) {
160
+ all_siblings_subscribed_entries[key] = { 'entry': null };
161
+ }
162
+ const subscr = all_siblings_subscribed_entries[key];
163
+ return () => {
164
+ if (subscr.entry === null) {
165
+ pa.panic(`entry not set: ${key}`);
166
+ }
167
+ return subscr.entry;
168
+ };
169
+ });
170
+ },
171
+ }),
172
+ 'not circular dependent siblings': pa.set({
173
+ __get_entry(key) {
174
+ const status = status_dictionary[key];
175
+ if (status === undefined) {
176
+ return source_dictionary.dictionary.__get_entry(key).transform(($) => pa.set(['resolved', process_entry($.entry, $.location, key)]), () => {
177
+ return pa.not_set();
178
+ // throw new ResolveError("")
179
+ });
180
+ }
181
+ else {
182
+ const get_keys_of_entries_being_processed = () => {
183
+ return pa.pure.list.build(($i) => {
184
+ pa.dictionary_literal(status_dictionary).map(($, key) => {
185
+ if ($[0] === 'processing') {
186
+ $i['add element'](key);
187
+ }
188
+ });
189
+ });
190
+ };
191
+ return pa.cc(status, (s) => {
192
+ switch (s[0]) {
193
+ case 'failed':
194
+ return pa.ss(s, (s) => {
195
+ //nothing to report
196
+ return pa.set(['error', ['circular', get_keys_of_entries_being_processed()]]);
197
+ //return notSet()
198
+ });
199
+ case 'processing':
200
+ if (key === key_of_entry_being_processed) {
201
+ //$se.onError(`'${key}' is referencing itself`)
202
+ }
203
+ else {
204
+ // const keys: string[] = []
205
+ // Object.keys(status_dictionary).forEach((key) => {
206
+ // if (status_dictionary[key][0] === 'processing') {
207
+ // keys.push(key)
208
+ // }
209
+ // })
210
+ //$se.onError(`the following entries are referencing each other: ${keys.join(", ")}`)
211
+ }
212
+ status_dictionary[key_of_entry_being_processed] = ['failed', null];
213
+ return pa.set(['error', ['circular', get_keys_of_entries_being_processed()]]);
214
+ case 'success':
215
+ return pa.set(['resolved', s[1]]);
216
+ default: return pa.au(s[0]);
217
+ }
218
+ });
219
+ }
220
+ },
221
+ }),
222
+ });
223
+ finished[key_of_entry_being_processed] = entry;
224
+ $i['add element']({
225
+ 'key': key_of_entry_being_processed,
226
+ 'value': entry,
227
+ });
228
+ status_dictionary[key_of_entry_being_processed] = ['success', entry];
229
+ return entry;
230
+ }
231
+ $.dictionary.map(($, key) => {
232
+ if (status_dictionary[key] === undefined) {
233
+ process_entry($.entry, $.location, key);
234
+ }
235
+ });
236
+ pa.dictionary_literal(all_siblings_subscribed_entries).map(($, key) => {
237
+ if (finished[key] === undefined) {
238
+ pa.panic(`implementation error: entry not resolved: ${key}`);
239
+ }
240
+ all_siblings_subscribed_entries[key].entry = finished[key];
241
+ });
242
+ });
243
+ return {
244
+ 'dictionary': pa.dictionary_literal(finished),
245
+ 'ordered list': ordered_list,
246
+ };
247
+ };
248
+ exports.resolve_ordered_dictionary = resolve_ordered_dictionary;
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvZ2VuZXJpYy9yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscURBQXNDO0FBbUQvQixNQUFNLG9CQUFvQixHQUFHLENBQ2hDLENBQW1CLEVBQ25CLEVBQVEsRUFDUyxFQUFFO0lBQ25CLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ2xELENBQUMsQ0FBQTtBQUxZLFFBQUEsb0JBQW9CLHdCQUtoQztBQUVNLE1BQU0sNkNBQTZDLEdBQUcsQ0FDekQsQ0FBbUIsRUFDbkIsRUFHQyxFQUMyRCxFQUFFO0lBQzlELE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FDZCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNKLEtBQUssRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUc7UUFDdkIsT0FBTyxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQzlDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQ1IsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUMvRztLQUNKLENBQUMsRUFDRixHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLHNCQUFzQixFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsQ0FB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
@@ -0,0 +1,8 @@
1
+ import * as _i_signatures from "../../../interface/schemas/exupery_implementation/migration_boilerplate";
2
+ export declare const Initialization: _i_signatures._T_Initialization;
3
+ export declare const Literal: _i_signatures._T_Literal;
4
+ export declare const Module: _i_signatures._T_Module;
5
+ export declare const Module_Set: _i_signatures._T_Module_Set;
6
+ export declare const Selection: _i_signatures._T_Selection;
7
+ export declare const Type_Parameters: _i_signatures._T_Type_Parameters;
8
+ export declare const Variables: _i_signatures._T_Variables;