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