@minecraft-docker/shared 1.5.0 → 1.6.1

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 (169) hide show
  1. package/dist/application/index.d.ts +3 -0
  2. package/dist/application/index.d.ts.map +1 -0
  3. package/dist/application/index.js +5 -0
  4. package/dist/application/index.js.map +1 -0
  5. package/dist/application/ports/inbound/IBackupUseCase.d.ts +69 -0
  6. package/dist/application/ports/inbound/IBackupUseCase.d.ts.map +1 -0
  7. package/dist/application/ports/inbound/IBackupUseCase.js +2 -0
  8. package/dist/application/ports/inbound/IBackupUseCase.js.map +1 -0
  9. package/dist/application/ports/inbound/ICreateServerUseCase.d.ts +32 -0
  10. package/dist/application/ports/inbound/ICreateServerUseCase.d.ts.map +1 -0
  11. package/dist/application/ports/inbound/ICreateServerUseCase.js +2 -0
  12. package/dist/application/ports/inbound/ICreateServerUseCase.js.map +1 -0
  13. package/dist/application/ports/inbound/IDeleteServerUseCase.d.ts +26 -0
  14. package/dist/application/ports/inbound/IDeleteServerUseCase.d.ts.map +1 -0
  15. package/dist/application/ports/inbound/IDeleteServerUseCase.js +2 -0
  16. package/dist/application/ports/inbound/IDeleteServerUseCase.js.map +1 -0
  17. package/dist/application/ports/inbound/IPlayerLookupUseCase.d.ts +47 -0
  18. package/dist/application/ports/inbound/IPlayerLookupUseCase.d.ts.map +1 -0
  19. package/dist/application/ports/inbound/IPlayerLookupUseCase.js +2 -0
  20. package/dist/application/ports/inbound/IPlayerLookupUseCase.js.map +1 -0
  21. package/dist/application/ports/inbound/IServerStatusUseCase.d.ts +34 -0
  22. package/dist/application/ports/inbound/IServerStatusUseCase.d.ts.map +1 -0
  23. package/dist/application/ports/inbound/IServerStatusUseCase.js +2 -0
  24. package/dist/application/ports/inbound/IServerStatusUseCase.js.map +1 -0
  25. package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts +56 -0
  26. package/dist/application/ports/inbound/IWorldManagementUseCase.d.ts.map +1 -0
  27. package/dist/application/ports/inbound/IWorldManagementUseCase.js +2 -0
  28. package/dist/application/ports/inbound/IWorldManagementUseCase.js.map +1 -0
  29. package/dist/application/ports/inbound/index.d.ts +7 -0
  30. package/dist/application/ports/inbound/index.d.ts.map +1 -0
  31. package/dist/application/ports/inbound/index.js +2 -0
  32. package/dist/application/ports/inbound/index.js.map +1 -0
  33. package/dist/application/ports/index.d.ts +3 -0
  34. package/dist/application/ports/index.d.ts.map +1 -0
  35. package/dist/application/ports/index.js +2 -0
  36. package/dist/application/ports/index.js.map +1 -0
  37. package/dist/application/ports/outbound/IDocProvider.d.ts +73 -0
  38. package/dist/application/ports/outbound/IDocProvider.d.ts.map +1 -0
  39. package/dist/application/ports/outbound/IDocProvider.js +2 -0
  40. package/dist/application/ports/outbound/IDocProvider.js.map +1 -0
  41. package/dist/application/ports/outbound/IPromptPort.d.ts +136 -0
  42. package/dist/application/ports/outbound/IPromptPort.d.ts.map +1 -0
  43. package/dist/application/ports/outbound/IPromptPort.js +2 -0
  44. package/dist/application/ports/outbound/IPromptPort.js.map +1 -0
  45. package/dist/application/ports/outbound/IServerRepository.d.ts +54 -0
  46. package/dist/application/ports/outbound/IServerRepository.d.ts.map +1 -0
  47. package/dist/application/ports/outbound/IServerRepository.js +2 -0
  48. package/dist/application/ports/outbound/IServerRepository.js.map +1 -0
  49. package/dist/application/ports/outbound/IShellPort.d.ts +106 -0
  50. package/dist/application/ports/outbound/IShellPort.d.ts.map +1 -0
  51. package/dist/application/ports/outbound/IShellPort.js +2 -0
  52. package/dist/application/ports/outbound/IShellPort.js.map +1 -0
  53. package/dist/application/ports/outbound/IWorldRepository.d.ts +71 -0
  54. package/dist/application/ports/outbound/IWorldRepository.d.ts.map +1 -0
  55. package/dist/application/ports/outbound/IWorldRepository.js +2 -0
  56. package/dist/application/ports/outbound/IWorldRepository.js.map +1 -0
  57. package/dist/application/ports/outbound/index.d.ts +6 -0
  58. package/dist/application/ports/outbound/index.d.ts.map +1 -0
  59. package/dist/application/ports/outbound/index.js +2 -0
  60. package/dist/application/ports/outbound/index.js.map +1 -0
  61. package/dist/application/use-cases/BackupUseCase.d.ts +35 -0
  62. package/dist/application/use-cases/BackupUseCase.d.ts.map +1 -0
  63. package/dist/application/use-cases/BackupUseCase.js +222 -0
  64. package/dist/application/use-cases/BackupUseCase.js.map +1 -0
  65. package/dist/application/use-cases/CreateServerUseCase.d.ts +22 -0
  66. package/dist/application/use-cases/CreateServerUseCase.d.ts.map +1 -0
  67. package/dist/application/use-cases/CreateServerUseCase.js +145 -0
  68. package/dist/application/use-cases/CreateServerUseCase.js.map +1 -0
  69. package/dist/application/use-cases/DeleteServerUseCase.d.ts +24 -0
  70. package/dist/application/use-cases/DeleteServerUseCase.d.ts.map +1 -0
  71. package/dist/application/use-cases/DeleteServerUseCase.js +108 -0
  72. package/dist/application/use-cases/DeleteServerUseCase.js.map +1 -0
  73. package/dist/application/use-cases/PlayerLookupUseCase.d.ts +23 -0
  74. package/dist/application/use-cases/PlayerLookupUseCase.d.ts.map +1 -0
  75. package/dist/application/use-cases/PlayerLookupUseCase.js +130 -0
  76. package/dist/application/use-cases/PlayerLookupUseCase.js.map +1 -0
  77. package/dist/application/use-cases/ServerStatusUseCase.d.ts +30 -0
  78. package/dist/application/use-cases/ServerStatusUseCase.d.ts.map +1 -0
  79. package/dist/application/use-cases/ServerStatusUseCase.js +117 -0
  80. package/dist/application/use-cases/ServerStatusUseCase.js.map +1 -0
  81. package/dist/application/use-cases/WorldManagementUseCase.d.ts +33 -0
  82. package/dist/application/use-cases/WorldManagementUseCase.d.ts.map +1 -0
  83. package/dist/application/use-cases/WorldManagementUseCase.js +239 -0
  84. package/dist/application/use-cases/WorldManagementUseCase.js.map +1 -0
  85. package/dist/application/use-cases/index.d.ts +7 -0
  86. package/dist/application/use-cases/index.d.ts.map +1 -0
  87. package/dist/application/use-cases/index.js +7 -0
  88. package/dist/application/use-cases/index.js.map +1 -0
  89. package/dist/docker/index.d.ts +111 -0
  90. package/dist/docker/index.d.ts.map +1 -0
  91. package/dist/docker/index.js +532 -0
  92. package/dist/docker/index.js.map +1 -0
  93. package/dist/domain/entities/Server.d.ts +77 -0
  94. package/dist/domain/entities/Server.d.ts.map +1 -0
  95. package/dist/domain/entities/Server.js +138 -0
  96. package/dist/domain/entities/Server.js.map +1 -0
  97. package/dist/domain/entities/World.d.ts +70 -0
  98. package/dist/domain/entities/World.d.ts.map +1 -0
  99. package/dist/domain/entities/World.js +128 -0
  100. package/dist/domain/entities/World.js.map +1 -0
  101. package/dist/domain/entities/index.d.ts +3 -0
  102. package/dist/domain/entities/index.d.ts.map +1 -0
  103. package/dist/domain/entities/index.js +3 -0
  104. package/dist/domain/entities/index.js.map +1 -0
  105. package/dist/domain/index.d.ts +3 -0
  106. package/dist/domain/index.d.ts.map +1 -0
  107. package/dist/domain/index.js +5 -0
  108. package/dist/domain/index.js.map +1 -0
  109. package/dist/domain/value-objects/McVersion.d.ts +35 -0
  110. package/dist/domain/value-objects/McVersion.d.ts.map +1 -0
  111. package/dist/domain/value-objects/McVersion.js +117 -0
  112. package/dist/domain/value-objects/McVersion.js.map +1 -0
  113. package/dist/domain/value-objects/Memory.d.ts +37 -0
  114. package/dist/domain/value-objects/Memory.d.ts.map +1 -0
  115. package/dist/domain/value-objects/Memory.js +107 -0
  116. package/dist/domain/value-objects/Memory.js.map +1 -0
  117. package/dist/domain/value-objects/ServerName.d.ts +21 -0
  118. package/dist/domain/value-objects/ServerName.d.ts.map +1 -0
  119. package/dist/domain/value-objects/ServerName.js +58 -0
  120. package/dist/domain/value-objects/ServerName.js.map +1 -0
  121. package/dist/domain/value-objects/ServerType.d.ts +39 -0
  122. package/dist/domain/value-objects/ServerType.d.ts.map +1 -0
  123. package/dist/domain/value-objects/ServerType.js +128 -0
  124. package/dist/domain/value-objects/ServerType.js.map +1 -0
  125. package/dist/domain/value-objects/WorldOptions.d.ts +49 -0
  126. package/dist/domain/value-objects/WorldOptions.d.ts.map +1 -0
  127. package/dist/domain/value-objects/WorldOptions.js +149 -0
  128. package/dist/domain/value-objects/WorldOptions.js.map +1 -0
  129. package/dist/domain/value-objects/index.d.ts +6 -0
  130. package/dist/domain/value-objects/index.d.ts.map +1 -0
  131. package/dist/domain/value-objects/index.js +6 -0
  132. package/dist/domain/value-objects/index.js.map +1 -0
  133. package/dist/index.d.ts +7 -0
  134. package/dist/index.d.ts.map +1 -0
  135. package/dist/index.js +17 -0
  136. package/dist/index.js.map +1 -0
  137. package/dist/infrastructure/adapters/DocsAdapter.d.ts +45 -0
  138. package/dist/infrastructure/adapters/DocsAdapter.d.ts.map +1 -0
  139. package/dist/infrastructure/adapters/DocsAdapter.js +490 -0
  140. package/dist/infrastructure/adapters/DocsAdapter.js.map +1 -0
  141. package/dist/infrastructure/adapters/ServerRepository.d.ts +49 -0
  142. package/dist/infrastructure/adapters/ServerRepository.d.ts.map +1 -0
  143. package/dist/infrastructure/adapters/ServerRepository.js +206 -0
  144. package/dist/infrastructure/adapters/ServerRepository.js.map +1 -0
  145. package/dist/infrastructure/adapters/ShellAdapter.d.ts +39 -0
  146. package/dist/infrastructure/adapters/ShellAdapter.d.ts.map +1 -0
  147. package/dist/infrastructure/adapters/ShellAdapter.js +188 -0
  148. package/dist/infrastructure/adapters/ShellAdapter.js.map +1 -0
  149. package/dist/infrastructure/adapters/WorldRepository.d.ts +55 -0
  150. package/dist/infrastructure/adapters/WorldRepository.d.ts.map +1 -0
  151. package/dist/infrastructure/adapters/WorldRepository.js +213 -0
  152. package/dist/infrastructure/adapters/WorldRepository.js.map +1 -0
  153. package/dist/infrastructure/adapters/index.d.ts +9 -0
  154. package/dist/infrastructure/adapters/index.d.ts.map +1 -0
  155. package/dist/infrastructure/adapters/index.js +9 -0
  156. package/dist/infrastructure/adapters/index.js.map +1 -0
  157. package/dist/infrastructure/index.d.ts +6 -0
  158. package/dist/infrastructure/index.d.ts.map +1 -0
  159. package/dist/infrastructure/index.js +6 -0
  160. package/dist/infrastructure/index.js.map +1 -0
  161. package/dist/types/index.d.ts +151 -0
  162. package/dist/types/index.d.ts.map +1 -0
  163. package/dist/types/index.js +2 -0
  164. package/dist/types/index.js.map +1 -0
  165. package/dist/utils/index.d.ts +81 -0
  166. package/dist/utils/index.d.ts.map +1 -0
  167. package/dist/utils/index.js +200 -0
  168. package/dist/utils/index.js.map +1 -0
  169. package/package.json +1 -1
