@keymanapp/common-types 17.0.255-alpha → 17.0.257-alpha

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 (137) hide show
  1. package/build/src/consts/virtual-key-constants.d.ts +192 -194
  2. package/build/src/consts/virtual-key-constants.d.ts.map +1 -1
  3. package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +6 -8
  4. package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts.map +1 -1
  5. package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +29 -31
  6. package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts.map +1 -1
  7. package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts +96 -98
  8. package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts.map +1 -1
  9. package/build/src/keyman-touch-layout/keyman-touch-layout-file.js +29 -5
  10. package/build/src/keyman-touch-layout/keyman-touch-layout-file.js.map +1 -1
  11. package/build/src/kmx/element-string.d.ts +24 -26
  12. package/build/src/kmx/element-string.d.ts.map +1 -1
  13. package/build/src/kmx/keyman-targets.d.ts +21 -23
  14. package/build/src/kmx/keyman-targets.d.ts.map +1 -1
  15. package/build/src/kmx/kmx-builder.d.ts +33 -35
  16. package/build/src/kmx/kmx-builder.d.ts.map +1 -1
  17. package/build/src/kmx/kmx-file-reader.d.ts +14 -16
  18. package/build/src/kmx/kmx-file-reader.d.ts.map +1 -1
  19. package/build/src/kmx/kmx-plus-builder/build-disp.d.ts +19 -21
  20. package/build/src/kmx/kmx-plus-builder/build-disp.d.ts.map +1 -1
  21. package/build/src/kmx/kmx-plus-builder/build-elem.d.ts +29 -31
  22. package/build/src/kmx/kmx-plus-builder/build-elem.d.ts.map +1 -1
  23. package/build/src/kmx/kmx-plus-builder/build-keys.d.ts +57 -59
  24. package/build/src/kmx/kmx-plus-builder/build-keys.d.ts.map +1 -1
  25. package/build/src/kmx/kmx-plus-builder/build-layr.d.ts +54 -56
  26. package/build/src/kmx/kmx-plus-builder/build-layr.d.ts.map +1 -1
  27. package/build/src/kmx/kmx-plus-builder/build-list.d.ts +36 -38
  28. package/build/src/kmx/kmx-plus-builder/build-list.d.ts.map +1 -1
  29. package/build/src/kmx/kmx-plus-builder/build-loca.d.ts +12 -14
  30. package/build/src/kmx/kmx-plus-builder/build-loca.d.ts.map +1 -1
  31. package/build/src/kmx/kmx-plus-builder/build-meta.d.ts +17 -19
  32. package/build/src/kmx/kmx-plus-builder/build-meta.d.ts.map +1 -1
  33. package/build/src/kmx/kmx-plus-builder/build-sect.d.ts +16 -18
  34. package/build/src/kmx/kmx-plus-builder/build-sect.d.ts.map +1 -1
  35. package/build/src/kmx/kmx-plus-builder/build-strs.d.ts +23 -25
  36. package/build/src/kmx/kmx-plus-builder/build-strs.d.ts.map +1 -1
  37. package/build/src/kmx/kmx-plus-builder/build-tran.d.ts +33 -35
  38. package/build/src/kmx/kmx-plus-builder/build-tran.d.ts.map +1 -1
  39. package/build/src/kmx/kmx-plus-builder/build-uset.d.ts +31 -33
  40. package/build/src/kmx/kmx-plus-builder/build-uset.d.ts.map +1 -1
  41. package/build/src/kmx/kmx-plus-builder/build-vars.d.ts +22 -24
  42. package/build/src/kmx/kmx-plus-builder/build-vars.d.ts.map +1 -1
  43. package/build/src/kmx/kmx-plus-builder/builder-section.d.ts +10 -12
  44. package/build/src/kmx/kmx-plus-builder/builder-section.d.ts.map +1 -1
  45. package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +43 -45
  46. package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts.map +1 -1
  47. package/build/src/kmx/kmx-plus.d.ts +320 -320
  48. package/build/src/kmx/kmx-plus.d.ts.map +1 -1
  49. package/build/src/kmx/kmx-plus.js +11 -2
  50. package/build/src/kmx/kmx-plus.js.map +1 -1
  51. package/build/src/kmx/kmx.d.ts +234 -236
  52. package/build/src/kmx/kmx.d.ts.map +1 -1
  53. package/build/src/kmx/string-list.d.ts +36 -38
  54. package/build/src/kmx/string-list.d.ts.map +1 -1
  55. package/build/src/kpj/keyman-developer-project.d.ts +79 -81
  56. package/build/src/kpj/keyman-developer-project.d.ts.map +1 -1
  57. package/build/src/kpj/kpj-file-reader.d.ts +19 -21
  58. package/build/src/kpj/kpj-file-reader.d.ts.map +1 -1
  59. package/build/src/kpj/kpj-file.d.ts +40 -42
  60. package/build/src/kpj/kpj-file.d.ts.map +1 -1
  61. package/build/src/kvk/kvk-file-reader.d.ts +5 -7
  62. package/build/src/kvk/kvk-file-reader.d.ts.map +1 -1
  63. package/build/src/kvk/kvk-file-writer.d.ts +20 -22
  64. package/build/src/kvk/kvk-file-writer.d.ts.map +1 -1
  65. package/build/src/kvk/kvk-file.d.ts +67 -69
  66. package/build/src/kvk/kvk-file.d.ts.map +1 -1
  67. package/build/src/kvk/kvk-file.js +26 -2
  68. package/build/src/kvk/kvk-file.js.map +1 -1
  69. package/build/src/kvk/kvks-file-reader.d.ts +24 -26
  70. package/build/src/kvk/kvks-file-reader.d.ts.map +1 -1
  71. package/build/src/kvk/kvks-file-writer.d.ts +7 -9
  72. package/build/src/kvk/kvks-file-writer.d.ts.map +1 -1
  73. package/build/src/kvk/kvks-file.d.ts +44 -46
  74. package/build/src/kvk/kvks-file.d.ts.map +1 -1
  75. package/build/src/kvk/visual-keyboard.d.ts +45 -47
  76. package/build/src/kvk/visual-keyboard.d.ts.map +1 -1
  77. package/build/src/kvk/visual-keyboard.js +5 -2
  78. package/build/src/kvk/visual-keyboard.js.map +1 -1
  79. package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +61 -63
  80. package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts.map +1 -1
  81. package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +96 -98
  82. package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts.map +1 -1
  83. package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts +171 -173
  84. package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts.map +1 -1
  85. package/build/src/ldml-keyboard/pattern-parser.d.ts +196 -198
  86. package/build/src/ldml-keyboard/pattern-parser.d.ts.map +1 -1
  87. package/build/src/ldml-keyboard/pattern-parser.js +18 -18
  88. package/build/src/ldml-keyboard/pattern-parser.js.map +1 -1
  89. package/build/src/ldml-keyboard/unicodeset-parser-api.d.ts +38 -40
  90. package/build/src/ldml-keyboard/unicodeset-parser-api.d.ts.map +1 -1
  91. package/build/src/main.d.ts +35 -37
  92. package/build/src/main.d.ts.map +1 -1
  93. package/build/src/osk/osk.d.ts +23 -25
  94. package/build/src/osk/osk.d.ts.map +1 -1
  95. package/build/src/package/kmp-json-file.d.ts +116 -118
  96. package/build/src/package/kmp-json-file.d.ts.map +1 -1
  97. package/build/src/package/kps-file.d.ts +176 -178
  98. package/build/src/package/kps-file.d.ts.map +1 -1
  99. package/build/src/schema-validators.d.ts +14 -16
  100. package/build/src/schema-validators.d.ts.map +1 -1
  101. package/build/src/schemas/displaymap.schema.d.ts +58 -60
  102. package/build/src/schemas/displaymap.schema.d.ts.map +1 -1
  103. package/build/src/schemas/keyboard_info.schema.d.ts +210 -212
  104. package/build/src/schemas/keyboard_info.schema.d.ts.map +1 -1
  105. package/build/src/schemas/keyman-touch-layout.clean.spec.d.ts +228 -230
  106. package/build/src/schemas/keyman-touch-layout.clean.spec.d.ts.map +1 -1
  107. package/build/src/schemas/keyman-touch-layout.spec.d.ts +230 -232
  108. package/build/src/schemas/keyman-touch-layout.spec.d.ts.map +1 -1
  109. package/build/src/schemas/kmp.schema.d.ts +325 -327
  110. package/build/src/schemas/kmp.schema.d.ts.map +1 -1
  111. package/build/src/schemas/kpj-9.0.schema.d.ts +153 -155
  112. package/build/src/schemas/kpj-9.0.schema.d.ts.map +1 -1
  113. package/build/src/schemas/kpj.schema.d.ts +123 -125
  114. package/build/src/schemas/kpj.schema.d.ts.map +1 -1
  115. package/build/src/schemas/kvks.schema.d.ts +161 -163
  116. package/build/src/schemas/kvks.schema.d.ts.map +1 -1
  117. package/build/src/schemas/ldml-keyboard3.schema.d.ts +633 -635
  118. package/build/src/schemas/ldml-keyboard3.schema.d.ts.map +1 -1
  119. package/build/src/schemas/ldml-keyboardtest3.schema.d.ts +190 -192
  120. package/build/src/schemas/ldml-keyboardtest3.schema.d.ts.map +1 -1
  121. package/build/src/schemas.d.ts +2295 -2297
  122. package/build/src/schemas.d.ts.map +1 -1
  123. package/build/src/util/common-events.d.ts +45 -47
  124. package/build/src/util/common-events.d.ts.map +1 -1
  125. package/build/src/util/compiler-interfaces.d.ts +367 -369
  126. package/build/src/util/compiler-interfaces.d.ts.map +1 -1
  127. package/build/src/util/errors.d.ts +6 -8
  128. package/build/src/util/errors.d.ts.map +1 -1
  129. package/build/src/util/file-types.d.ts +94 -96
  130. package/build/src/util/file-types.d.ts.map +1 -1
  131. package/build/src/util/file-types.js +30 -2
  132. package/build/src/util/file-types.js.map +1 -1
  133. package/build/src/util/util.d.ts +67 -67
  134. package/build/src/util/util.d.ts.map +1 -1
  135. package/build/src/util/util.js +3 -3
  136. package/build/src/util/util.js.map +1 -1
  137. package/package.json +2 -2
