@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,704 @@
1
+ /**
2
+ * @file db-adapters.ts
3
+ * @module @nice2dev/ui-tools/db-adapters
4
+ * @description PRO-10.4 — Database Adapters types
5
+ *
6
+ * Adaptery do różnych silników baz danych: PostgreSQL, MySQL, SQL Server,
7
+ * MongoDB, Redis, Cassandra, ClickHouse, Elasticsearch, i wiele innych.
8
+ */
9
+ /** Database adapter type */
10
+ export type DbAdapterType = 'postgresql' | 'mysql' | 'mariadb' | 'mssql' | 'oracle' | 'sqlite' | 'mongodb' | 'redis' | 'cassandra' | 'clickhouse' | 'elasticsearch' | 'dynamodb' | 'cosmosdb' | 'neo4j' | 'influxdb' | 'cockroachdb' | 'timescaledb';
11
+ /** Base adapter configuration */
12
+ export interface DbAdapterConfig {
13
+ readonly type: DbAdapterType;
14
+ readonly name: string;
15
+ readonly host: string;
16
+ readonly port: number;
17
+ readonly database?: string;
18
+ readonly username?: string;
19
+ readonly password?: string;
20
+ readonly connectionString?: string;
21
+ readonly ssl?: SslOptions;
22
+ readonly pool?: PoolOptions;
23
+ readonly timeout?: TimeoutOptions;
24
+ readonly options?: Record<string, unknown>;
25
+ }
26
+ /** SSL options */
27
+ export interface SslOptions {
28
+ readonly enabled: boolean;
29
+ readonly mode: 'disable' | 'prefer' | 'require' | 'verify-ca' | 'verify-full';
30
+ readonly ca?: string;
31
+ readonly cert?: string;
32
+ readonly key?: string;
33
+ readonly passphrase?: string;
34
+ readonly rejectUnauthorized?: boolean;
35
+ }
36
+ /** Connection pool options */
37
+ export interface PoolOptions {
38
+ readonly min: number;
39
+ readonly max: number;
40
+ readonly acquireTimeout: number;
41
+ readonly idleTimeout: number;
42
+ readonly maxLifetime: number;
43
+ readonly reapInterval: number;
44
+ }
45
+ /** Timeout options */
46
+ export interface TimeoutOptions {
47
+ readonly connect: number;
48
+ readonly query: number;
49
+ readonly idle: number;
50
+ readonly request: number;
51
+ }
52
+ /** Adapter capabilities */
53
+ export interface AdapterCapabilities {
54
+ readonly transactions: boolean;
55
+ readonly savepoints: boolean;
56
+ readonly nestedTransactions: boolean;
57
+ readonly preparedStatements: boolean;
58
+ readonly storedProcedures: boolean;
59
+ readonly triggers: boolean;
60
+ readonly views: boolean;
61
+ readonly materializedViews: boolean;
62
+ readonly fullTextSearch: boolean;
63
+ readonly jsonSupport: boolean;
64
+ readonly arraySupport: boolean;
65
+ readonly spatialSupport: boolean;
66
+ readonly timeSeriesSupport: boolean;
67
+ readonly graphQueries: boolean;
68
+ readonly bulkOperations: boolean;
69
+ readonly streaming: boolean;
70
+ readonly changeStreams: boolean;
71
+ readonly explain: boolean;
72
+ readonly profile: boolean;
73
+ }
74
+ /** PostgreSQL-specific config */
75
+ export interface PostgresConfig extends DbAdapterConfig {
76
+ readonly type: 'postgresql';
77
+ readonly schema?: string;
78
+ readonly applicationName?: string;
79
+ readonly statementTimeout?: number;
80
+ readonly lockTimeout?: number;
81
+ readonly idleInTransactionTimeout?: number;
82
+ readonly searchPath?: readonly string[];
83
+ readonly binaryMode?: boolean;
84
+ readonly parseInputDatesAsUTC?: boolean;
85
+ }
86
+ /** PostgreSQL extension */
87
+ export interface PostgresExtension {
88
+ readonly name: string;
89
+ readonly version: string;
90
+ readonly schema: string;
91
+ readonly installed: boolean;
92
+ readonly available: boolean;
93
+ readonly comment?: string;
94
+ }
95
+ /** PostgreSQL tablespace */
96
+ export interface PostgresTablespace {
97
+ readonly name: string;
98
+ readonly owner: string;
99
+ readonly location: string;
100
+ readonly size: number;
101
+ readonly options?: Record<string, string>;
102
+ }
103
+ /** MySQL-specific config */
104
+ export interface MysqlConfig extends DbAdapterConfig {
105
+ readonly type: 'mysql' | 'mariadb';
106
+ readonly charset?: string;
107
+ readonly collation?: string;
108
+ readonly timezone?: string;
109
+ readonly multipleStatements?: boolean;
110
+ readonly namedPlaceholders?: boolean;
111
+ readonly bigNumberStrings?: boolean;
112
+ readonly supportBigNumbers?: boolean;
113
+ readonly dateStrings?: boolean | readonly string[];
114
+ readonly localInfile?: boolean;
115
+ }
116
+ /** MySQL storage engine */
117
+ export interface MysqlStorageEngine {
118
+ readonly name: string;
119
+ readonly support: 'default' | 'yes' | 'no' | 'disabled';
120
+ readonly transactions: boolean;
121
+ readonly xa: boolean;
122
+ readonly savepoints: boolean;
123
+ readonly comment?: string;
124
+ }
125
+ /** SQL Server-specific config */
126
+ export interface MssqlConfig extends DbAdapterConfig {
127
+ readonly type: 'mssql';
128
+ readonly instanceName?: string;
129
+ readonly domain?: string;
130
+ readonly trustServerCertificate?: boolean;
131
+ readonly encrypt?: boolean;
132
+ readonly packetSize?: number;
133
+ readonly useUtc?: boolean;
134
+ readonly abortTransactionOnError?: boolean;
135
+ readonly appName?: string;
136
+ readonly multiSubnetFailover?: boolean;
137
+ readonly integratedSecurity?: boolean;
138
+ }
139
+ /** SQL Server edition */
140
+ export interface MssqlEditionInfo {
141
+ readonly edition: string;
142
+ readonly productLevel: string;
143
+ readonly productVersion: string;
144
+ readonly engineEdition: number;
145
+ readonly isClustered: boolean;
146
+ readonly isAlwaysOn: boolean;
147
+ }
148
+ /** Oracle-specific config */
149
+ export interface OracleConfig extends DbAdapterConfig {
150
+ readonly type: 'oracle';
151
+ readonly serviceName?: string;
152
+ readonly sid?: string;
153
+ readonly tnsAdmin?: string;
154
+ readonly edition?: string;
155
+ readonly fetchArraySize?: number;
156
+ readonly prefetchRows?: number;
157
+ readonly lobPrefetchSize?: number;
158
+ readonly stmtCacheSize?: number;
159
+ readonly externalAuth?: boolean;
160
+ }
161
+ /** Oracle tablespace */
162
+ export interface OracleTablespace {
163
+ readonly name: string;
164
+ readonly status: 'online' | 'offline' | 'read_only';
165
+ readonly contents: 'permanent' | 'temporary' | 'undo';
166
+ readonly bigfile: boolean;
167
+ readonly maxSize: number;
168
+ readonly usedSize: number;
169
+ readonly freeSize: number;
170
+ }
171
+ /** SQLite-specific config */
172
+ export interface SqliteConfig extends DbAdapterConfig {
173
+ readonly type: 'sqlite';
174
+ readonly filePath: string;
175
+ readonly mode: 'memory' | 'file' | 'readonly';
176
+ readonly busyTimeout?: number;
177
+ readonly journalMode?: 'delete' | 'truncate' | 'persist' | 'memory' | 'wal' | 'off';
178
+ readonly synchronous?: 'off' | 'normal' | 'full' | 'extra';
179
+ readonly foreignKeys?: boolean;
180
+ readonly cacheSize?: number;
181
+ readonly pageSize?: number;
182
+ }
183
+ /** SQLite pragma */
184
+ export interface SqlitePragma {
185
+ readonly name: string;
186
+ readonly value: unknown;
187
+ readonly description: string;
188
+ readonly category: 'performance' | 'safety' | 'debug' | 'schema';
189
+ }
190
+ /** MongoDB-specific config */
191
+ export interface MongoConfig extends DbAdapterConfig {
192
+ readonly type: 'mongodb';
193
+ readonly replicaSet?: string;
194
+ readonly authSource?: string;
195
+ readonly authMechanism?: 'SCRAM-SHA-1' | 'SCRAM-SHA-256' | 'MONGODB-X509' | 'MONGODB-AWS';
196
+ readonly readPreference?: 'primary' | 'primaryPreferred' | 'secondary' | 'secondaryPreferred' | 'nearest';
197
+ readonly writeConcern?: MongoWriteConcern;
198
+ readonly readConcern?: 'local' | 'available' | 'majority' | 'linearizable' | 'snapshot';
199
+ readonly maxPoolSize?: number;
200
+ readonly retryWrites?: boolean;
201
+ readonly retryReads?: boolean;
202
+ readonly directConnection?: boolean;
203
+ }
204
+ /** MongoDB write concern */
205
+ export interface MongoWriteConcern {
206
+ readonly w: number | 'majority';
207
+ readonly j?: boolean;
208
+ readonly wtimeout?: number;
209
+ }
210
+ /** MongoDB collection info */
211
+ export interface MongoCollectionInfo {
212
+ readonly name: string;
213
+ readonly type: 'collection' | 'view' | 'timeseries';
214
+ readonly options: MongoCollectionOptions;
215
+ readonly indexes: readonly MongoIndexInfo[];
216
+ readonly stats: MongoCollectionStats;
217
+ }
218
+ /** MongoDB collection options */
219
+ export interface MongoCollectionOptions {
220
+ readonly capped?: boolean;
221
+ readonly size?: number;
222
+ readonly max?: number;
223
+ readonly validator?: Record<string, unknown>;
224
+ readonly validationLevel?: 'off' | 'strict' | 'moderate';
225
+ readonly validationAction?: 'error' | 'warn';
226
+ readonly storageEngine?: Record<string, unknown>;
227
+ readonly timeseries?: MongoTimeseriesOptions;
228
+ }
229
+ /** MongoDB timeseries options */
230
+ export interface MongoTimeseriesOptions {
231
+ readonly timeField: string;
232
+ readonly metaField?: string;
233
+ readonly granularity?: 'seconds' | 'minutes' | 'hours';
234
+ }
235
+ /** MongoDB index info */
236
+ export interface MongoIndexInfo {
237
+ readonly name: string;
238
+ readonly key: Record<string, 1 | -1 | 'text' | '2d' | '2dsphere' | 'hashed'>;
239
+ readonly unique?: boolean;
240
+ readonly sparse?: boolean;
241
+ readonly background?: boolean;
242
+ readonly expireAfterSeconds?: number;
243
+ readonly partialFilterExpression?: Record<string, unknown>;
244
+ }
245
+ /** MongoDB collection stats */
246
+ export interface MongoCollectionStats {
247
+ readonly count: number;
248
+ readonly size: number;
249
+ readonly avgObjSize: number;
250
+ readonly storageSize: number;
251
+ readonly totalIndexSize: number;
252
+ readonly indexSizes: Record<string, number>;
253
+ }
254
+ /** Redis-specific config */
255
+ export interface RedisConfig extends DbAdapterConfig {
256
+ readonly type: 'redis';
257
+ readonly db?: number;
258
+ readonly keyPrefix?: string;
259
+ readonly cluster?: readonly RedisClusterNode[];
260
+ readonly sentinel?: RedisSentinelConfig;
261
+ readonly enableReadyCheck?: boolean;
262
+ readonly maxRetriesPerRequest?: number;
263
+ readonly enableOfflineQueue?: boolean;
264
+ readonly lazyConnect?: boolean;
265
+ }
266
+ /** Redis cluster node */
267
+ export interface RedisClusterNode {
268
+ readonly host: string;
269
+ readonly port: number;
270
+ }
271
+ /** Redis sentinel config */
272
+ export interface RedisSentinelConfig {
273
+ readonly sentinels: readonly RedisClusterNode[];
274
+ readonly name: string;
275
+ readonly sentinelPassword?: string;
276
+ }
277
+ /** Redis key info */
278
+ export interface RedisKeyInfo {
279
+ readonly key: string;
280
+ readonly type: 'string' | 'list' | 'set' | 'zset' | 'hash' | 'stream' | 'json';
281
+ readonly ttl: number;
282
+ readonly encoding?: string;
283
+ readonly refcount?: number;
284
+ readonly idletime?: number;
285
+ readonly size?: number;
286
+ }
287
+ /** Redis info section */
288
+ export interface RedisServerInfo {
289
+ readonly version: string;
290
+ readonly mode: 'standalone' | 'sentinel' | 'cluster';
291
+ readonly os: string;
292
+ readonly arch: string;
293
+ readonly process: RedisProcessInfo;
294
+ readonly clients: RedisClientsInfo;
295
+ readonly memory: RedisMemoryInfo;
296
+ readonly persistence: RedisPersistenceInfo;
297
+ readonly stats: RedisStatsInfo;
298
+ readonly replication: RedisReplicationInfo;
299
+ readonly cpu: RedisCpuInfo;
300
+ readonly cluster: RedisClusterInfo;
301
+ readonly keyspace: Record<string, RedisKeyspaceInfo>;
302
+ }
303
+ /** Redis process info */
304
+ export interface RedisProcessInfo {
305
+ readonly pid: number;
306
+ readonly uptimeInSeconds: number;
307
+ readonly uptimeInDays: number;
308
+ readonly hz: number;
309
+ readonly configuredHz: number;
310
+ }
311
+ /** Redis clients info */
312
+ export interface RedisClientsInfo {
313
+ readonly connectedClients: number;
314
+ readonly blockedClients: number;
315
+ readonly trackingClients: number;
316
+ readonly clientsInTimeoutTable: number;
317
+ }
318
+ /** Redis memory info */
319
+ export interface RedisMemoryInfo {
320
+ readonly usedMemory: number;
321
+ readonly usedMemoryHuman: string;
322
+ readonly usedMemoryRss: number;
323
+ readonly usedMemoryPeak: number;
324
+ readonly totalSystemMemory: number;
325
+ readonly memoryFragmentationRatio: number;
326
+ }
327
+ /** Redis persistence info */
328
+ export interface RedisPersistenceInfo {
329
+ readonly loading: boolean;
330
+ readonly rdbLastSaveTime: number;
331
+ readonly rdbLastBgsaveStatus: 'ok' | 'err';
332
+ readonly aofEnabled: boolean;
333
+ readonly aofLastRewriteStatus: 'ok' | 'err';
334
+ }
335
+ /** Redis stats info */
336
+ export interface RedisStatsInfo {
337
+ readonly totalConnectionsReceived: number;
338
+ readonly totalCommandsProcessed: number;
339
+ readonly instantaneousOpsPerSec: number;
340
+ readonly totalNetInputBytes: number;
341
+ readonly totalNetOutputBytes: number;
342
+ readonly keyspaceHits: number;
343
+ readonly keyspaceMisses: number;
344
+ }
345
+ /** Redis replication info */
346
+ export interface RedisReplicationInfo {
347
+ readonly role: 'master' | 'slave';
348
+ readonly connectedSlaves: number;
349
+ readonly masterHost?: string;
350
+ readonly masterPort?: number;
351
+ readonly masterLinkStatus?: 'up' | 'down';
352
+ }
353
+ /** Redis CPU info */
354
+ export interface RedisCpuInfo {
355
+ readonly usedCpuSys: number;
356
+ readonly usedCpuUser: number;
357
+ readonly usedCpuSysChildren: number;
358
+ readonly usedCpuUserChildren: number;
359
+ }
360
+ /** Redis cluster info */
361
+ export interface RedisClusterInfo {
362
+ readonly enabled: boolean;
363
+ readonly state?: 'ok' | 'fail';
364
+ readonly slotsAssigned?: number;
365
+ readonly slotsOk?: number;
366
+ readonly slotsPfail?: number;
367
+ readonly slotsFail?: number;
368
+ readonly knownNodes?: number;
369
+ readonly size?: number;
370
+ }
371
+ /** Redis keyspace info */
372
+ export interface RedisKeyspaceInfo {
373
+ readonly keys: number;
374
+ readonly expires: number;
375
+ readonly avgTtl: number;
376
+ }
377
+ /** Cassandra-specific config */
378
+ export interface CassandraConfig extends DbAdapterConfig {
379
+ readonly type: 'cassandra';
380
+ readonly keyspace?: string;
381
+ readonly contactPoints: readonly string[];
382
+ readonly localDataCenter: string;
383
+ readonly consistencyLevel?: CassandraConsistency;
384
+ readonly serialConsistency?: 'SERIAL' | 'LOCAL_SERIAL';
385
+ readonly fetchSize?: number;
386
+ readonly protocolVersion?: number;
387
+ }
388
+ /** Cassandra consistency level */
389
+ export type CassandraConsistency = 'ANY' | 'ONE' | 'TWO' | 'THREE' | 'QUORUM' | 'LOCAL_QUORUM' | 'EACH_QUORUM' | 'ALL' | 'LOCAL_ONE';
390
+ /** Cassandra keyspace info */
391
+ export interface CassandraKeyspaceInfo {
392
+ readonly name: string;
393
+ readonly durableWrites: boolean;
394
+ readonly replication: CassandraReplication;
395
+ readonly tables: readonly CassandraTableInfo[];
396
+ }
397
+ /** Cassandra replication */
398
+ export interface CassandraReplication {
399
+ readonly class: 'SimpleStrategy' | 'NetworkTopologyStrategy';
400
+ readonly replicationFactor?: number;
401
+ readonly datacenters?: Record<string, number>;
402
+ }
403
+ /** Cassandra table info */
404
+ export interface CassandraTableInfo {
405
+ readonly name: string;
406
+ readonly keyspace: string;
407
+ readonly partitionKeys: readonly string[];
408
+ readonly clusteringKeys: readonly CassandraClusteringKey[];
409
+ readonly columns: readonly CassandraColumnInfo[];
410
+ readonly compaction: Record<string, string>;
411
+ readonly compression: Record<string, string>;
412
+ }
413
+ /** Cassandra clustering key */
414
+ export interface CassandraClusteringKey {
415
+ readonly column: string;
416
+ readonly order: 'asc' | 'desc';
417
+ }
418
+ /** Cassandra column info */
419
+ export interface CassandraColumnInfo {
420
+ readonly name: string;
421
+ readonly type: string;
422
+ readonly kind: 'partition_key' | 'clustering' | 'regular' | 'static';
423
+ readonly position: number;
424
+ }
425
+ /** ClickHouse-specific config */
426
+ export interface ClickHouseConfig extends DbAdapterConfig {
427
+ readonly type: 'clickhouse';
428
+ readonly protocol: 'http' | 'https' | 'native';
429
+ readonly compression?: boolean;
430
+ readonly httpHeaders?: Record<string, string>;
431
+ readonly settings?: Record<string, unknown>;
432
+ readonly sessionId?: string;
433
+ readonly format?: 'JSON' | 'JSONEachRow' | 'CSV' | 'TabSeparated';
434
+ }
435
+ /** ClickHouse table engine */
436
+ export interface ClickHouseTableEngine {
437
+ readonly engine: string;
438
+ readonly parameters?: readonly unknown[];
439
+ readonly orderBy?: readonly string[];
440
+ readonly partitionBy?: string;
441
+ readonly primaryKey?: readonly string[];
442
+ readonly sampleBy?: string;
443
+ readonly settings?: Record<string, unknown>;
444
+ }
445
+ /** Elasticsearch-specific config */
446
+ export interface ElasticsearchConfig extends DbAdapterConfig {
447
+ readonly type: 'elasticsearch';
448
+ readonly nodes: readonly string[];
449
+ readonly apiVersion?: string;
450
+ readonly apiKey?: string;
451
+ readonly cloudId?: string;
452
+ readonly maxRetries?: number;
453
+ readonly requestTimeout?: number;
454
+ readonly sniffOnStart?: boolean;
455
+ readonly sniffInterval?: number;
456
+ readonly sniffOnConnectionFault?: boolean;
457
+ }
458
+ /** Elasticsearch index */
459
+ export interface ElasticsearchIndex {
460
+ readonly name: string;
461
+ readonly uuid: string;
462
+ readonly health: 'green' | 'yellow' | 'red';
463
+ readonly status: 'open' | 'close';
464
+ readonly primaryShards: number;
465
+ readonly replicaShards: number;
466
+ readonly docsCount: number;
467
+ readonly docsDeleted: number;
468
+ readonly storeSize: number;
469
+ readonly mappings: Record<string, ElasticsearchFieldMapping>;
470
+ readonly settings: Record<string, unknown>;
471
+ readonly aliases: readonly string[];
472
+ }
473
+ /** Elasticsearch field mapping */
474
+ export interface ElasticsearchFieldMapping {
475
+ readonly type: ElasticsearchFieldType;
476
+ readonly index?: boolean;
477
+ readonly store?: boolean;
478
+ readonly analyzer?: string;
479
+ readonly searchAnalyzer?: string;
480
+ readonly fields?: Record<string, ElasticsearchFieldMapping>;
481
+ readonly properties?: Record<string, ElasticsearchFieldMapping>;
482
+ }
483
+ /** Elasticsearch field type */
484
+ export type ElasticsearchFieldType = 'text' | 'keyword' | 'long' | 'integer' | 'short' | 'byte' | 'double' | 'float' | 'half_float' | 'scaled_float' | 'date' | 'date_nanos' | 'boolean' | 'binary' | 'integer_range' | 'float_range' | 'long_range' | 'double_range' | 'date_range' | 'ip' | 'completion' | 'geo_point' | 'geo_shape' | 'token_count' | 'percolator' | 'join' | 'alias' | 'flattened' | 'shape' | 'histogram' | 'constant_keyword' | 'aggregate_metric_double' | 'dense_vector' | 'sparse_vector' | 'search_as_you_type' | 'nested' | 'object';
485
+ /** DynamoDB-specific config */
486
+ export interface DynamoDBConfig extends DbAdapterConfig {
487
+ readonly type: 'dynamodb';
488
+ readonly region: string;
489
+ readonly accessKeyId?: string;
490
+ readonly secretAccessKey?: string;
491
+ readonly sessionToken?: string;
492
+ readonly endpoint?: string;
493
+ readonly maxRetries?: number;
494
+ readonly httpOptions?: {
495
+ readonly timeout?: number;
496
+ readonly connectTimeout?: number;
497
+ };
498
+ }
499
+ /** DynamoDB table info */
500
+ export interface DynamoDBTableInfo {
501
+ readonly tableName: string;
502
+ readonly tableStatus: 'CREATING' | 'UPDATING' | 'DELETING' | 'ACTIVE' | 'INACCESSIBLE_ENCRYPTION_CREDENTIALS' | 'ARCHIVING' | 'ARCHIVED';
503
+ readonly keySchema: readonly DynamoDBKeyElement[];
504
+ readonly attributeDefinitions: readonly DynamoDBAttributeDefinition[];
505
+ readonly provisionedThroughput?: DynamoDBThroughput;
506
+ readonly billingMode: 'PROVISIONED' | 'PAY_PER_REQUEST';
507
+ readonly globalSecondaryIndexes?: readonly DynamoDBGSI[];
508
+ readonly localSecondaryIndexes?: readonly DynamoDBLSI[];
509
+ readonly itemCount: number;
510
+ readonly tableSizeBytes: number;
511
+ }
512
+ /** DynamoDB key element */
513
+ export interface DynamoDBKeyElement {
514
+ readonly attributeName: string;
515
+ readonly keyType: 'HASH' | 'RANGE';
516
+ }
517
+ /** DynamoDB attribute definition */
518
+ export interface DynamoDBAttributeDefinition {
519
+ readonly attributeName: string;
520
+ readonly attributeType: 'S' | 'N' | 'B';
521
+ }
522
+ /** DynamoDB throughput */
523
+ export interface DynamoDBThroughput {
524
+ readonly readCapacityUnits: number;
525
+ readonly writeCapacityUnits: number;
526
+ }
527
+ /** DynamoDB Global Secondary Index */
528
+ export interface DynamoDBGSI {
529
+ readonly indexName: string;
530
+ readonly keySchema: readonly DynamoDBKeyElement[];
531
+ readonly projection: {
532
+ readonly projectionType: 'ALL' | 'KEYS_ONLY' | 'INCLUDE';
533
+ readonly nonKeyAttributes?: readonly string[];
534
+ };
535
+ readonly provisionedThroughput?: DynamoDBThroughput;
536
+ }
537
+ /** DynamoDB Local Secondary Index */
538
+ export interface DynamoDBLSI {
539
+ readonly indexName: string;
540
+ readonly keySchema: readonly DynamoDBKeyElement[];
541
+ readonly projection: {
542
+ readonly projectionType: 'ALL' | 'KEYS_ONLY' | 'INCLUDE';
543
+ readonly nonKeyAttributes?: readonly string[];
544
+ };
545
+ }
546
+ /** Neo4j-specific config */
547
+ export interface Neo4jConfig extends DbAdapterConfig {
548
+ readonly type: 'neo4j';
549
+ readonly protocol: 'bolt' | 'bolt+s' | 'bolt+ssc' | 'neo4j' | 'neo4j+s' | 'neo4j+ssc';
550
+ readonly encrypted?: boolean;
551
+ readonly trustedCertificates?: readonly string[];
552
+ readonly maxConnectionLifetime?: number;
553
+ readonly maxConnectionPoolSize?: number;
554
+ readonly connectionAcquisitionTimeout?: number;
555
+ readonly fetchSize?: number;
556
+ }
557
+ /** Neo4j node label */
558
+ export interface Neo4jLabelInfo {
559
+ readonly label: string;
560
+ readonly count: number;
561
+ readonly properties: readonly Neo4jPropertyInfo[];
562
+ }
563
+ /** Neo4j relationship type */
564
+ export interface Neo4jRelationshipInfo {
565
+ readonly type: string;
566
+ readonly count: number;
567
+ readonly startLabels: readonly string[];
568
+ readonly endLabels: readonly string[];
569
+ readonly properties: readonly Neo4jPropertyInfo[];
570
+ }
571
+ /** Neo4j property info */
572
+ export interface Neo4jPropertyInfo {
573
+ readonly name: string;
574
+ readonly existence: 'always' | 'sometimes' | 'never';
575
+ readonly types: readonly string[];
576
+ readonly indexed: boolean;
577
+ readonly unique: boolean;
578
+ }
579
+ /** InfluxDB-specific config */
580
+ export interface InfluxDBConfig extends DbAdapterConfig {
581
+ readonly type: 'influxdb';
582
+ readonly version: '1.x' | '2.x';
583
+ readonly org?: string;
584
+ readonly bucket?: string;
585
+ readonly token?: string;
586
+ readonly precision?: 'ns' | 'us' | 'ms' | 's';
587
+ readonly retentionPolicy?: string;
588
+ }
589
+ /** InfluxDB bucket info */
590
+ export interface InfluxDBBucketInfo {
591
+ readonly id: string;
592
+ readonly name: string;
593
+ readonly orgId: string;
594
+ readonly retentionPeriod: number;
595
+ readonly type: 'user' | 'system';
596
+ readonly createdAt: Date;
597
+ readonly updatedAt: Date;
598
+ }
599
+ /** InfluxDB measurement info */
600
+ export interface InfluxDBMeasurementInfo {
601
+ readonly name: string;
602
+ readonly tagKeys: readonly string[];
603
+ readonly fieldKeys: readonly InfluxDBFieldInfo[];
604
+ readonly earliestTime?: Date;
605
+ readonly latestTime?: Date;
606
+ }
607
+ /** InfluxDB field info */
608
+ export interface InfluxDBFieldInfo {
609
+ readonly name: string;
610
+ readonly type: 'float' | 'integer' | 'unsigned' | 'string' | 'boolean';
611
+ }
612
+ /** CockroachDB-specific config */
613
+ export interface CockroachDBConfig extends DbAdapterConfig {
614
+ readonly type: 'cockroachdb';
615
+ readonly cluster?: string;
616
+ readonly caCert?: string;
617
+ readonly clientCert?: string;
618
+ readonly clientKey?: string;
619
+ readonly experimental?: boolean;
620
+ }
621
+ /** TimescaleDB-specific config */
622
+ export interface TimescaleDBConfig extends DbAdapterConfig {
623
+ readonly type: 'timescaledb';
624
+ readonly schema?: string;
625
+ readonly chunkTimeInterval?: string;
626
+ }
627
+ /** Timescale hypertable info */
628
+ export interface TimescaleHypertableInfo {
629
+ readonly hypertableName: string;
630
+ readonly schemaName: string;
631
+ readonly owner: string;
632
+ readonly numDimensions: number;
633
+ readonly numChunks: number;
634
+ readonly tablespaces?: readonly string[];
635
+ readonly compressionEnabled: boolean;
636
+ readonly retentionPolicy?: {
637
+ readonly dropAfter: string;
638
+ };
639
+ readonly continuousAggregates: readonly string[];
640
+ }
641
+ /** Timescale chunk info */
642
+ export interface TimescaleChunkInfo {
643
+ readonly chunkId: number;
644
+ readonly chunkName: string;
645
+ readonly hypertableName: string;
646
+ readonly rangeStart: Date;
647
+ readonly rangeEnd: Date;
648
+ readonly compressed: boolean;
649
+ readonly tablespace?: string;
650
+ readonly dataSize: number;
651
+ readonly indexSize: number;
652
+ }
653
+ /** CosmosDB-specific config */
654
+ export interface CosmosDBConfig extends DbAdapterConfig {
655
+ readonly type: 'cosmosdb';
656
+ readonly endpoint: string;
657
+ readonly key: string;
658
+ readonly databaseId: string;
659
+ readonly containerId?: string;
660
+ readonly apiType: 'sql' | 'mongodb' | 'cassandra' | 'gremlin' | 'table';
661
+ readonly consistencyLevel?: 'Strong' | 'BoundedStaleness' | 'Session' | 'ConsistentPrefix' | 'Eventual';
662
+ readonly connectionPolicy?: {
663
+ readonly requestTimeout?: number;
664
+ readonly enableEndpointDiscovery?: boolean;
665
+ readonly preferredLocations?: readonly string[];
666
+ };
667
+ }
668
+ /** CosmosDB container info */
669
+ export interface CosmosDBContainerInfo {
670
+ readonly id: string;
671
+ readonly partitionKey: {
672
+ readonly paths: readonly string[];
673
+ readonly kind: 'Hash' | 'Range' | 'MultiHash';
674
+ readonly version?: number;
675
+ };
676
+ readonly indexingPolicy: CosmosDBIndexingPolicy;
677
+ readonly defaultTtl?: number;
678
+ readonly uniqueKeyPolicy?: {
679
+ readonly uniqueKeys: readonly {
680
+ paths: readonly string[];
681
+ }[];
682
+ };
683
+ readonly throughput?: number;
684
+ }
685
+ /** CosmosDB indexing policy */
686
+ export interface CosmosDBIndexingPolicy {
687
+ readonly automatic: boolean;
688
+ readonly indexingMode: 'consistent' | 'lazy' | 'none';
689
+ readonly includedPaths: readonly {
690
+ path: string;
691
+ }[];
692
+ readonly excludedPaths: readonly {
693
+ path: string;
694
+ }[];
695
+ readonly compositeIndexes?: readonly {
696
+ path: string;
697
+ order: 'ascending' | 'descending';
698
+ }[][];
699
+ readonly spatialIndexes?: readonly {
700
+ path: string;
701
+ types: readonly string[];
702
+ }[];
703
+ }
704
+ //# sourceMappingURL=db-adapters.d.ts.map