@nice2dev/ui-tools 1.0.10

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 (158) hide show
  1. package/README.md +36 -0
  2. package/dist/access-control.d.ts +726 -0
  3. package/dist/access-control.d.ts.map +1 -0
  4. package/dist/accessibility-i18n.d.ts +1017 -0
  5. package/dist/accessibility-i18n.d.ts.map +1 -0
  6. package/dist/ai-assistant.d.ts +263 -0
  7. package/dist/ai-assistant.d.ts.map +1 -0
  8. package/dist/ai-playgrounds.d.ts +842 -0
  9. package/dist/ai-playgrounds.d.ts.map +1 -0
  10. package/dist/alerting-incidents.d.ts +558 -0
  11. package/dist/alerting-incidents.d.ts.map +1 -0
  12. package/dist/api-designer.d.ts +1568 -0
  13. package/dist/api-designer.d.ts.map +1 -0
  14. package/dist/api-testing.d.ts +1146 -0
  15. package/dist/api-testing.d.ts.map +1 -0
  16. package/dist/apm-profiling.d.ts +656 -0
  17. package/dist/apm-profiling.d.ts.map +1 -0
  18. package/dist/artifacts.d.ts +421 -0
  19. package/dist/artifacts.d.ts.map +1 -0
  20. package/dist/audit-compliance.d.ts +752 -0
  21. package/dist/audit-compliance.d.ts.map +1 -0
  22. package/dist/certificates.d.ts +256 -0
  23. package/dist/certificates.d.ts.map +1 -0
  24. package/dist/chart-builder.d.ts +1404 -0
  25. package/dist/chart-builder.d.ts.map +1 -0
  26. package/dist/cloud-instances.d.ts +169 -0
  27. package/dist/cloud-instances.d.ts.map +1 -0
  28. package/dist/config-management.d.ts +350 -0
  29. package/dist/config-management.d.ts.map +1 -0
  30. package/dist/containers.d.ts +256 -0
  31. package/dist/containers.d.ts.map +1 -0
  32. package/dist/dashboard-designer.d.ts +1238 -0
  33. package/dist/dashboard-designer.d.ts.map +1 -0
  34. package/dist/data-management.d.ts +496 -0
  35. package/dist/data-management.d.ts.map +1 -0
  36. package/dist/data-pipeline.d.ts +1105 -0
  37. package/dist/data-pipeline.d.ts.map +1 -0
  38. package/dist/data-warehouse.d.ts +1097 -0
  39. package/dist/data-warehouse.d.ts.map +1 -0
  40. package/dist/dataset-management.d.ts +782 -0
  41. package/dist/dataset-management.d.ts.map +1 -0
  42. package/dist/db-adapters.d.ts +704 -0
  43. package/dist/db-adapters.d.ts.map +1 -0
  44. package/dist/db-admin.d.ts +699 -0
  45. package/dist/db-admin.d.ts.map +1 -0
  46. package/dist/db-designer.d.ts +366 -0
  47. package/dist/db-designer.d.ts.map +1 -0
  48. package/dist/debugger.d.ts +356 -0
  49. package/dist/debugger.d.ts.map +1 -0
  50. package/dist/device-management.d.ts +871 -0
  51. package/dist/device-management.d.ts.map +1 -0
  52. package/dist/distributed-tracing.d.ts +427 -0
  53. package/dist/distributed-tracing.d.ts.map +1 -0
  54. package/dist/dns-management.d.ts +215 -0
  55. package/dist/dns-management.d.ts.map +1 -0
  56. package/dist/download-manager.d.ts +271 -0
  57. package/dist/download-manager.d.ts.map +1 -0
  58. package/dist/download-torrent.d.ts +1062 -0
  59. package/dist/download-torrent.d.ts.map +1 -0
  60. package/dist/edge-computing.d.ts +720 -0
  61. package/dist/edge-computing.d.ts.map +1 -0
  62. package/dist/education.d.ts +1135 -0
  63. package/dist/education.d.ts.map +1 -0
  64. package/dist/email-template.d.ts +1141 -0
  65. package/dist/email-template.d.ts.map +1 -0
  66. package/dist/erp-enterprise.d.ts +1270 -0
  67. package/dist/erp-enterprise.d.ts.map +1 -0
  68. package/dist/form-builder.d.ts +1117 -0
  69. package/dist/form-builder.d.ts.map +1 -0
  70. package/dist/game-engine-advanced.d.ts +1049 -0
  71. package/dist/game-engine-advanced.d.ts.map +1 -0
  72. package/dist/git.d.ts +415 -0
  73. package/dist/git.d.ts.map +1 -0
  74. package/dist/hardware-integration.d.ts +966 -0
  75. package/dist/hardware-integration.d.ts.map +1 -0
  76. package/dist/iac.d.ts +318 -0
  77. package/dist/iac.d.ts.map +1 -0
  78. package/dist/icon-tools.d.ts +1023 -0
  79. package/dist/icon-tools.d.ts.map +1 -0
  80. package/dist/ide.d.ts +322 -0
  81. package/dist/ide.d.ts.map +1 -0
  82. package/dist/index.cjs +2 -0
  83. package/dist/index.cjs.map +1 -0
  84. package/dist/index.d.ts +176 -0
  85. package/dist/index.d.ts.map +1 -0
  86. package/dist/index.mjs +1887 -0
  87. package/dist/index.mjs.map +1 -0
  88. package/dist/integration-platform.d.ts +857 -0
  89. package/dist/integration-platform.d.ts.map +1 -0
  90. package/dist/kubernetes.d.ts +278 -0
  91. package/dist/kubernetes.d.ts.map +1 -0
  92. package/dist/life-management.d.ts +1132 -0
  93. package/dist/life-management.d.ts.map +1 -0
  94. package/dist/log-management.d.ts +473 -0
  95. package/dist/log-management.d.ts.map +1 -0
  96. package/dist/mathematics.d.ts +870 -0
  97. package/dist/mathematics.d.ts.map +1 -0
  98. package/dist/message-queue.d.ts +1006 -0
  99. package/dist/message-queue.d.ts.map +1 -0
  100. package/dist/metrics-dashboard.d.ts +596 -0
  101. package/dist/metrics-dashboard.d.ts.map +1 -0
  102. package/dist/mobile-components.d.ts +766 -0
  103. package/dist/mobile-components.d.ts.map +1 -0
  104. package/dist/model-deployment.d.ts +787 -0
  105. package/dist/model-deployment.d.ts.map +1 -0
  106. package/dist/model-registry.d.ts +740 -0
  107. package/dist/model-registry.d.ts.map +1 -0
  108. package/dist/model-training.d.ts +706 -0
  109. package/dist/model-training.d.ts.map +1 -0
  110. package/dist/network-config.d.ts +334 -0
  111. package/dist/network-config.d.ts.map +1 -0
  112. package/dist/network-monitoring.d.ts +291 -0
  113. package/dist/network-monitoring.d.ts.map +1 -0
  114. package/dist/pdf-tools.d.ts +1003 -0
  115. package/dist/pdf-tools.d.ts.map +1 -0
  116. package/dist/pipelines.d.ts +250 -0
  117. package/dist/pipelines.d.ts.map +1 -0
  118. package/dist/remote-desktop.d.ts +207 -0
  119. package/dist/remote-desktop.d.ts.map +1 -0
  120. package/dist/report-designer.d.ts +1153 -0
  121. package/dist/report-designer.d.ts.map +1 -0
  122. package/dist/scada-industrial.d.ts +848 -0
  123. package/dist/scada-industrial.d.ts.map +1 -0
  124. package/dist/scientific-research.d.ts +1149 -0
  125. package/dist/scientific-research.d.ts.map +1 -0
  126. package/dist/secret-management.d.ts +617 -0
  127. package/dist/secret-management.d.ts.map +1 -0
  128. package/dist/security-scanning.d.ts +714 -0
  129. package/dist/security-scanning.d.ts.map +1 -0
  130. package/dist/self-service-analytics.d.ts +1208 -0
  131. package/dist/self-service-analytics.d.ts.map +1 -0
  132. package/dist/sensor-dashboard.d.ts +845 -0
  133. package/dist/sensor-dashboard.d.ts.map +1 -0
  134. package/dist/server-management.d.ts +331 -0
  135. package/dist/server-management.d.ts.map +1 -0
  136. package/dist/smart-home.d.ts +861 -0
  137. package/dist/smart-home.d.ts.map +1 -0
  138. package/dist/spreadsheet.d.ts +1043 -0
  139. package/dist/spreadsheet.d.ts.map +1 -0
  140. package/dist/sql-editor.d.ts +402 -0
  141. package/dist/sql-editor.d.ts.map +1 -0
  142. package/dist/terminal.d.ts +245 -0
  143. package/dist/terminal.d.ts.map +1 -0
  144. package/dist/testing-qa.d.ts +1013 -0
  145. package/dist/testing-qa.d.ts.map +1 -0
  146. package/dist/torrent-client.d.ts +298 -0
  147. package/dist/torrent-client.d.ts.map +1 -0
  148. package/dist/traceless.d.ts +759 -0
  149. package/dist/traceless.d.ts.map +1 -0
  150. package/dist/virtual-machines.d.ts +199 -0
  151. package/dist/virtual-machines.d.ts.map +1 -0
  152. package/dist/visual-scripting.d.ts +381 -0
  153. package/dist/visual-scripting.d.ts.map +1 -0
  154. package/dist/word-processor.d.ts +1124 -0
  155. package/dist/word-processor.d.ts.map +1 -0
  156. package/dist/workspace.d.ts +333 -0
  157. package/dist/workspace.d.ts.map +1 -0
  158. package/package.json +62 -0