@@ -0,0 +1,3 @@
1
+ export * from './ports/index.js';
2
+ export * from './use-cases/index.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,5 @@
1
+ // Ports
2
+ export * from './ports/index.js';
3
+ // Use Cases
4
+ export * from './use-cases/index.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,kBAAkB,CAAC;AAEjC,YAAY;AACZ,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Backup Use Case - Inbound Port
3
+ * Manages world backups to GitHub
4
+ */
5
+ export interface IBackupUseCase {
6
+ /**
7
+ * Interactive backup push
8
+ */
9
+ push(): Promise<BackupPushResult>;
10
+ /**
11
+ * Push backup with message
12
+ */
13
+ pushWithMessage(message: string): Promise<BackupPushResult>;
14
+ /**
15
+ * Get backup status
16
+ */
17
+ status(): Promise<BackupStatusResult>;
18
+ /**
19
+ * Get backup history
20
+ */
21
+ history(): Promise<BackupHistoryResult[]>;
22
+ /**
23
+ * Interactive restore selection
24
+ */
25
+ restore(): Promise<BackupRestoreResult>;
26
+ /**
27
+ * Restore from specific commit
28
+ */
29
+ restoreFromCommit(commitHash: string): Promise<BackupRestoreResult>;
30
+ }
31
+ /**
32
+ * Backup push result
33
+ */
34
+ export interface BackupPushResult {
35
+ success: boolean;
36
+ commitHash?: string;
37
+ message?: string;
38
+ worldsBackedUp?: string[];
39
+ error?: string;
40
+ }
41
+ /**
42
+ * Backup status result
43
+ */
44
+ export interface BackupStatusResult {
45
+ configured: boolean;
46
+ repository?: string;
47
+ branch?: string;
48
+ lastBackup?: Date;
49
+ autoBackupEnabled?: boolean;
50
+ }
51
+ /**
52
+ * Backup history entry
53
+ */
54
+ export interface BackupHistoryResult {
55
+ commitHash: string;
56
+ message: string;
57
+ date: Date;
58
+ author: string;
59
+ }
60
+ /**
61
+ * Backup restore result
62
+ */
63
+ export interface BackupRestoreResult {
64
+ success: boolean;
65
+ commitHash: string;
66
+ worldsRestored?: string[];
67
+ error?: string;
68
+ }
69
+ //# sourceMappingURL=IBackupUseCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IBackupUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IBackupUseCase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAElC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE5D;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEtC;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAE1C;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAExC;;OAEG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IBackupUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IBackupUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IBackupUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ import { Server } from '../../../domain/index.js';
2
+ /**
3
+ * Create Server Use Case - Inbound Port
4
+ * Orchestrates interactive server creation flow
5
+ */
6
+ export interface ICreateServerUseCase {
7
+ /**
8
+ * Execute interactive server creation
9
+ * Prompts user for all configuration options
10
+ */
11
+ execute(): Promise<Server>;
12
+ /**
13
+ * Execute server creation with provided configuration
14
+ * Used when arguments are passed via CLI
15
+ */
16
+ executeWithConfig(config: CreateServerConfig): Promise<Server>;
17
+ }
18
+ /**
19
+ * Server creation configuration
20
+ * Used for non-interactive mode
21
+ */
22
+ export interface CreateServerConfig {
23
+ name: string;
24
+ type?: string;
25
+ version?: string;
26
+ memory?: string;
27
+ seed?: string;
28
+ worldName?: string;
29
+ worldUrl?: string;
30
+ autoStart?: boolean;
31
+ }
32
+ //# sourceMappingURL=ICreateServerUseCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ICreateServerUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/ICreateServerUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3B;;;OAGG;IACH,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAChE;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ICreateServerUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ICreateServerUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/ICreateServerUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Delete Server Use Case - Inbound Port
3
+ * Orchestrates server deletion with confirmation
4
+ */
5
+ export interface IDeleteServerUseCase {
6
+ /**
7
+ * Execute interactive server deletion
8
+ * Shows server selection and confirmation prompts
9
+ */
10
+ execute(): Promise<boolean>;
11
+ /**
12
+ * Execute server deletion with provided name
13
+ * Used when server name is passed via CLI
14
+ */
15
+ executeWithName(name: string, force?: boolean): Promise<boolean>;
16
+ }
17
+ /**
18
+ * Server deletion result
19
+ */
20
+ export interface DeleteServerResult {
21
+ success: boolean;
22
+ serverName: string;
23
+ worldPreserved?: string;
24
+ error?: string;
25
+ }
26
+ //# sourceMappingURL=IDeleteServerUseCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDeleteServerUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IDeleteServerUseCase.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5B;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IDeleteServerUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDeleteServerUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IDeleteServerUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Player Lookup Use Case - Inbound Port
3
+ * Looks up Minecraft player information
4
+ */
5
+ export interface IPlayerLookupUseCase {
6
+ /**
7
+ * Interactive player lookup
8
+ */
9
+ lookup(): Promise<PlayerLookupResult>;
10
+ /**
11
+ * Lookup player by name
12
+ */
13
+ lookupByName(name: string): Promise<PlayerLookupResult>;
14
+ /**
15
+ * Get player UUID
16
+ */
17
+ getUuid(name: string, offline?: boolean): Promise<PlayerUuidResult>;
18
+ }
19
+ /**
20
+ * Player lookup result
21
+ */
22
+ export interface PlayerLookupResult {
23
+ success: boolean;
24
+ name?: string;
25
+ uuid?: string;
26
+ skinUrl?: string;
27
+ nameHistory?: PlayerNameHistory[];
28
+ error?: string;
29
+ }
30
+ /**
31
+ * Player name history entry
32
+ */
33
+ export interface PlayerNameHistory {
34
+ name: string;
35
+ changedAt?: Date;
36
+ }
37
+ /**
38
+ * Player UUID result
39
+ */
40
+ export interface PlayerUuidResult {
41
+ success: boolean;
42
+ name: string;
43
+ uuid?: string;
44
+ isOffline: boolean;
45
+ error?: string;
46
+ }
47
+ //# sourceMappingURL=IPlayerLookupUseCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IPlayerLookupUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IPlayerLookupUseCase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEtC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAExD;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IPlayerLookupUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IPlayerLookupUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IPlayerLookupUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { ServerStatus } from '../../../domain/index.js';
2
+ /**
3
+ * Server Status Use Case - Inbound Port
4
+ * Displays server status information
5
+ */
6
+ export interface IServerStatusUseCase {
7
+ /**
8
+ * Get status of all servers
9
+ */
10
+ execute(): Promise<ServerStatusResult[]>;
11
+ /**
12
+ * Get status of a specific server
13
+ */
14
+ executeForServer(name: string): Promise<ServerStatusResult>;
15
+ /**
16
+ * Get status in JSON format
17
+ */
18
+ executeAsJson(): Promise<string>;
19
+ }
20
+ /**
21
+ * Server status result
22
+ */
23
+ export interface ServerStatusResult {
24
+ name: string;
25
+ containerName: string;
26
+ hostname: string;
27
+ status: ServerStatus;
28
+ type: string;
29
+ version: string;
30
+ playerCount: number;
31
+ memory?: string;
32
+ uptime?: string;
33
+ }
34
+ //# sourceMappingURL=IServerStatusUseCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IServerStatusUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IServerStatusUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAEzC;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE5D;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IServerStatusUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IServerStatusUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IServerStatusUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * World Management Use Case - Inbound Port
3
+ * Manages world assignments and locks
4
+ */
5
+ export interface IWorldManagementUseCase {
6
+ /**
7
+ * List all worlds with lock status
8
+ */
9
+ listWorlds(): Promise<WorldListResult[]>;
10
+ /**
11
+ * Interactive world assignment
12
+ */
13
+ assignWorld(): Promise<WorldAssignResult>;
14
+ /**
15
+ * Assign world to server by name
16
+ */
17
+ assignWorldByName(worldName: string, serverName: string): Promise<WorldAssignResult>;
18
+ /**
19
+ * Interactive world release
20
+ */
21
+ releaseWorld(): Promise<WorldReleaseResult>;
22
+ /**
23
+ * Release world by name
24
+ */
25
+ releaseWorldByName(worldName: string, force?: boolean): Promise<WorldReleaseResult>;
26
+ }
27
+ /**
28
+ * World list result
29
+ */
30
+ export interface WorldListResult {
31
+ name: string;
32
+ path: string;
33
+ isLocked: boolean;
34
+ lockedBy?: string;
35
+ size: string;
36
+ lastModified?: Date;
37
+ }
38
+ /**
39
+ * World assignment result
40
+ */
41
+ export interface WorldAssignResult {
42
+ success: boolean;
43
+ worldName: string;
44
+ serverName: string;
45
+ error?: string;
46
+ }
47
+ /**
48
+ * World release result
49
+ */
50
+ export interface WorldReleaseResult {
51
+ success: boolean;
52
+ worldName: string;
53
+ previousServer?: string;
54
+ error?: string;
55
+ }
56
+ //# sourceMappingURL=IWorldManagementUseCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IWorldManagementUseCase.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IWorldManagementUseCase.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEzC;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE1C;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAErF;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE5C;;OAEG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACrF;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IWorldManagementUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IWorldManagementUseCase.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/IWorldManagementUseCase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export type { ICreateServerUseCase, CreateServerConfig } from './ICreateServerUseCase.js';
2
+ export type { IDeleteServerUseCase, DeleteServerResult } from './IDeleteServerUseCase.js';
3
+ export type { IServerStatusUseCase, ServerStatusResult } from './IServerStatusUseCase.js';
4
+ export type { IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, } from './IWorldManagementUseCase.js';
5
+ export type { IBackupUseCase, BackupPushResult, BackupStatusResult, BackupHistoryResult, BackupRestoreResult, } from './IBackupUseCase.js';
6
+ export type { IPlayerLookupUseCase, PlayerLookupResult, PlayerNameHistory, PlayerUuidResult, } from './IPlayerLookupUseCase.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/inbound/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/application/ports/inbound/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export type { ICreateServerUseCase, CreateServerConfig, IDeleteServerUseCase, DeleteServerResult, IServerStatusUseCase, ServerStatusResult, IWorldManagementUseCase, WorldListResult, WorldAssignResult, WorldReleaseResult, IBackupUseCase, BackupPushResult, BackupStatusResult, BackupHistoryResult, BackupRestoreResult, IPlayerLookupUseCase, PlayerLookupResult, PlayerNameHistory, PlayerUuidResult, } from './inbound/index.js';
2
+ export type { IPromptPort, TextPromptOptions, SelectPromptOptions, SelectOption, ConfirmPromptOptions, Spinner, IShellPort, CreateServerOptions, LogsOptions, ShellResult, IDocProvider, DocServerTypeInfo, DocEnvVarInfo, DocVersionInfo, DocMemoryInfo, IServerRepository, ServerConfigData, IWorldRepository, WorldLockData, WorldWithServerStatus, ServerStatus, WorldAvailabilityCategory, } from './outbound/index.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/application/ports/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/ports/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,73 @@
1
+ import { ServerTypeInfo } from '../../../domain/index.js';
2
+ /**
3
+ * Doc Provider Port - Outbound Port
4
+ * Interface for reading and parsing docs/ directory
5
+ */
6
+ export interface IDocProvider {
7
+ /**
8
+ * Get server types from docs/06-types-and-platforms.md
9
+ */
10
+ getServerTypes(): Promise<DocServerTypeInfo[]>;
11
+ /**
12
+ * Get environment variables from docs/03-variables.md
13
+ */
14
+ getEnvVars(category?: string): Promise<DocEnvVarInfo[]>;
15
+ /**
16
+ * Get version compatibility information
17
+ */
18
+ getVersionCompatibility(serverType: string): Promise<DocVersionInfo[]>;
19
+ /**
20
+ * Get common Minecraft versions
21
+ */
22
+ getCommonVersions(): Promise<string[]>;
23
+ /**
24
+ * Get recommended memory settings
25
+ */
26
+ getMemoryRecommendations(): Promise<DocMemoryInfo[]>;
27
+ /**
28
+ * Check if docs are available
29
+ */
30
+ isAvailable(): Promise<boolean>;
31
+ }
32
+ /**
33
+ * Server type information from docs
34
+ */
35
+ export interface DocServerTypeInfo extends ServerTypeInfo {
36
+ docSection?: string;
37
+ defaultVersion?: string;
38
+ javaVersions: string[];
39
+ notes?: string[];
40
+ }
41
+ /**
42
+ * Environment variable information from docs
43
+ */
44
+ export interface DocEnvVarInfo {
45
+ name: string;
46
+ type: string;
47
+ default?: string;
48
+ description: string;
49
+ required: boolean;
50
+ category: string;
51
+ example?: string;
52
+ }
53
+ /**
54
+ * Version compatibility information
55
+ */
56
+ export interface DocVersionInfo {
57
+ mcVersion: string;
58
+ javaVersion: string;
59
+ supportedTypes: string[];
60
+ releaseDate?: string;
61
+ isLatest?: boolean;
62
+ }
63
+ /**
64
+ * Memory recommendation information
65
+ */
66
+ export interface DocMemoryInfo {
67
+ label: string;
68
+ value: string;
69
+ description: string;
70
+ recommended?: boolean;
71
+ forMods?: boolean;
72
+ }
73
+ //# sourceMappingURL=IDocProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDocProvider.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IDocProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE/C;;OAEG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAExD;;OAEG;IACH,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAEvE;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEvC;;OAEG;IACH,wBAAwB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAErD;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IDocProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDocProvider.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IDocProvider.ts"],"names":[],"mappings":""}
@@ -0,0 +1,136 @@
1
+ import { ServerName, ServerType, McVersion, Memory, WorldOptions, Server, World } from '../../../domain/index.js';
2
+ import type { WorldWithServerStatus } from './IWorldRepository.js';
3
+ /**
4
+ * Prompt Port - Outbound Port
5
+ * Interface for user interaction/prompts
6
+ */
7
+ export interface IPromptPort {
8
+ /**
9
+ * Show introduction message
10
+ */
11
+ intro(message: string): void;
12
+ /**
13
+ * Show conclusion message
14
+ */
15
+ outro(message: string): void;
16
+ /**
17
+ * Text input prompt
18
+ */
19
+ text(options: TextPromptOptions): Promise<string>;
20
+ /**
21
+ * Select from options
22
+ */
23
+ select<T>(options: SelectPromptOptions<T>): Promise<T>;
24
+ /**
25
+ * Confirm yes/no prompt
26
+ */
27
+ confirm(options: ConfirmPromptOptions): Promise<boolean>;
28
+ /**
29
+ * Prompt for server name with validation
30
+ */
31
+ promptServerName(): Promise<ServerName>;
32
+ /**
33
+ * Prompt for server type selection
34
+ */
35
+ promptServerType(): Promise<ServerType>;
36
+ /**
37
+ * Prompt for Minecraft version
38
+ */
39
+ promptMcVersion(serverType: ServerType): Promise<McVersion>;
40
+ /**
41
+ * Prompt for memory allocation
42
+ */
43
+ promptMemory(): Promise<Memory>;
44
+ /**
45
+ * Prompt for world options (new/existing/download)
46
+ */
47
+ promptWorldOptions(): Promise<WorldOptions>;
48
+ /**
49
+ * Prompt for server selection from list
50
+ */
51
+ promptServerSelection(servers: Server[]): Promise<Server>;
52
+ /**
53
+ * Prompt for world selection from list
54
+ */
55
+ promptWorldSelection(worlds: World[]): Promise<World>;
56
+ /**
57
+ * Prompt for existing world selection with availability status
58
+ * Shows worlds categorized by: available, stopped server, running server
59
+ * @param worlds - List of worlds with their server status
60
+ * @returns Selected world or null if cancelled/no selection
61
+ */
62
+ promptExistingWorldSelection(worlds: WorldWithServerStatus[]): Promise<World | null>;
63
+ /**
64
+ * Start a spinner with message
65
+ */
66
+ spinner(): Spinner;
67
+ /**
68
+ * Display success message
69
+ */
70
+ success(message: string): void;
71
+ /**
72
+ * Display error message
73
+ */
74
+ error(message: string): void;
75
+ /**
76
+ * Display warning message
77
+ */
78
+ warn(message: string): void;
79
+ /**
80
+ * Display info message
81
+ */
82
+ info(message: string): void;
83
+ /**
84
+ * Display note
85
+ */
86
+ note(message: string, title?: string): void;
87
+ /**
88
+ * Check if user cancelled
89
+ */
90
+ isCancel(value: unknown): boolean;
91
+ /**
92
+ * Handle user cancellation
93
+ */
94
+ handleCancel(): never;
95
+ }
96
+ /**
97
+ * Text prompt options
98
+ */
99
+ export interface TextPromptOptions {
100
+ message: string;
101
+ placeholder?: string;
102
+ initialValue?: string;
103
+ validate?: (value: string) => string | void;
104
+ }
105
+ /**
106
+ * Select prompt options
107
+ */
108
+ export interface SelectPromptOptions<T> {
109
+ message: string;
110
+ options: SelectOption<T>[];
111
+ initialValue?: T;
112
+ }
113
+ /**
114
+ * Select option
115
+ */
116
+ export interface SelectOption<T> {
117
+ value: T;
118
+ label: string;
119
+ hint?: string;
120
+ }
121
+ /**
122
+ * Confirm prompt options
123
+ */
124
+ export interface ConfirmPromptOptions {
125
+ message: string;
126
+ initialValue?: boolean;
127
+ }
128
+ /**
129
+ * Spinner interface
130
+ */
131
+ export interface Spinner {
132
+ start(message?: string): void;
133
+ stop(message?: string): void;
134
+ message(message: string): void;
135
+ }
136
+ //# sourceMappingURL=IPromptPort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IPromptPort.d.ts","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IPromptPort.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IPromptPort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IPromptPort.js","sourceRoot":"","sources":["../../../../src/application/ports/outbound/IPromptPort.ts"],"names":[],"mappings":""}