@@ -1,320 +1,320 @@
1
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2ca623d7-8ee2-5842-9071-0924cf86d02b")}catch(e){}}();
2
- import { ElementString } from './element-string.js';
3
- import { ListItem } from './string-list.js';
4
- import { KMXFile } from './kmx.js';
5
- import { UnicodeSetParser, UnicodeSet } from '@keymanapp/common-types';
6
- export declare class Section {
7
- }
8
- /**
9
- * Sections which are needed as dependencies.
10
- */
11
- export interface DependencySections extends KMXPlusData {
12
- /** needed for UnicodeSet parsing */
13
- usetparser?: UnicodeSetParser;
14
- }
15
- export declare class Sect extends Section {
16
- }
17
- export declare class Elem extends Section {
18
- strings: ElementString[];
19
- constructor(sections: DependencySections);
20
- /**
21
- * @param source if a string array, does not get reinterpreted as UnicodeSet. This is used with vars, etc. Or pass `["str"]` for an explicit 1-element elem.
22
- * If it is a string, will be interpreted per reorder element ruls.
23
- */
24
- allocElementString(sections: DependencySections, source: string | string[], order?: string, tertiary?: string, tertiary_base?: string, prebase?: string): ElementString;
25
- }
26
- export declare class Loca extends Section {
27
- locales: StrsItem[];
28
- }
29
- export declare enum KeyboardSettings {
30
- none = 0,
31
- normalizationDisabled
32
- }
33
- export declare class Meta extends Section {
34
- author: StrsItem;
35
- conform: StrsItem;
36
- layout: StrsItem;
37
- name: StrsItem;
38
- indicator: StrsItem;
39
- version: StrsItem;
40
- settings: KeyboardSettings;
41
- }
42
- /**
43
- * A string item in memory. This will be replaced with an index
44
- * into the string table at finalization.
45
- */
46
- export declare class StrsItem {
47
- /** string value */
48
- readonly value: string;
49
- /** char value if this is a single-char placeholder item (CharStrsItem) */
50
- readonly char?: number;
51
- constructor(value: string, char?: number);
52
- compareTo(o: StrsItem): number;
53
- static binaryStringCompare(a: string, b: string): number;
54
- get isOneChar(): boolean;
55
- }
56
- /**
57
- * A StrsItem for a single char. Used as a placeholder and hint to the builder
58
- */
59
- export declare class CharStrsItem extends StrsItem {
60
- constructor(value: string);
61
- }
62
- /** class for string manipulation options. These are in order of the pipeline. */
63
- export interface StrsOptions {
64
- /** apply string variables (requires sections) */
65
- stringVariables?: boolean;
66
- /** apply markers (requires sections) */
67
- markers?: boolean;
68
- /** unescape with unescapeString */
69
- unescape?: boolean;
70
- /** string can be stored as a single CharStrsItem, not in strs table. */
71
- singleOk?: boolean;
72
- }
73
- export declare class Strs extends Section {
74
- /** the in-memory string table */
75
- strings: StrsItem[];
76
- /** for validating */
77
- allProcessedStrings: Set<string>;
78
- /**
79
- * Allocate a StrsItem given the string, unescaping if necessary.
80
- * @param s escaped string
81
- * @param opts options for allocation
82
- * @param sections other sections, if needed
83
- * @returns StrsItem
84
- */
85
- allocString(s?: string, opts?: StrsOptions, sections?: DependencySections): StrsItem;
86
- /** process everything according to opts */
87
- static processString(s: string, opts: StrsOptions, sections: DependencySections): string;
88
- }
89
- /**
90
- * See LKVariables
91
- */
92
- export declare class Vars extends Section {
93
- totalCount(): number;
94
- markers: ListItem;
95
- strings: StringVarItem[];
96
- sets: SetVarItem[];
97
- unicodeSets: UnicodeSetItem[];
98
- /**
99
- *
100
- * @returns false if any invalid variables
101
- */
102
- valid(): boolean;
103
- substituteSets(str: string, sections: DependencySections): string;
104
- substituteUnicodeSets(value: string, sections: DependencySections): string;
105
- substituteStrings(str: string, sections: DependencySections): string;
106
- findStringVariableValue(id: string): string;
107
- substituteSetRegex(str: string, sections: DependencySections): string;
108
- /**
109
- * Variable locator facility
110
- * @param array
111
- * @param id
112
- * @returns
113
- */
114
- private static findVariable;
115
- substituteMarkerString(s: string, forMatch?: boolean): string;
116
- }
117
- /**
118
- * Common base for variable sections
119
- * See Variable
120
- */
121
- export declare class VarsItem extends Section {
122
- id: StrsItem;
123
- value: StrsItem;
124
- constructor(id: string, value: string, sections: DependencySections);
125
- valid(): boolean;
126
- }
127
- export declare class UnicodeSetItem extends VarsItem {
128
- constructor(id: string, value: string, sections: DependencySections, usetparser: UnicodeSetParser);
129
- unicodeSet?: UnicodeSet;
130
- valid(): boolean;
131
- }
132
- export declare class SetVarItem extends VarsItem {
133
- constructor(id: string, value: string[], sections: DependencySections);
134
- items: ElementString;
135
- valid(): boolean;
136
- }
137
- export declare class StringVarItem extends VarsItem {
138
- constructor(id: string, value: string, sections: DependencySections);
139
- }
140
- export declare class TranTransform {
141
- from: StrsItem;
142
- to: StrsItem;
143
- mapFrom: StrsItem;
144
- mapTo: StrsItem;
145
- }
146
- export declare class TranGroup {
147
- type: number;
148
- transforms: TranTransform[];
149
- reorders: TranReorder[];
150
- }
151
- export declare class TranReorder {
152
- elements: ElementString;
153
- before: ElementString;
154
- }
155
- export declare class Tran extends Section {
156
- groups: TranGroup[];
157
- get id(): import("@keymanapp/ldml-keyboard-constants").SectionIdent;
158
- }
159
- export declare class UsetItem {
160
- uset: UnicodeSet;
161
- str: StrsItem;
162
- constructor(uset: UnicodeSet, str: StrsItem);
163
- compareTo(other: UsetItem): number;
164
- }
165
- export declare class Uset extends Section {
166
- usets: UsetItem[];
167
- allocUset(set: UnicodeSet, sections: DependencySections): UsetItem;
168
- }
169
- export declare class Bksp extends Tran {
170
- get id(): import("@keymanapp/ldml-keyboard-constants").SectionIdent;
171
- }
172
- export declare class DispItem {
173
- to: StrsItem;
174
- id: StrsItem;
175
- display: StrsItem;
176
- }
177
- export declare class Disp extends Section {
178
- baseCharacter: StrsItem;
179
- disps: DispItem[];
180
- }
181
- /**
182
- * In-memory `<layers>`
183
- */
184
- export declare class LayrList {
185
- hardware: StrsItem;
186
- layers: LayrEntry[];
187
- minDeviceWidth: number;
188
- }
189
- /**
190
- * In-memory `<layer>`
191
- */
192
- export declare class LayrEntry {
193
- id: StrsItem;
194
- mod: number;
195
- rows: LayrRow[];
196
- }
197
- /**
198
- * In-memory `<row>`
199
- */
200
- export declare class LayrRow {
201
- keys: StrsItem[];
202
- }
203
- export declare class Layr extends Section {
204
- lists: LayrList[];
205
- }
206
- export declare class KeysKeys {
207
- flags: number;
208
- flicks: string;
209
- id: StrsItem;
210
- longPress: ListItem;
211
- longPressDefault: StrsItem;
212
- multiTap: ListItem;
213
- switch: StrsItem;
214
- to: StrsItem;
215
- width: number;
216
- }
217
- export declare class KeysKmap {
218
- vkey: number;
219
- mod: number;
220
- key: string;
221
- }
222
- export declare class KeysFlicks {
223
- flicks: KeysFlick[];
224
- id: StrsItem;
225
- compareTo(b: KeysFlicks): number;
226
- constructor(id: StrsItem);
227
- }
228
- export declare class KeysFlick {
229
- directions: ListItem;
230
- keyId: StrsItem;
231
- }
232
- export declare class Keys extends Section {
233
- keys: KeysKeys[];
234
- flicks: KeysFlicks[];
235
- kmap: KeysKmap[];
236
- constructor(strs: Strs);
237
- }
238
- export declare class List extends Section {
239
- /**
240
- * Allocate a list from a space-separated list of items.
241
- * Note that passing undefined or null or `''` will
242
- * end up being the same as the empty list `[]`
243
- * @param s space-separated list of items
244
- * @param opts string options
245
- * @param sections sections
246
- * @returns a List object
247
- */
248
- allocListFromSpaces(s: string, opts: StrsOptions, sections: DependencySections): ListItem;
249
- /**
250
- * Return a List object referring to the string list.
251
- * Note that a falsy list, or a list containing only an empty string
252
- * `['']` will be stored as an empty list `[]`.
253
- * @param strs Strs section for allocation
254
- * @param s string list to allocate
255
- * @returns
256
- */
257
- allocList(s: string[], opts: StrsOptions, sections: DependencySections): ListItem;
258
- constructor(strs: Strs);
259
- lists: ListItem[];
260
- }
261
- export { ListItem as ListItem };
262
- export interface KMXPlusData {
263
- sect?: Strs;
264
- bksp?: Bksp;
265
- disp?: Disp;
266
- elem?: Elem;
267
- keys?: Keys;
268
- layr?: Layr;
269
- list?: List;
270
- loca?: Loca;
271
- meta?: Meta;
272
- strs?: Strs;
273
- tran?: Tran;
274
- uset?: Uset;
275
- vars?: Vars;
276
- }
277
- export declare class KMXPlusFile extends KMXFile {
278
- readonly COMP_PLUS_SECT_ITEM: any;
279
- readonly COMP_PLUS_SECT: any;
280
- readonly COMP_PLUS_BKSP_ITEM: any;
281
- readonly COMP_PLUS_BKSP: any;
282
- readonly COMP_PLUS_DISP_ITEM: any;
283
- readonly COMP_PLUS_DISP: any;
284
- readonly COMP_PLUS_ELEM_ELEMENT: any;
285
- readonly COMP_PLUS_ELEM_STRING: any;
286
- readonly COMP_PLUS_ELEM: any;
287
- readonly COMP_PLUS_LAYR_ENTRY: any;
288
- readonly COMP_PLUS_LAYR_KEY: any;
289
- readonly COMP_PLUS_LAYR_LIST: any;
290
- readonly COMP_PLUS_LAYR_ROW: any;
291
- readonly COMP_PLUS_LAYR: any;
292
- readonly COMP_PLUS_KEYS_FLICK: any;
293
- readonly COMP_PLUS_KEYS_FLICKS: any;
294
- readonly COMP_PLUS_KEYS_KEY: any;
295
- readonly COMP_PLUS_KEYS_KMAP: any;
296
- readonly COMP_PLUS_KEYS: any;
297
- readonly COMP_PLUS_LIST_LIST: any;
298
- readonly COMP_PLUS_LIST_INDEX: any;
299
- readonly COMP_PLUS_LIST: any;
300
- readonly COMP_PLUS_LOCA_ITEM: any;
301
- readonly COMP_PLUS_LOCA: any;
302
- readonly COMP_PLUS_META: any;
303
- readonly COMP_PLUS_STRS_ITEM: any;
304
- readonly COMP_PLUS_STRS: any;
305
- readonly COMP_PLUS_TRAN_GROUP: any;
306
- readonly COMP_PLUS_TRAN_TRANSFORM: any;
307
- readonly COMP_PLUS_TRAN_REORDER: any;
308
- readonly COMP_PLUS_TRAN: any;
309
- readonly COMP_PLUS_USET_USET: any;
310
- readonly COMP_PLUS_USET_RANGE: any;
311
- readonly COMP_PLUS_USET: any;
312
- readonly COMP_PLUS_VKEY_ITEM: any;
313
- readonly COMP_PLUS_VKEY: any;
314
- readonly COMP_PLUS_VARS: any;
315
- readonly COMP_PLUS_VARS_ITEM: any;
316
- kmxplus: KMXPlusData;
317
- constructor();
318
- }
319
- //# debugId=2ca623d7-8ee2-5842-9071-0924cf86d02b
320
- //# sourceMappingURL=kmx-plus.d.ts.map
1
+ import { ElementString } from './element-string.js';
2
+ import { ListItem } from './string-list.js';
3
+ import { KMXFile } from './kmx.js';
4
+ import { UnicodeSetParser, UnicodeSet } from '@keymanapp/common-types';
5
+ export declare class Section {
6
+ }
7
+ /**
8
+ * Sections which are needed as dependencies.
9
+ */
10
+ export interface DependencySections extends KMXPlusData {
11
+ /** needed for UnicodeSet parsing */
12
+ usetparser?: UnicodeSetParser;
13
+ }
14
+ export declare class Sect extends Section {
15
+ }
16
+ export declare class Elem extends Section {
17
+ strings: ElementString[];
18
+ constructor(sections: DependencySections);
19
+ /**
20
+ * @param source if a string array, does not get reinterpreted as UnicodeSet. This is used with vars, etc. Or pass `["str"]` for an explicit 1-element elem.
21
+ * If it is a string, will be interpreted per reorder element ruls.
22
+ */
23
+ allocElementString(sections: DependencySections, source: string | string[], order?: string, tertiary?: string, tertiary_base?: string, prebase?: string): ElementString;
24
+ }
25
+ export declare class Loca extends Section {
26
+ locales: StrsItem[];
27
+ }
28
+ export declare enum KeyboardSettings {
29
+ none = 0,
30
+ normalizationDisabled
31
+ }
32
+ export declare class Meta extends Section {
33
+ author: StrsItem;
34
+ conform: StrsItem;
35
+ layout: StrsItem;
36
+ name: StrsItem;
37
+ indicator: StrsItem;
38
+ version: StrsItem;
39
+ settings: KeyboardSettings;
40
+ }
41
+ /**
42
+ * A string item in memory. This will be replaced with an index
43
+ * into the string table at finalization.
44
+ */
45
+ export declare class StrsItem {
46
+ /** string value */
47
+ readonly value: string;
48
+ /** char value if this is a single-char placeholder item (CharStrsItem) */
49
+ readonly char?: number;
50
+ constructor(value: string, char?: number);
51
+ compareTo(o: StrsItem): number;
52
+ static binaryStringCompare(a: string, b: string): number;
53
+ get isOneChar(): boolean;
54
+ }
55
+ /**
56
+ * A StrsItem for a single char. Used as a placeholder and hint to the builder
57
+ */
58
+ export declare class CharStrsItem extends StrsItem {
59
+ constructor(value: string);
60
+ }
61
+ /** class for string manipulation options. These are in order of the pipeline. */
62
+ export interface StrsOptions {
63
+ /** apply string variables (requires sections) */
64
+ stringVariables?: boolean;
65
+ /** apply markers (requires sections) */
66
+ markers?: boolean;
67
+ /** unescape with unescapeString */
68
+ unescape?: boolean;
69
+ /** apply (possibly marker safe) nfd. Not for regex use. */
70
+ nfd?: boolean;
71
+ /** string can be stored as a single CharStrsItem, not in strs table. */
72
+ singleOk?: boolean;
73
+ }
74
+ export declare class Strs extends Section {
75
+ /** the in-memory string table */
76
+ strings: StrsItem[];
77
+ /** for validating */
78
+ allProcessedStrings: Set<string>;
79
+ /**
80
+ * Allocate a StrsItem given the string, unescaping if necessary.
81
+ * @param s escaped string
82
+ * @param opts options for allocation
83
+ * @param sections other sections, if needed
84
+ * @returns StrsItem
85
+ */
86
+ allocString(s?: string, opts?: StrsOptions, sections?: DependencySections): StrsItem;
87
+ /** process everything according to opts */
88
+ static processString(s: string, opts: StrsOptions, sections: DependencySections): string;
89
+ }
90
+ /**
91
+ * See LKVariables
92
+ */
93
+ export declare class Vars extends Section {
94
+ totalCount(): number;
95
+ markers: ListItem;
96
+ strings: StringVarItem[];
97
+ sets: SetVarItem[];
98
+ unicodeSets: UnicodeSetItem[];
99
+ /**
100
+ *
101
+ * @returns false if any invalid variables
102
+ */
103
+ valid(): boolean;
104
+ substituteSets(str: string, sections: DependencySections): string;
105
+ substituteUnicodeSets(value: string, sections: DependencySections): string;
106
+ substituteStrings(str: string, sections: DependencySections): string;
107
+ findStringVariableValue(id: string): string;
108
+ substituteSetRegex(str: string, sections: DependencySections): string;
109
+ /**
110
+ * Variable locator facility
111
+ * @param array
112
+ * @param id
113
+ * @returns
114
+ */
115
+ private static findVariable;
116
+ substituteMarkerString(s: string, forMatch?: boolean): string;
117
+ }
118
+ /**
119
+ * Common base for variable sections
120
+ * See Variable
121
+ */
122
+ export declare class VarsItem extends Section {
123
+ id: StrsItem;
124
+ value: StrsItem;
125
+ constructor(id: string, value: string, sections: DependencySections);
126
+ valid(): boolean;
127
+ }
128
+ export declare class UnicodeSetItem extends VarsItem {
129
+ constructor(id: string, value: string, sections: DependencySections, usetparser: UnicodeSetParser);
130
+ unicodeSet?: UnicodeSet;
131
+ valid(): boolean;
132
+ }
133
+ export declare class SetVarItem extends VarsItem {
134
+ constructor(id: string, value: string[], sections: DependencySections);
135
+ items: ElementString;
136
+ valid(): boolean;
137
+ }
138
+ export declare class StringVarItem extends VarsItem {
139
+ constructor(id: string, value: string, sections: DependencySections);
140
+ }
141
+ export declare class TranTransform {
142
+ from: StrsItem;
143
+ to: StrsItem;
144
+ mapFrom: StrsItem;
145
+ mapTo: StrsItem;
146
+ }
147
+ export declare class TranGroup {
148
+ type: number;
149
+ transforms: TranTransform[];
150
+ reorders: TranReorder[];
151
+ }
152
+ export declare class TranReorder {
153
+ elements: ElementString;
154
+ before: ElementString;
155
+ }
156
+ export declare class Tran extends Section {
157
+ groups: TranGroup[];
158
+ get id(): import("@keymanapp/ldml-keyboard-constants").SectionIdent;
159
+ }
160
+ export declare class UsetItem {
161
+ uset: UnicodeSet;
162
+ str: StrsItem;
163
+ constructor(uset: UnicodeSet, str: StrsItem);
164
+ compareTo(other: UsetItem): number;
165
+ }
166
+ export declare class Uset extends Section {
167
+ usets: UsetItem[];
168
+ allocUset(set: UnicodeSet, sections: DependencySections): UsetItem;
169
+ }
170
+ export declare class Bksp extends Tran {
171
+ get id(): import("@keymanapp/ldml-keyboard-constants").SectionIdent;
172
+ }
173
+ export declare class DispItem {
174
+ to: StrsItem;
175
+ id: StrsItem;
176
+ display: StrsItem;
177
+ }
178
+ export declare class Disp extends Section {
179
+ baseCharacter: StrsItem;
180
+ disps: DispItem[];
181
+ }
182
+ /**
183
+ * In-memory `<layers>`
184
+ */
185
+ export declare class LayrList {
186
+ hardware: StrsItem;
187
+ layers: LayrEntry[];
188
+ minDeviceWidth: number;
189
+ }
190
+ /**
191
+ * In-memory `<layer>`
192
+ */
193
+ export declare class LayrEntry {
194
+ id: StrsItem;
195
+ mod: number;
196
+ rows: LayrRow[];
197
+ }
198
+ /**
199
+ * In-memory `<row>`
200
+ */
201
+ export declare class LayrRow {
202
+ keys: StrsItem[];
203
+ }
204
+ export declare class Layr extends Section {
205
+ lists: LayrList[];
206
+ }
207
+ export declare class KeysKeys {
208
+ flags: number;
209
+ flicks: string;
210
+ id: StrsItem;
211
+ longPress: ListItem;
212
+ longPressDefault: StrsItem;
213
+ multiTap: ListItem;
214
+ switch: StrsItem;
215
+ to: StrsItem;
216
+ width: number;
217
+ }
218
+ export declare class KeysKmap {
219
+ vkey: number;
220
+ mod: number;
221
+ key: string;
222
+ }
223
+ export declare class KeysFlicks {
224
+ flicks: KeysFlick[];
225
+ id: StrsItem;
226
+ compareTo(b: KeysFlicks): number;
227
+ constructor(id: StrsItem);
228
+ }
229
+ export declare class KeysFlick {
230
+ directions: ListItem;
231
+ keyId: StrsItem;
232
+ }
233
+ export declare class Keys extends Section {
234
+ keys: KeysKeys[];
235
+ flicks: KeysFlicks[];
236
+ kmap: KeysKmap[];
237
+ constructor(strs: Strs);
238
+ }
239
+ export declare class List extends Section {
240
+ /**
241
+ * Allocate a list from a space-separated list of items.
242
+ * Note that passing undefined or null or `''` will
243
+ * end up being the same as the empty list `[]`
244
+ * @param s space-separated list of items
245
+ * @param opts string options
246
+ * @param sections sections
247
+ * @returns a List object
248
+ */
249
+ allocListFromSpaces(s: string, opts: StrsOptions, sections: DependencySections): ListItem;
250
+ /**
251
+ * Return a List object referring to the string list.
252
+ * Note that a falsy list, or a list containing only an empty string
253
+ * `['']` will be stored as an empty list `[]`.
254
+ * @param strs Strs section for allocation
255
+ * @param s string list to allocate
256
+ * @returns
257
+ */
258
+ allocList(s: string[], opts: StrsOptions, sections: DependencySections): ListItem;
259
+ constructor(strs: Strs);
260
+ lists: ListItem[];
261
+ }
262
+ export { ListItem as ListItem };
263
+ export interface KMXPlusData {
264
+ sect?: Strs;
265
+ bksp?: Bksp;
266
+ disp?: Disp;
267
+ elem?: Elem;
268
+ keys?: Keys;
269
+ layr?: Layr;
270
+ list?: List;
271
+ loca?: Loca;
272
+ meta?: Meta;
273
+ strs?: Strs;
274
+ tran?: Tran;
275
+ uset?: Uset;
276
+ vars?: Vars;
277
+ }
278
+ export declare class KMXPlusFile extends KMXFile {
279
+ readonly COMP_PLUS_SECT_ITEM: any;
280
+ readonly COMP_PLUS_SECT: any;
281
+ readonly COMP_PLUS_BKSP_ITEM: any;
282
+ readonly COMP_PLUS_BKSP: any;
283
+ readonly COMP_PLUS_DISP_ITEM: any;
284
+ readonly COMP_PLUS_DISP: any;
285
+ readonly COMP_PLUS_ELEM_ELEMENT: any;
286
+ readonly COMP_PLUS_ELEM_STRING: any;
287
+ readonly COMP_PLUS_ELEM: any;
288
+ readonly COMP_PLUS_LAYR_ENTRY: any;
289
+ readonly COMP_PLUS_LAYR_KEY: any;
290
+ readonly COMP_PLUS_LAYR_LIST: any;
291
+ readonly COMP_PLUS_LAYR_ROW: any;
292
+ readonly COMP_PLUS_LAYR: any;
293
+ readonly COMP_PLUS_KEYS_FLICK: any;
294
+ readonly COMP_PLUS_KEYS_FLICKS: any;
295
+ readonly COMP_PLUS_KEYS_KEY: any;
296
+ readonly COMP_PLUS_KEYS_KMAP: any;
297
+ readonly COMP_PLUS_KEYS: any;
298
+ readonly COMP_PLUS_LIST_LIST: any;
299
+ readonly COMP_PLUS_LIST_INDEX: any;
300
+ readonly COMP_PLUS_LIST: any;
301
+ readonly COMP_PLUS_LOCA_ITEM: any;
302
+ readonly COMP_PLUS_LOCA: any;
303
+ readonly COMP_PLUS_META: any;
304
+ readonly COMP_PLUS_STRS_ITEM: any;
305
+ readonly COMP_PLUS_STRS: any;
306
+ readonly COMP_PLUS_TRAN_GROUP: any;
307
+ readonly COMP_PLUS_TRAN_TRANSFORM: any;
308
+ readonly COMP_PLUS_TRAN_REORDER: any;
309
+ readonly COMP_PLUS_TRAN: any;
310
+ readonly COMP_PLUS_USET_USET: any;
311
+ readonly COMP_PLUS_USET_RANGE: any;
312
+ readonly COMP_PLUS_USET: any;
313
+ readonly COMP_PLUS_VKEY_ITEM: any;
314
+ readonly COMP_PLUS_VKEY: any;
315
+ readonly COMP_PLUS_VARS: any;
316
+ readonly COMP_PLUS_VARS_ITEM: any;
317
+ kmxplus: KMXPlusData;
318
+ constructor();
319
+ }
320
+ //# sourceMappingURL=kmx-plus.d.ts.map