@@ -0,0 +1,1043 @@
1
+ /**
2
+ * @file spreadsheet.ts
3
+ * @module @nice2dev/ui-tools
4
+ * @description PRO-14.2 — Spreadsheet Editor
5
+ *
6
+ * Types for Excel-like spreadsheet editor: formula engine, cell formatting,
7
+ * conditional formatting, data validation, charts, pivot tables, collaboration.
8
+ */
9
+ /** Cell address reference */
10
+ export interface CellAddress {
11
+ row: number;
12
+ col: number;
13
+ sheet?: string;
14
+ }
15
+ /** Cell range */
16
+ export interface CellRange {
17
+ start: CellAddress;
18
+ end: CellAddress;
19
+ sheet?: string;
20
+ }
21
+ /** Direction */
22
+ export type Direction = 'up' | 'down' | 'left' | 'right';
23
+ /** Horizontal alignment */
24
+ export type HorizontalAlign = 'left' | 'center' | 'right' | 'fill' | 'justify' | 'distributed';
25
+ /** Vertical alignment */
26
+ export type VerticalAlign = 'top' | 'middle' | 'bottom' | 'justify' | 'distributed';
27
+ /** Spreadsheet configuration */
28
+ export interface SpreadsheetConfig {
29
+ /** Initial data */
30
+ data?: SpreadsheetData;
31
+ /** Number of rows */
32
+ rows?: number;
33
+ /** Number of columns */
34
+ cols?: number;
35
+ /** Row height */
36
+ defaultRowHeight?: number;
37
+ /** Column width */
38
+ defaultColWidth?: number;
39
+ /** Enable formulas */
40
+ formulas?: boolean;
41
+ /** Enable conditional formatting */
42
+ conditionalFormatting?: boolean;
43
+ /** Enable data validation */
44
+ dataValidation?: boolean;
45
+ /** Enable charts */
46
+ charts?: boolean;
47
+ /** Enable pivot tables */
48
+ pivotTables?: boolean;
49
+ /** Enable comments */
50
+ comments?: boolean;
51
+ /** Enable collaboration */
52
+ collaboration?: boolean;
53
+ /** Enable undo/redo */
54
+ undoRedo?: boolean;
55
+ /** Max undo steps */
56
+ maxUndoSteps?: number;
57
+ /** Read only */
58
+ readOnly?: boolean;
59
+ /** Show grid lines */
60
+ showGridLines?: boolean;
61
+ /** Show row headers */
62
+ showRowHeaders?: boolean;
63
+ /** Show column headers */
64
+ showColHeaders?: boolean;
65
+ /** Show formula bar */
66
+ showFormulaBar?: boolean;
67
+ /** Show sheet tabs */
68
+ showSheetTabs?: boolean;
69
+ /** Freeze panes */
70
+ freezePanes?: FreezePanes;
71
+ /** Theme */
72
+ theme?: SpreadsheetTheme;
73
+ /** Locale */
74
+ locale?: string;
75
+ /** Date format */
76
+ dateFormat?: string;
77
+ /** Number format */
78
+ numberFormat?: NumberFormatOptions;
79
+ /** Custom functions */
80
+ customFunctions?: CustomFunction[];
81
+ /** Toolbar configuration */
82
+ toolbar?: ToolbarConfig;
83
+ }
84
+ /** Freeze panes configuration */
85
+ export interface FreezePanes {
86
+ rows?: number;
87
+ cols?: number;
88
+ }
89
+ /** Spreadsheet theme */
90
+ export interface SpreadsheetTheme {
91
+ name?: string;
92
+ colors?: SpreadsheetColors;
93
+ font?: SpreadsheetFont;
94
+ }
95
+ /** Spreadsheet colors */
96
+ export interface SpreadsheetColors {
97
+ background?: string;
98
+ gridLine?: string;
99
+ headerBackground?: string;
100
+ headerText?: string;
101
+ selection?: string;
102
+ selectionBackground?: string;
103
+ frozenLine?: string;
104
+ }
105
+ /** Spreadsheet font */
106
+ export interface SpreadsheetFont {
107
+ family?: string;
108
+ size?: number;
109
+ color?: string;
110
+ }
111
+ /** Number format options */
112
+ export interface NumberFormatOptions {
113
+ decimalSeparator?: string;
114
+ thousandsSeparator?: string;
115
+ currencySymbol?: string;
116
+ currencyPosition?: 'prefix' | 'suffix';
117
+ }
118
+ /** Custom function */
119
+ export interface CustomFunction {
120
+ name: string;
121
+ description?: string;
122
+ params: FunctionParameter[];
123
+ returnType: CellValueType;
124
+ handler: (...args: CellValue[]) => CellValue;
125
+ category?: string;
126
+ volatile?: boolean;
127
+ }
128
+ /** Function parameter */
129
+ export interface FunctionParameter {
130
+ name: string;
131
+ type: CellValueType | CellValueType[];
132
+ description?: string;
133
+ optional?: boolean;
134
+ repeating?: boolean;
135
+ }
136
+ /** Toolbar configuration */
137
+ export interface ToolbarConfig {
138
+ visible?: boolean;
139
+ items?: ToolbarItem[];
140
+ customItems?: ToolbarCustomItem[];
141
+ }
142
+ /** Toolbar item */
143
+ export type ToolbarItem = 'undo' | 'redo' | 'cut' | 'copy' | 'paste' | 'font' | 'fontSize' | 'bold' | 'italic' | 'underline' | 'strikethrough' | 'fill' | 'textColor' | 'borders' | 'merge' | 'align' | 'wrap' | 'format' | 'numberFormat' | 'conditional' | 'filter' | 'sort' | 'find' | 'chart' | 'comment' | 'separator';
144
+ /** Custom toolbar item */
145
+ export interface ToolbarCustomItem {
146
+ id: string;
147
+ label?: string;
148
+ icon?: string;
149
+ tooltip?: string;
150
+ handler: () => void;
151
+ disabled?: boolean;
152
+ position?: number;
153
+ }
154
+ /** Spreadsheet data */
155
+ export interface SpreadsheetData {
156
+ sheets: Sheet[];
157
+ activeSheet?: string;
158
+ namedRanges?: NamedRange[];
159
+ styles?: CellStyle[];
160
+ metadata?: SpreadsheetMetadata;
161
+ }
162
+ /** Sheet */
163
+ export interface Sheet {
164
+ id: string;
165
+ name: string;
166
+ cells: CellData[][];
167
+ rows?: RowInfo[];
168
+ cols?: ColInfo[];
169
+ mergedCells?: CellRange[];
170
+ conditionalFormats?: ConditionalFormat[];
171
+ dataValidations?: DataValidation[];
172
+ charts?: SpreadsheetChart[];
173
+ pivotTables?: PivotTable[];
174
+ comments?: CellComment[];
175
+ images?: SheetImage[];
176
+ protections?: SheetProtection;
177
+ hidden?: boolean;
178
+ tabColor?: string;
179
+ freezePanes?: FreezePanes;
180
+ zoom?: number;
181
+ showGridLines?: boolean;
182
+ printSettings?: PrintSettings;
183
+ }
184
+ /** Row info */
185
+ export interface RowInfo {
186
+ index: number;
187
+ height?: number;
188
+ hidden?: boolean;
189
+ style?: Partial<CellStyle>;
190
+ }
191
+ /** Column info */
192
+ export interface ColInfo {
193
+ index: number;
194
+ width?: number;
195
+ hidden?: boolean;
196
+ style?: Partial<CellStyle>;
197
+ }
198
+ /** Cell data */
199
+ export interface CellData {
200
+ value?: CellValue;
201
+ formula?: string;
202
+ type?: CellValueType;
203
+ style?: CellStyle | number;
204
+ hyperlink?: Hyperlink;
205
+ comment?: string;
206
+ note?: CellNote;
207
+ validationId?: string;
208
+ readonly?: boolean;
209
+ }
210
+ /** Cell value */
211
+ export type CellValue = string | number | boolean | Date | null | undefined | CellError;
212
+ /** Cell value type */
213
+ export type CellValueType = 'string' | 'number' | 'boolean' | 'date' | 'formula' | 'error' | 'empty';
214
+ /** Cell error */
215
+ export interface CellError {
216
+ type: ErrorType;
217
+ message?: string;
218
+ }
219
+ /** Error type */
220
+ export type ErrorType = '#NULL!' | '#DIV/0!' | '#VALUE!' | '#REF!' | '#NAME?' | '#NUM!' | '#N/A' | '#GETTING_DATA' | '#SPILL!' | '#CALC!' | '#BLOCKED!' | '#FIELD!' | '#UNKNOWN!';
221
+ /** Cell note */
222
+ export interface CellNote {
223
+ text: string;
224
+ author?: string;
225
+ date?: Date;
226
+ }
227
+ /** Hyperlink */
228
+ export interface Hyperlink {
229
+ type: 'url' | 'email' | 'cell' | 'sheet' | 'file';
230
+ target: string;
231
+ display?: string;
232
+ tooltip?: string;
233
+ }
234
+ /** Named range */
235
+ export interface NamedRange {
236
+ name: string;
237
+ range: CellRange;
238
+ scope?: 'workbook' | string;
239
+ comment?: string;
240
+ }
241
+ /** Sheet image */
242
+ export interface SheetImage {
243
+ id: string;
244
+ src: string;
245
+ position: ImagePosition;
246
+ size?: {
247
+ width: number;
248
+ height: number;
249
+ };
250
+ rotation?: number;
251
+ opacity?: number;
252
+ alt?: string;
253
+ }
254
+ /** Image position */
255
+ export interface ImagePosition {
256
+ type: 'absolute' | 'cell';
257
+ x?: number;
258
+ y?: number;
259
+ cell?: CellAddress;
260
+ offsetX?: number;
261
+ offsetY?: number;
262
+ }
263
+ /** Sheet protection */
264
+ export interface SheetProtection {
265
+ enabled: boolean;
266
+ password?: string;
267
+ allowSelectLockedCells?: boolean;
268
+ allowSelectUnlockedCells?: boolean;
269
+ allowFormatCells?: boolean;
270
+ allowFormatColumns?: boolean;
271
+ allowFormatRows?: boolean;
272
+ allowInsertColumns?: boolean;
273
+ allowInsertRows?: boolean;
274
+ allowInsertHyperlinks?: boolean;
275
+ allowDeleteColumns?: boolean;
276
+ allowDeleteRows?: boolean;
277
+ allowSort?: boolean;
278
+ allowAutoFilter?: boolean;
279
+ allowPivotTables?: boolean;
280
+ allowEditObjects?: boolean;
281
+ allowEditScenarios?: boolean;
282
+ }
283
+ /** Spreadsheet metadata */
284
+ export interface SpreadsheetMetadata {
285
+ title?: string;
286
+ author?: string;
287
+ subject?: string;
288
+ keywords?: string[];
289
+ description?: string;
290
+ created?: Date;
291
+ modified?: Date;
292
+ lastAuthor?: string;
293
+ revision?: number;
294
+ application?: string;
295
+ customProperties?: Record<string, unknown>;
296
+ }
297
+ /** Cell style */
298
+ export interface CellStyle {
299
+ fontFamily?: string;
300
+ fontSize?: number;
301
+ fontWeight?: 'normal' | 'bold';
302
+ fontStyle?: 'normal' | 'italic';
303
+ textDecoration?: TextDecoration;
304
+ color?: string;
305
+ horizontal?: HorizontalAlign;
306
+ vertical?: VerticalAlign;
307
+ wrapText?: boolean;
308
+ shrinkToFit?: boolean;
309
+ textRotation?: number;
310
+ indent?: number;
311
+ backgroundColor?: string;
312
+ pattern?: FillPattern;
313
+ patternColor?: string;
314
+ gradient?: CellGradient;
315
+ border?: CellBorder | BorderStyle;
316
+ borderTop?: BorderStyle;
317
+ borderRight?: BorderStyle;
318
+ borderBottom?: BorderStyle;
319
+ borderLeft?: BorderStyle;
320
+ borderDiagonalUp?: BorderStyle;
321
+ borderDiagonalDown?: BorderStyle;
322
+ numberFormat?: string;
323
+ locked?: boolean;
324
+ hidden?: boolean;
325
+ }
326
+ /** Text decoration */
327
+ export interface TextDecoration {
328
+ underline?: 'none' | 'single' | 'double' | 'singleAccounting' | 'doubleAccounting';
329
+ strikethrough?: boolean;
330
+ superscript?: boolean;
331
+ subscript?: boolean;
332
+ }
333
+ /** Fill pattern */
334
+ export type FillPattern = 'none' | 'solid' | 'darkGray' | 'mediumGray' | 'lightGray' | 'gray125' | 'gray0625' | 'darkHorizontal' | 'darkVertical' | 'darkDown' | 'darkUp' | 'darkGrid' | 'darkTrellis' | 'lightHorizontal' | 'lightVertical' | 'lightDown' | 'lightUp' | 'lightGrid' | 'lightTrellis';
335
+ /** Cell gradient */
336
+ export interface CellGradient {
337
+ type: 'linear' | 'path';
338
+ degree?: number;
339
+ stops: GradientStop[];
340
+ left?: number;
341
+ right?: number;
342
+ top?: number;
343
+ bottom?: number;
344
+ }
345
+ /** Gradient stop */
346
+ export interface GradientStop {
347
+ position: number;
348
+ color: string;
349
+ }
350
+ /** Cell border */
351
+ export interface CellBorder {
352
+ top?: BorderStyle;
353
+ right?: BorderStyle;
354
+ bottom?: BorderStyle;
355
+ left?: BorderStyle;
356
+ }
357
+ /** Border style */
358
+ export interface BorderStyle {
359
+ style?: BorderLineStyle;
360
+ color?: string;
361
+ }
362
+ /** Border line style */
363
+ export type BorderLineStyle = 'none' | 'thin' | 'medium' | 'thick' | 'dashed' | 'dotted' | 'double' | 'hair' | 'mediumDashed' | 'dashDot' | 'mediumDashDot' | 'dashDotDot' | 'mediumDashDotDot' | 'slantDashDot';
364
+ /** Conditional format */
365
+ export interface ConditionalFormat {
366
+ id: string;
367
+ range: CellRange;
368
+ rules: ConditionalRule[];
369
+ stopIfTrue?: boolean;
370
+ priority?: number;
371
+ }
372
+ /** Conditional rule */
373
+ export interface ConditionalRule {
374
+ id: string;
375
+ type: ConditionalRuleType;
376
+ style: Partial<CellStyle>;
377
+ condition?: ConditionalCondition;
378
+ colorScale?: ColorScale;
379
+ dataBar?: DataBar;
380
+ iconSet?: IconSet;
381
+ }
382
+ /** Conditional rule type */
383
+ export type ConditionalRuleType = 'cellIs' | 'expression' | 'colorScale' | 'dataBar' | 'iconSet' | 'top10' | 'aboveAverage' | 'uniqueValues' | 'duplicateValues' | 'containsText' | 'notContainsText' | 'beginsWith' | 'endsWith' | 'containsBlanks' | 'notContainsBlanks' | 'containsErrors' | 'notContainsErrors' | 'timePeriod' | 'dataBarGradient';
384
+ /** Conditional condition */
385
+ export interface ConditionalCondition {
386
+ operator?: ConditionalOperator;
387
+ values?: (string | number | boolean | null)[];
388
+ formula?: string;
389
+ text?: string;
390
+ timePeriod?: TimePeriod;
391
+ rank?: number;
392
+ percent?: boolean;
393
+ bottom?: boolean;
394
+ }
395
+ /** Conditional operator */
396
+ export type ConditionalOperator = 'equal' | 'notEqual' | 'greaterThan' | 'greaterThanOrEqual' | 'lessThan' | 'lessThanOrEqual' | 'between' | 'notBetween';
397
+ /** Time period */
398
+ export type TimePeriod = 'today' | 'yesterday' | 'tomorrow' | 'last7Days' | 'thisWeek' | 'lastWeek' | 'nextWeek' | 'thisMonth' | 'lastMonth' | 'nextMonth' | 'thisYear' | 'lastYear' | 'nextYear';
399
+ /** Color scale */
400
+ export interface ColorScale {
401
+ type: '2-color' | '3-color';
402
+ min: ColorScaleValue;
403
+ mid?: ColorScaleValue;
404
+ max: ColorScaleValue;
405
+ }
406
+ /** Color scale value */
407
+ export interface ColorScaleValue {
408
+ type: 'min' | 'max' | 'num' | 'percent' | 'formula' | 'percentile';
409
+ value?: number | string;
410
+ color: string;
411
+ }
412
+ /** Data bar */
413
+ export interface DataBar {
414
+ minValue?: DataBarValue;
415
+ maxValue?: DataBarValue;
416
+ color?: string;
417
+ negativeColor?: string;
418
+ borderColor?: string;
419
+ negativeBorderColor?: string;
420
+ axisColor?: string;
421
+ showValue?: boolean;
422
+ gradient?: boolean;
423
+ direction?: 'ltr' | 'rtl' | 'context';
424
+ axisPosition?: 'automatic' | 'middle' | 'none';
425
+ }
426
+ /** Data bar value */
427
+ export interface DataBarValue {
428
+ type: 'min' | 'max' | 'num' | 'percent' | 'formula' | 'percentile' | 'autoMin' | 'autoMax';
429
+ value?: number | string;
430
+ }
431
+ /** Icon set */
432
+ export interface IconSet {
433
+ style: IconSetStyle;
434
+ reverse?: boolean;
435
+ showValue?: boolean;
436
+ icons?: IconSetIcon[];
437
+ }
438
+ /** Icon set style */
439
+ export type IconSetStyle = '3Arrows' | '3ArrowsGray' | '3Flags' | '3TrafficLights1' | '3TrafficLights2' | '3Signs' | '3Symbols' | '3Symbols2' | '4Arrows' | '4ArrowsGray' | '4RedToBlack' | '4Rating' | '4TrafficLights' | '5Arrows' | '5ArrowsGray' | '5Rating' | '5Quarters' | '3Stars' | '3Triangles' | '5Boxes';
440
+ /** Icon set icon */
441
+ export interface IconSetIcon {
442
+ iconSet?: IconSetStyle;
443
+ iconId?: number;
444
+ type: 'percent' | 'num' | 'formula' | 'percentile';
445
+ value: number | string;
446
+ operator?: '>=' | '>';
447
+ }
448
+ /** Data validation */
449
+ export interface DataValidation {
450
+ id: string;
451
+ range: CellRange;
452
+ type: DataValidationType;
453
+ criteria?: ValidationCriteria;
454
+ inputMessage?: ValidationMessage;
455
+ errorMessage?: ValidationErrorMessage;
456
+ allowBlank?: boolean;
457
+ showDropdown?: boolean;
458
+ inCellDropdown?: boolean;
459
+ }
460
+ /** Data validation type */
461
+ export type DataValidationType = 'any' | 'whole' | 'decimal' | 'list' | 'date' | 'time' | 'textLength' | 'custom';
462
+ /** Validation criteria */
463
+ export interface ValidationCriteria {
464
+ operator?: ValidationOperator;
465
+ value1?: string | number | Date;
466
+ value2?: string | number | Date;
467
+ formula1?: string;
468
+ formula2?: string;
469
+ list?: string[];
470
+ listFormula?: string;
471
+ }
472
+ /** Validation operator */
473
+ export type ValidationOperator = 'between' | 'notBetween' | 'equal' | 'notEqual' | 'greaterThan' | 'lessThan' | 'greaterThanOrEqual' | 'lessThanOrEqual';
474
+ /** Validation message */
475
+ export interface ValidationMessage {
476
+ show?: boolean;
477
+ title?: string;
478
+ message?: string;
479
+ }
480
+ /** Validation error message */
481
+ export interface ValidationErrorMessage {
482
+ show?: boolean;
483
+ style?: 'stop' | 'warning' | 'information';
484
+ title?: string;
485
+ message?: string;
486
+ }
487
+ /** Formula engine configuration */
488
+ export interface FormulaEngineConfig {
489
+ /** Array formula support */
490
+ arrayFormulas?: boolean;
491
+ /** Dynamic array support */
492
+ dynamicArrays?: boolean;
493
+ /** Lambda functions */
494
+ lambdaFunctions?: boolean;
495
+ /** Let function */
496
+ letFunction?: boolean;
497
+ /** Max iterations for circular refs */
498
+ maxIterations?: number;
499
+ /** Max change for iteration */
500
+ maxChange?: number;
501
+ /** Iteration enabled */
502
+ iterationEnabled?: boolean;
503
+ /** Precision as displayed */
504
+ precisionAsDisplayed?: boolean;
505
+ /** Date 1900/1904 system */
506
+ date1904?: boolean;
507
+ /** Custom functions */
508
+ customFunctions?: CustomFunction[];
509
+ }
510
+ /** Formula evaluation result */
511
+ export interface FormulaResult {
512
+ value: CellValue | CellValue[][];
513
+ type: CellValueType;
514
+ error?: CellError;
515
+ dependencies: CellAddress[];
516
+ isArray?: boolean;
517
+ spillRange?: CellRange;
518
+ }
519
+ /** Formula parse result */
520
+ export interface FormulaParseResult {
521
+ valid: boolean;
522
+ tokens: FormulaToken[];
523
+ ast?: FormulaAST;
524
+ errors?: FormulaError[];
525
+ references: CellAddress[];
526
+ functions: string[];
527
+ }
528
+ /** Formula token */
529
+ export interface FormulaToken {
530
+ type: TokenType;
531
+ value: string;
532
+ start: number;
533
+ end: number;
534
+ }
535
+ /** Token type */
536
+ export type TokenType = 'operator' | 'operand' | 'function' | 'subexpression' | 'argument' | 'operand-range' | 'operand-number' | 'operand-text' | 'operand-logical' | 'operand-error' | 'operand-array' | 'whitespace' | 'unknown';
537
+ /** Formula AST */
538
+ export interface FormulaAST {
539
+ type: 'expression' | 'function' | 'reference' | 'literal' | 'operator' | 'array';
540
+ value?: unknown;
541
+ name?: string;
542
+ operator?: string;
543
+ arguments?: FormulaAST[];
544
+ left?: FormulaAST;
545
+ right?: FormulaAST;
546
+ reference?: CellAddress | CellRange;
547
+ }
548
+ /** Formula error */
549
+ export interface FormulaError {
550
+ message: string;
551
+ position: number;
552
+ length: number;
553
+ code: string;
554
+ }
555
+ /** Spreadsheet chart */
556
+ export interface SpreadsheetChart {
557
+ id: string;
558
+ type: ChartType;
559
+ title?: ChartTitle;
560
+ legend?: ChartLegend;
561
+ dataSource: ChartDataSource;
562
+ position: ChartPosition;
563
+ size: {
564
+ width: number;
565
+ height: number;
566
+ };
567
+ axes?: ChartAxes;
568
+ series?: ChartSeries[];
569
+ plotArea?: PlotArea;
570
+ colors?: string[];
571
+ animation?: boolean;
572
+ style?: ChartStyle;
573
+ }
574
+ /** Chart type */
575
+ export type ChartType = 'column' | 'bar' | 'line' | 'area' | 'pie' | 'doughnut' | 'scatter' | 'bubble' | 'radar' | 'stock' | 'surface' | 'combo' | 'waterfall' | 'funnel' | 'treemap' | 'sunburst' | 'histogram' | 'boxWhisker' | 'pareto';
576
+ /** Chart title */
577
+ export interface ChartTitle {
578
+ text?: string;
579
+ visible?: boolean;
580
+ position?: 'top' | 'bottom' | 'left' | 'right' | 'overlay';
581
+ font?: ChartFont;
582
+ }
583
+ /** Chart legend */
584
+ export interface ChartLegend {
585
+ visible?: boolean;
586
+ position?: 'top' | 'bottom' | 'left' | 'right' | 'topRight';
587
+ font?: ChartFont;
588
+ }
589
+ /** Chart font */
590
+ export interface ChartFont {
591
+ family?: string;
592
+ size?: number;
593
+ weight?: 'normal' | 'bold';
594
+ style?: 'normal' | 'italic';
595
+ color?: string;
596
+ }
597
+ /** Chart data source */
598
+ export interface ChartDataSource {
599
+ range?: CellRange;
600
+ categories?: CellRange | string[];
601
+ values?: ChartValueSource[];
602
+ seriesInRows?: boolean;
603
+ }
604
+ /** Chart value source */
605
+ export interface ChartValueSource {
606
+ name?: string | CellAddress;
607
+ values: CellRange;
608
+ categories?: CellRange;
609
+ }
610
+ /** Chart position */
611
+ export interface ChartPosition {
612
+ type: 'absolute' | 'cell';
613
+ x?: number;
614
+ y?: number;
615
+ cell?: CellAddress;
616
+ offsetX?: number;
617
+ offsetY?: number;
618
+ }
619
+ /** Chart axes */
620
+ export interface ChartAxes {
621
+ category?: ChartAxis;
622
+ value?: ChartAxis;
623
+ secondaryCategory?: ChartAxis;
624
+ secondaryValue?: ChartAxis;
625
+ }
626
+ /** Chart axis */
627
+ export interface ChartAxis {
628
+ visible?: boolean;
629
+ title?: ChartTitle;
630
+ min?: number;
631
+ max?: number;
632
+ majorUnit?: number;
633
+ minorUnit?: number;
634
+ logarithmic?: boolean;
635
+ reversed?: boolean;
636
+ crossAt?: number | 'min' | 'max' | 'auto';
637
+ majorGridlines?: GridlineStyle;
638
+ minorGridlines?: GridlineStyle;
639
+ tickMarks?: 'none' | 'inside' | 'outside' | 'cross';
640
+ labelPosition?: 'nextTo' | 'low' | 'high' | 'none';
641
+ labelRotation?: number;
642
+ numberFormat?: string;
643
+ font?: ChartFont;
644
+ }
645
+ /** Gridline style */
646
+ export interface GridlineStyle {
647
+ visible?: boolean;
648
+ color?: string;
649
+ width?: number;
650
+ dash?: string;
651
+ }
652
+ /** Chart series */
653
+ export interface ChartSeries {
654
+ name?: string;
655
+ type?: ChartType;
656
+ values: CellRange | number[];
657
+ categories?: CellRange | string[];
658
+ color?: string;
659
+ marker?: MarkerStyle;
660
+ dataLabels?: DataLabels;
661
+ trendline?: Trendline;
662
+ errorBars?: ErrorBars;
663
+ secondaryAxis?: boolean;
664
+ }
665
+ /** Marker style */
666
+ export interface MarkerStyle {
667
+ type?: 'none' | 'automatic' | 'circle' | 'dash' | 'diamond' | 'dot' | 'plus' | 'square' | 'star' | 'triangle' | 'x';
668
+ size?: number;
669
+ fill?: string;
670
+ border?: {
671
+ color?: string;
672
+ width?: number;
673
+ };
674
+ }
675
+ /** Data labels */
676
+ export interface DataLabels {
677
+ visible?: boolean;
678
+ position?: 'center' | 'insideEnd' | 'insideBase' | 'outsideEnd' | 'bestFit';
679
+ showValue?: boolean;
680
+ showCategory?: boolean;
681
+ showSeriesName?: boolean;
682
+ showPercent?: boolean;
683
+ showLeaderLines?: boolean;
684
+ separator?: string;
685
+ numberFormat?: string;
686
+ font?: ChartFont;
687
+ }
688
+ /** Trendline */
689
+ export interface Trendline {
690
+ type: 'linear' | 'exponential' | 'logarithmic' | 'polynomial' | 'power' | 'movingAverage';
691
+ order?: number;
692
+ period?: number;
693
+ forward?: number;
694
+ backward?: number;
695
+ intercept?: number;
696
+ displayEquation?: boolean;
697
+ displayRSquared?: boolean;
698
+ color?: string;
699
+ width?: number;
700
+ dash?: string;
701
+ }
702
+ /** Error bars */
703
+ export interface ErrorBars {
704
+ type: 'both' | 'plus' | 'minus';
705
+ valueType: 'fixedValue' | 'percentage' | 'standardDeviation' | 'standardError' | 'custom';
706
+ value?: number;
707
+ plusRange?: CellRange;
708
+ minusRange?: CellRange;
709
+ color?: string;
710
+ width?: number;
711
+ }
712
+ /** Plot area */
713
+ export interface PlotArea {
714
+ fill?: string;
715
+ border?: {
716
+ color?: string;
717
+ width?: number;
718
+ };
719
+ }
720
+ /** Chart style */
721
+ export interface ChartStyle {
722
+ preset?: number;
723
+ fill?: string;
724
+ border?: {
725
+ color?: string;
726
+ width?: number;
727
+ radius?: number;
728
+ };
729
+ shadow?: boolean;
730
+ }
731
+ /** Pivot table */
732
+ export interface PivotTable {
733
+ id: string;
734
+ name: string;
735
+ sourceRange: CellRange;
736
+ targetCell: CellAddress;
737
+ rows: PivotField[];
738
+ columns: PivotField[];
739
+ values: PivotValue[];
740
+ filters: PivotFilter[];
741
+ config?: PivotTableConfig;
742
+ }
743
+ /** Pivot field */
744
+ export interface PivotField {
745
+ sourceField: string | number;
746
+ name?: string;
747
+ sortOrder?: 'ascending' | 'descending' | 'manual';
748
+ showBlank?: boolean;
749
+ subtotals?: PivotSubtotal[];
750
+ items?: PivotItem[];
751
+ grouping?: PivotGrouping;
752
+ }
753
+ /** Pivot item */
754
+ export interface PivotItem {
755
+ value: CellValue;
756
+ visible?: boolean;
757
+ position?: number;
758
+ }
759
+ /** Pivot subtotal */
760
+ export type PivotSubtotal = 'sum' | 'count' | 'average' | 'max' | 'min' | 'product' | 'countNums' | 'stdDev' | 'stdDevP' | 'var' | 'varP';
761
+ /** Pivot grouping */
762
+ export interface PivotGrouping {
763
+ type: 'numeric' | 'date';
764
+ start?: number | Date;
765
+ end?: number | Date;
766
+ interval?: number;
767
+ dateUnits?: ('seconds' | 'minutes' | 'hours' | 'days' | 'months' | 'quarters' | 'years')[];
768
+ }
769
+ /** Pivot value */
770
+ export interface PivotValue {
771
+ sourceField: string | number;
772
+ name?: string;
773
+ summarizeBy: PivotSubtotal;
774
+ showDataAs?: PivotShowDataAs;
775
+ baseField?: string | number;
776
+ baseItem?: CellValue | 'previous' | 'next';
777
+ numberFormat?: string;
778
+ }
779
+ /** Show data as */
780
+ export type PivotShowDataAs = 'normal' | 'percentOfGrandTotal' | 'percentOfColumnTotal' | 'percentOfRowTotal' | 'percentOfParentColumnTotal' | 'percentOfParentRowTotal' | 'percentOfParentTotal' | 'difference' | 'percentDifference' | 'runningTotal' | 'percentRunningTotal' | 'rankAscending' | 'rankDescending' | 'index';
781
+ /** Pivot filter */
782
+ export interface PivotFilter {
783
+ sourceField: string | number;
784
+ type: PivotFilterType;
785
+ value1?: CellValue;
786
+ value2?: CellValue;
787
+ items?: CellValue[];
788
+ }
789
+ /** Pivot filter type */
790
+ export type PivotFilterType = 'valueFilter' | 'labelFilter' | 'dateFilter' | 'top10' | 'captionEquals' | 'captionNotEquals' | 'captionBeginsWith' | 'captionNotBeginsWith' | 'captionEndsWith' | 'captionNotEndsWith' | 'captionContains' | 'captionNotContains' | 'captionGreaterThan' | 'captionGreaterThanOrEqual' | 'captionLessThan' | 'captionLessThanOrEqual' | 'captionBetween' | 'captionNotBetween';
791
+ /** Pivot table config */
792
+ export interface PivotTableConfig {
793
+ rowGrandTotals?: boolean;
794
+ columnGrandTotals?: boolean;
795
+ showRowHeaders?: boolean;
796
+ showColumnHeaders?: boolean;
797
+ compactForm?: boolean;
798
+ outlineForm?: boolean;
799
+ tabularForm?: boolean;
800
+ repeatItemLabels?: boolean;
801
+ insertBlankRows?: boolean;
802
+ showValuesAs?: boolean;
803
+ preserveFormatting?: boolean;
804
+ autoFormat?: boolean;
805
+ style?: PivotTableStyle;
806
+ }
807
+ /** Pivot table style */
808
+ export interface PivotTableStyle {
809
+ name?: string;
810
+ showRowStripes?: boolean;
811
+ showColumnStripes?: boolean;
812
+ showRowHeaders?: boolean;
813
+ showColumnHeaders?: boolean;
814
+ }
815
+ /** Cell comment */
816
+ export interface CellComment {
817
+ id: string;
818
+ cell: CellAddress;
819
+ text: string;
820
+ author?: string;
821
+ date?: Date;
822
+ replies?: CommentReply[];
823
+ resolved?: boolean;
824
+ visible?: boolean;
825
+ position?: {
826
+ x: number;
827
+ y: number;
828
+ };
829
+ size?: {
830
+ width: number;
831
+ height: number;
832
+ };
833
+ }
834
+ /** Comment reply */
835
+ export interface CommentReply {
836
+ id: string;
837
+ text: string;
838
+ author?: string;
839
+ date?: Date;
840
+ }
841
+ /** Import options */
842
+ export interface SpreadsheetImportOptions {
843
+ format: ImportFormat;
844
+ delimiter?: string;
845
+ encoding?: string;
846
+ hasHeader?: boolean;
847
+ dateFormat?: string;
848
+ numberFormat?: NumberFormatOptions;
849
+ sheet?: string;
850
+ range?: CellRange;
851
+ }
852
+ /** Import format */
853
+ export type ImportFormat = 'xlsx' | 'xls' | 'csv' | 'tsv' | 'json' | 'xml' | 'ods' | 'html';
854
+ /** Export options */
855
+ export interface SpreadsheetExportOptions {
856
+ format: ExportFormat;
857
+ sheets?: string[];
858
+ range?: CellRange;
859
+ includeStyles?: boolean;
860
+ includeFormulas?: boolean;
861
+ includeComments?: boolean;
862
+ includeCharts?: boolean;
863
+ includePivotTables?: boolean;
864
+ csv?: CSVExportOptions;
865
+ pdf?: PDFExportOptions;
866
+ }
867
+ /** Export format */
868
+ export type ExportFormat = 'xlsx' | 'xls' | 'csv' | 'tsv' | 'json' | 'xml' | 'ods' | 'pdf' | 'html';
869
+ /** CSV export options */
870
+ export interface CSVExportOptions {
871
+ delimiter?: string;
872
+ encoding?: string;
873
+ lineEnding?: 'crlf' | 'lf' | 'cr';
874
+ includeHeader?: boolean;
875
+ quoteStrings?: boolean;
876
+ }
877
+ /** PDF export options */
878
+ export interface PDFExportOptions {
879
+ pageSize?: 'A4' | 'A3' | 'Letter' | 'Legal' | 'custom';
880
+ orientation?: 'portrait' | 'landscape';
881
+ fitToPage?: boolean;
882
+ margins?: {
883
+ top: number;
884
+ right: number;
885
+ bottom: number;
886
+ left: number;
887
+ };
888
+ gridLines?: boolean;
889
+ rowColHeaders?: boolean;
890
+ }
891
+ /** Print settings */
892
+ export interface PrintSettings {
893
+ pageSize?: string;
894
+ orientation?: 'portrait' | 'landscape';
895
+ scale?: number;
896
+ fitToWidth?: number;
897
+ fitToHeight?: number;
898
+ margins?: {
899
+ top: number;
900
+ right: number;
901
+ bottom: number;
902
+ left: number;
903
+ header: number;
904
+ footer: number;
905
+ };
906
+ printArea?: CellRange;
907
+ printTitles?: {
908
+ rows?: CellRange;
909
+ cols?: CellRange;
910
+ };
911
+ gridLines?: boolean;
912
+ rowColHeaders?: boolean;
913
+ blackAndWhite?: boolean;
914
+ draft?: boolean;
915
+ cellComments?: 'none' | 'atEnd' | 'asDisplayed';
916
+ cellErrors?: 'displayed' | 'blank' | 'dash' | 'notAvailable';
917
+ pageOrder?: 'downThenOver' | 'overThenDown';
918
+ firstPageNumber?: number | 'auto';
919
+ header?: HeaderFooter;
920
+ footer?: HeaderFooter;
921
+ }
922
+ /** Header/Footer */
923
+ export interface HeaderFooter {
924
+ left?: string;
925
+ center?: string;
926
+ right?: string;
927
+ different?: boolean;
928
+ firstPage?: {
929
+ left?: string;
930
+ center?: string;
931
+ right?: string;
932
+ };
933
+ evenPage?: {
934
+ left?: string;
935
+ center?: string;
936
+ right?: string;
937
+ };
938
+ scaleWithDoc?: boolean;
939
+ alignWithMargins?: boolean;
940
+ }
941
+ /** Collaboration session */
942
+ export interface CollaborationSession {
943
+ id: string;
944
+ documentId: string;
945
+ users: CollaborationUser[];
946
+ cursors: UserCursor[];
947
+ selections: UserSelection[];
948
+ changes: CollaborationChange[];
949
+ version: number;
950
+ }
951
+ /** Collaboration user */
952
+ export interface CollaborationUser {
953
+ id: string;
954
+ name: string;
955
+ color: string;
956
+ avatar?: string;
957
+ online: boolean;
958
+ lastActivity?: Date;
959
+ }
960
+ /** User cursor */
961
+ export interface UserCursor {
962
+ userId: string;
963
+ cell: CellAddress;
964
+ timestamp: Date;
965
+ }
966
+ /** User selection */
967
+ export interface UserSelection {
968
+ userId: string;
969
+ range: CellRange;
970
+ timestamp: Date;
971
+ }
972
+ /** Collaboration change */
973
+ export interface CollaborationChange {
974
+ id: string;
975
+ userId: string;
976
+ type: ChangeType;
977
+ timestamp: Date;
978
+ data: unknown;
979
+ reverted?: boolean;
980
+ }
981
+ /** Change type */
982
+ export type ChangeType = 'cell-edit' | 'cell-format' | 'row-insert' | 'row-delete' | 'col-insert' | 'col-delete' | 'row-resize' | 'col-resize' | 'merge' | 'unmerge' | 'sheet-add' | 'sheet-delete' | 'sheet-rename' | 'comment-add' | 'comment-edit' | 'comment-delete';
983
+ /** History entry */
984
+ export interface HistoryEntry {
985
+ id: string;
986
+ timestamp: Date;
987
+ user?: string;
988
+ operation: HistoryOperation;
989
+ description?: string;
990
+ undo: () => void;
991
+ redo: () => void;
992
+ }
993
+ /** History operation */
994
+ export interface HistoryOperation {
995
+ type: ChangeType;
996
+ before: unknown;
997
+ after: unknown;
998
+ range?: CellRange;
999
+ }
1000
+ /** History state */
1001
+ export interface HistoryState {
1002
+ entries: HistoryEntry[];
1003
+ currentIndex: number;
1004
+ canUndo: boolean;
1005
+ canRedo: boolean;
1006
+ }
1007
+ /** Macro definition */
1008
+ export interface SpreadsheetMacro {
1009
+ id: string;
1010
+ name: string;
1011
+ description?: string;
1012
+ shortcut?: string;
1013
+ code: string;
1014
+ type: 'javascript' | 'vba';
1015
+ enabled?: boolean;
1016
+ runOnOpen?: boolean;
1017
+ }
1018
+ /** Macro execution context */
1019
+ export interface MacroContext {
1020
+ activeSheet: Sheet;
1021
+ activeCell: CellAddress;
1022
+ selection: CellRange;
1023
+ workbook: SpreadsheetData;
1024
+ api: MacroAPI;
1025
+ }
1026
+ /** Macro API */
1027
+ export interface MacroAPI {
1028
+ getValue(cell: CellAddress): CellValue;
1029
+ setValue(cell: CellAddress, value: CellValue): void;
1030
+ getRange(range: CellRange): CellValue[][];
1031
+ setRange(range: CellRange, values: CellValue[][]): void;
1032
+ getFormula(cell: CellAddress): string | undefined;
1033
+ setFormula(cell: CellAddress, formula: string): void;
1034
+ getStyle(cell: CellAddress): CellStyle;
1035
+ setStyle(range: CellRange, style: Partial<CellStyle>): void;
1036
+ insertRow(index: number, count?: number): void;
1037
+ deleteRow(index: number, count?: number): void;
1038
+ insertColumn(index: number, count?: number): void;
1039
+ deleteColumn(index: number, count?: number): void;
1040
+ msgBox(message: string, title?: string): void;
1041
+ inputBox(prompt: string, title?: string, defaultValue?: string): string | null;
1042
+ }
1043
+ //# sourceMappingURL=spreadsheet.d.ts.map