@meowpanel/api 0.3.0 → 0.4.0

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 (201) hide show
  1. package/esm/mod.d.ts +37 -16
  2. package/esm/mod.d.ts.map +1 -1
  3. package/esm/mod.js +25 -7
  4. package/esm/src/client.d.ts +48 -11
  5. package/esm/src/client.d.ts.map +1 -1
  6. package/esm/src/client.js +53 -12
  7. package/esm/src/http.d.ts +2 -2
  8. package/esm/src/http.d.ts.map +1 -1
  9. package/esm/src/http.js +5 -2
  10. package/esm/src/namespace.d.ts +1 -1
  11. package/esm/src/namespace.js +1 -1
  12. package/esm/src/resources/account.d.ts +50 -19
  13. package/esm/src/resources/account.d.ts.map +1 -1
  14. package/esm/src/resources/account.js +51 -13
  15. package/esm/src/resources/api-keys.d.ts +16 -24
  16. package/esm/src/resources/api-keys.d.ts.map +1 -1
  17. package/esm/src/resources/api-keys.js +16 -20
  18. package/esm/src/resources/auth.d.ts +70 -4
  19. package/esm/src/resources/auth.d.ts.map +1 -1
  20. package/esm/src/resources/auth.js +47 -4
  21. package/esm/src/resources/eggs.d.ts +261 -22
  22. package/esm/src/resources/eggs.d.ts.map +1 -1
  23. package/esm/src/resources/eggs.js +261 -25
  24. package/esm/src/resources/features.d.ts +35 -0
  25. package/esm/src/resources/features.d.ts.map +1 -0
  26. package/esm/src/resources/features.js +21 -0
  27. package/esm/src/resources/hosts.d.ts +143 -18
  28. package/esm/src/resources/hosts.d.ts.map +1 -1
  29. package/esm/src/resources/hosts.js +145 -10
  30. package/esm/src/resources/logs.d.ts +39 -0
  31. package/esm/src/resources/logs.d.ts.map +1 -0
  32. package/esm/src/resources/logs.js +38 -0
  33. package/esm/src/resources/nodes.d.ts +92 -17
  34. package/esm/src/resources/nodes.d.ts.map +1 -1
  35. package/esm/src/resources/nodes.js +108 -16
  36. package/esm/src/resources/permissions.d.ts +45 -0
  37. package/esm/src/resources/permissions.d.ts.map +1 -0
  38. package/esm/src/resources/permissions.js +26 -0
  39. package/esm/src/resources/request-logs.d.ts +91 -0
  40. package/esm/src/resources/request-logs.d.ts.map +1 -0
  41. package/esm/src/resources/request-logs.js +70 -0
  42. package/esm/src/resources/roles.d.ts +128 -0
  43. package/esm/src/resources/roles.d.ts.map +1 -0
  44. package/esm/src/resources/roles.js +142 -0
  45. package/esm/src/resources/server-groups.d.ts +141 -7
  46. package/esm/src/resources/server-groups.d.ts.map +1 -1
  47. package/esm/src/resources/server-groups.js +157 -8
  48. package/esm/src/resources/servers/activity.d.ts +50 -8
  49. package/esm/src/resources/servers/activity.d.ts.map +1 -1
  50. package/esm/src/resources/servers/activity.js +54 -13
  51. package/esm/src/resources/servers/allocations.d.ts +3 -3
  52. package/esm/src/resources/servers/allocations.d.ts.map +1 -1
  53. package/esm/src/resources/servers/allocations.js +7 -7
  54. package/esm/src/resources/servers/backups.d.ts +46 -0
  55. package/esm/src/resources/servers/backups.d.ts.map +1 -0
  56. package/esm/src/resources/servers/backups.js +43 -0
  57. package/esm/src/resources/servers/connection.d.ts +27 -7
  58. package/esm/src/resources/servers/connection.d.ts.map +1 -1
  59. package/esm/src/resources/servers/connection.js +28 -7
  60. package/esm/src/resources/servers/features.d.ts +81 -0
  61. package/esm/src/resources/servers/features.d.ts.map +1 -0
  62. package/esm/src/resources/servers/features.js +60 -0
  63. package/esm/src/resources/servers/files.d.ts +41 -53
  64. package/esm/src/resources/servers/files.d.ts.map +1 -1
  65. package/esm/src/resources/servers/files.js +74 -116
  66. package/esm/src/resources/servers/index.d.ts +46 -27
  67. package/esm/src/resources/servers/index.d.ts.map +1 -1
  68. package/esm/src/resources/servers/index.js +26 -12
  69. package/esm/src/resources/servers/jobs.d.ts +88 -0
  70. package/esm/src/resources/servers/jobs.d.ts.map +1 -0
  71. package/esm/src/resources/servers/jobs.js +115 -0
  72. package/esm/src/resources/servers/node-client.d.ts +33 -0
  73. package/esm/src/resources/servers/node-client.d.ts.map +1 -0
  74. package/esm/src/resources/servers/node-client.js +61 -0
  75. package/esm/src/resources/servers/profiles.d.ts +45 -1
  76. package/esm/src/resources/servers/profiles.d.ts.map +1 -1
  77. package/esm/src/resources/servers/profiles.js +55 -2
  78. package/esm/src/resources/servers/server.d.ts +10 -25
  79. package/esm/src/resources/servers/server.d.ts.map +1 -1
  80. package/esm/src/resources/servers/server.js +18 -34
  81. package/esm/src/resources/servers/sftp.d.ts +12 -19
  82. package/esm/src/resources/servers/sftp.d.ts.map +1 -1
  83. package/esm/src/resources/servers/sftp.js +10 -14
  84. package/esm/src/resources/servers/sub-users.d.ts +99 -0
  85. package/esm/src/resources/servers/sub-users.d.ts.map +1 -0
  86. package/esm/src/resources/servers/sub-users.js +94 -0
  87. package/esm/src/resources/servers/types.d.ts +27 -25
  88. package/esm/src/resources/servers/types.d.ts.map +1 -1
  89. package/esm/src/resources/systems.d.ts +124 -0
  90. package/esm/src/resources/systems.d.ts.map +1 -0
  91. package/esm/src/resources/systems.js +139 -0
  92. package/esm/src/resources/users.d.ts +330 -0
  93. package/esm/src/resources/users.d.ts.map +1 -0
  94. package/esm/src/resources/users.js +280 -0
  95. package/esm/src/types.d.ts +18 -1
  96. package/esm/src/types.d.ts.map +1 -1
  97. package/esm/src/types.js +11 -0
  98. package/package.json +1 -1
  99. package/script/mod.d.ts +37 -16
  100. package/script/mod.d.ts.map +1 -1
  101. package/script/mod.js +50 -5
  102. package/script/src/client.d.ts +48 -11
  103. package/script/src/client.d.ts.map +1 -1
  104. package/script/src/client.js +53 -12
  105. package/script/src/http.d.ts +2 -2
  106. package/script/src/http.d.ts.map +1 -1
  107. package/script/src/http.js +5 -2
  108. package/script/src/namespace.d.ts +1 -1
  109. package/script/src/namespace.js +1 -1
  110. package/script/src/resources/account.d.ts +50 -19
  111. package/script/src/resources/account.d.ts.map +1 -1
  112. package/script/src/resources/account.js +50 -12
  113. package/script/src/resources/api-keys.d.ts +16 -24
  114. package/script/src/resources/api-keys.d.ts.map +1 -1
  115. package/script/src/resources/api-keys.js +15 -19
  116. package/script/src/resources/auth.d.ts +70 -4
  117. package/script/src/resources/auth.d.ts.map +1 -1
  118. package/script/src/resources/auth.js +47 -4
  119. package/script/src/resources/eggs.d.ts +261 -22
  120. package/script/src/resources/eggs.d.ts.map +1 -1
  121. package/script/src/resources/eggs.js +267 -26
  122. package/script/src/resources/features.d.ts +35 -0
  123. package/script/src/resources/features.d.ts.map +1 -0
  124. package/script/src/resources/features.js +25 -0
  125. package/script/src/resources/hosts.d.ts +143 -18
  126. package/script/src/resources/hosts.d.ts.map +1 -1
  127. package/script/src/resources/hosts.js +146 -10
  128. package/script/src/resources/logs.d.ts +39 -0
  129. package/script/src/resources/logs.d.ts.map +1 -0
  130. package/script/src/resources/logs.js +42 -0
  131. package/script/src/resources/nodes.d.ts +92 -17
  132. package/script/src/resources/nodes.d.ts.map +1 -1
  133. package/script/src/resources/nodes.js +109 -16
  134. package/script/src/resources/permissions.d.ts +45 -0
  135. package/script/src/resources/permissions.d.ts.map +1 -0
  136. package/script/src/resources/permissions.js +31 -0
  137. package/script/src/resources/request-logs.d.ts +91 -0
  138. package/script/src/resources/request-logs.d.ts.map +1 -0
  139. package/script/src/resources/request-logs.js +75 -0
  140. package/script/src/resources/roles.d.ts +128 -0
  141. package/script/src/resources/roles.d.ts.map +1 -0
  142. package/script/src/resources/roles.js +148 -0
  143. package/script/src/resources/server-groups.d.ts +141 -7
  144. package/script/src/resources/server-groups.d.ts.map +1 -1
  145. package/script/src/resources/server-groups.js +158 -8
  146. package/script/src/resources/servers/activity.d.ts +50 -8
  147. package/script/src/resources/servers/activity.d.ts.map +1 -1
  148. package/script/src/resources/servers/activity.js +54 -12
  149. package/script/src/resources/servers/allocations.d.ts +3 -3
  150. package/script/src/resources/servers/allocations.d.ts.map +1 -1
  151. package/script/src/resources/servers/allocations.js +7 -7
  152. package/script/src/resources/servers/backups.d.ts +46 -0
  153. package/script/src/resources/servers/backups.d.ts.map +1 -0
  154. package/script/src/resources/servers/backups.js +47 -0
  155. package/script/src/resources/servers/connection.d.ts +27 -7
  156. package/script/src/resources/servers/connection.d.ts.map +1 -1
  157. package/script/src/resources/servers/connection.js +28 -7
  158. package/script/src/resources/servers/features.d.ts +81 -0
  159. package/script/src/resources/servers/features.d.ts.map +1 -0
  160. package/script/src/resources/servers/features.js +64 -0
  161. package/script/src/resources/servers/files.d.ts +41 -53
  162. package/script/src/resources/servers/files.d.ts.map +1 -1
  163. package/script/src/resources/servers/files.js +74 -116
  164. package/script/src/resources/servers/index.d.ts +46 -27
  165. package/script/src/resources/servers/index.d.ts.map +1 -1
  166. package/script/src/resources/servers/index.js +26 -12
  167. package/script/src/resources/servers/jobs.d.ts +88 -0
  168. package/script/src/resources/servers/jobs.d.ts.map +1 -0
  169. package/script/src/resources/servers/jobs.js +120 -0
  170. package/script/src/resources/servers/node-client.d.ts +33 -0
  171. package/script/src/resources/servers/node-client.d.ts.map +1 -0
  172. package/script/src/resources/servers/node-client.js +65 -0
  173. package/script/src/resources/servers/profiles.d.ts +45 -1
  174. package/script/src/resources/servers/profiles.d.ts.map +1 -1
  175. package/script/src/resources/servers/profiles.js +55 -2
  176. package/script/src/resources/servers/server.d.ts +10 -25
  177. package/script/src/resources/servers/server.d.ts.map +1 -1
  178. package/script/src/resources/servers/server.js +18 -34
  179. package/script/src/resources/servers/sftp.d.ts +12 -19
  180. package/script/src/resources/servers/sftp.d.ts.map +1 -1
  181. package/script/src/resources/servers/sftp.js +10 -14
  182. package/script/src/resources/servers/sub-users.d.ts +99 -0
  183. package/script/src/resources/servers/sub-users.d.ts.map +1 -0
  184. package/script/src/resources/servers/sub-users.js +99 -0
  185. package/script/src/resources/servers/types.d.ts +27 -25
  186. package/script/src/resources/servers/types.d.ts.map +1 -1
  187. package/script/src/resources/systems.d.ts +124 -0
  188. package/script/src/resources/systems.d.ts.map +1 -0
  189. package/script/src/resources/systems.js +145 -0
  190. package/script/src/resources/users.d.ts +330 -0
  191. package/script/src/resources/users.d.ts.map +1 -0
  192. package/script/src/resources/users.js +287 -0
  193. package/script/src/types.d.ts +18 -1
  194. package/script/src/types.d.ts.map +1 -1
  195. package/script/src/types.js +12 -0
  196. package/esm/src/resources/members.d.ts +0 -138
  197. package/esm/src/resources/members.d.ts.map +0 -1
  198. package/esm/src/resources/members.js +0 -122
  199. package/script/src/resources/members.d.ts +0 -138
  200. package/script/src/resources/members.d.ts.map +0 -1
  201. package/script/src/resources/members.js +0 -127
package/esm/mod.d.ts CHANGED
@@ -45,7 +45,7 @@
45
45
  export { MeowPanelApi } from './src/client.js';
46
46
  export type { MeowPanelApiOptions } from './src/client.js';
47
47
  export { AuthResource } from './src/resources/auth.js';
48
- export type { AuthMeta, AuthProvider } from './src/resources/auth.js';
48
+ export type { AuthMeta, AuthProvider, EmailVerificationMode, ExchangeResult, LoginResult, RefreshResult, } from './src/resources/auth.js';
49
49
  export { ReactiveResource } from './src/reactive.js';
50
50
  export { ApiError } from './src/errors.js';
51
51
  export type { ApiErrorOptions } from './src/errors.js';
@@ -55,34 +55,55 @@ export { TypedEmitter } from './src/emitter.js';
55
55
  export type { EventHandler } from './src/emitter.js';
56
56
  export { SseConnection } from './src/sse.js';
57
57
  export type { SseState } from './src/sse.js';
58
- export { joinIncludes, toNanoID } from './src/types.js';
59
- export type { IncludeOptions, ISODate, ListOptions, NanoID, Paginated, PowerAction, PowerState, ResourceWith, ServerRestrictedState, SftpPermission, UnionToIntersection, } from './src/types.js';
58
+ export { joinIncludes, parseIssuerRef, toNanoID } from './src/types.js';
59
+ export type { IncludeOptions, ISODate, IssuerRef, ListOptions, NanoID, Paginated, ParsedIssuer, PowerAction, PowerState, ResourceColor, ResourceWith, ServerRestrictedState, SftpPermission, UnionToIntersection, } from './src/types.js';
60
60
  export { Account, AccountResource, AccountSshKeysManager, ApiKeyAccount, SshKey, UserAccount, } from './src/resources/account.js';
61
61
  export type { AccountInclude, CreateSshKeyPayload, SshKeyData, UpdateAccountPayload } from './src/resources/account.js';
62
62
  export { ApiKey, ApiKeysNamespace } from './src/resources/api-keys.js';
63
- export type { ApiKeyEvents, CreateApiKeyPayload, CreateApiKeyResult } from './src/resources/api-keys.js';
64
- export { Member, MembersNamespace } from './src/resources/members.js';
65
- export type { MemberData, MemberDisplay, MemberEvents, MemberInclude, MemberWith, UpdateMemberPayload, } from './src/resources/members.js';
66
- export { Node, NodeAllocationIp, NodeAllocationPort, NodeAllocationsManager, NodeLocation, NodesNamespace, NodeType, } from './src/resources/nodes.js';
67
- export type { ClaimNodePayload, ClaimNodeResponseData, ClaimNodeResult, CreateNodeAllocationIpPayload, CreateNodeAllocationPortsPayload, CreateNodePayload, CreateNodeResponseData, CreateNodeResult, InstallTokenResponseData, InstallTokenResult, LogNodeActivityPayload, NodeAllocationIpData, NodeAllocationPortData, NodeConnection, NodeData, NodeEvents, NodeInclude, NodeLimits, NodeLocationData, NodeStatus, NodeTypeData, NodeWith, UpdateNodeAllocationIpPayload, UpdateNodeAllocationPortPayload, } from './src/resources/nodes.js';
68
- export { Egg, EggNest, EggsNamespace } from './src/resources/eggs.js';
69
- export type { EggData, EggEvents, EggImage, EggImageData, EggInclude, EggInstaller, EggInstallerData, EggNestData, EggProcess, EggWith, UpdateEggPayload, } from './src/resources/eggs.js';
70
- export { Host, HostsNamespace } from './src/resources/hosts.js';
71
- export type { HostData } from './src/resources/hosts.js';
72
- export { ServerGroup, ServerGroupsNamespace } from './src/resources/server-groups.js';
73
- export type { CreateServerGroupPayload, ServerGroupData, ServerGroupEvents, ServerGroupLimits, ServerGroupLimitsData, } from './src/resources/server-groups.js';
63
+ export type { ApiKeyData, ApiKeyEvents, CreateApiKeyPayload, CreateApiKeyResult } from './src/resources/api-keys.js';
64
+ export type { PermissionGrant, PermissionGrantInput } from './src/resources/permissions.js';
65
+ export { User, UserPermissionsManager, UserRolesManager, UsersNamespace } from './src/resources/users.js';
66
+ export type { AssignRoleInput, CreateUserPayload, UiTheme, UpdateUserPayload, UserData, UserEvents, UserIdentifiers, UserInclude, UserPasswordIdentifier, UserPreferences, UserRoleAssignment, UserWhmcsIdentifier, UserWith, WhmcsSyncResult, } from './src/resources/users.js';
67
+ export { Role, RolePermissionsManager, RolesNamespace } from './src/resources/roles.js';
68
+ export type { CreateRolePayload, RoleData, RoleEvents, UpdateRolePayload } from './src/resources/roles.js';
69
+ export { System, SystemKeysManager, SystemsNamespace } from './src/resources/systems.js';
70
+ export type { CreateSystemPayload, SystemApiKeyResult, SystemData, SystemEvents, SystemInclude, UpdateSystemPayload, } from './src/resources/systems.js';
71
+ export { FeaturesResource } from './src/resources/features.js';
72
+ export type { FeatureCatalogEntry, FeatureVariants } from './src/resources/features.js';
73
+ export { LogsResource } from './src/resources/logs.js';
74
+ export type { LogActivityScope } from './src/resources/logs.js';
75
+ export { RequestLog } from './src/resources/request-logs.js';
76
+ export type { RequestLogData, RequestLogFeedOptions, RequestLogInclude, RequestLogLine, } from './src/resources/request-logs.js';
77
+ export { Node, NodeAllocationIp, NodeAllocationPort, NodeAllocationsManager, NodeClassifierManager, NodeLocation, NodesNamespace, NodeType, } from './src/resources/nodes.js';
78
+ export type { ClaimNodePayload, ClaimNodeResponseData, ClaimNodeResult, CreateNodeAllocationIpPayload, CreateNodeAllocationPortsPayload, CreateNodeClassifierPayload, CreateNodePayload, CreateNodeResponseData, CreateNodeResult, InstallTokenResponseData, InstallTokenResult, LogNodeActivityPayload, NodeAllocationIpData, NodeAllocationPortData, NodeConnection, NodeData, NodeEvents, NodeInclude, NodeLimits, NodeLocationData, NodeStatus, NodeTypeData, NodeWith, UpdateNodeAllocationIpPayload, UpdateNodeAllocationPortPayload, UpdateNodeClassifierPayload, UpdateNodePayload, } from './src/resources/nodes.js';
79
+ export { Egg, EggFeaturesManager, EggImagesManager, EggNest, EggNestsManager, EggsNamespace, EggVariable, EggVariablesManager, } from './src/resources/eggs.js';
80
+ export type { CreateEggPayload, CreateEggVariablePayload, EggConfigFile, EggConfigLogs, EggConfigParser, EggConfigStartup, EggData, EggEvents, EggFeatureGrant, EggFeatureGrantData, EggImage, EggImageData, EggInclude, EggInstaller, EggInstallerData, EggInstallerInput, EggNestData, EggProcess, EggVariableData, EggWith, UpdateEggPayload, UpdateEggVariablePayload, } from './src/resources/eggs.js';
81
+ export { Host, HostBillingManager, HostsNamespace } from './src/resources/hosts.js';
82
+ export type { CreateHostPayload, HostData, HostEvents, HostInclude, HostWith, SaveWhmcsBillingPayload, UpdateHostPayload, WhmcsBillingConfig, } from './src/resources/hosts.js';
83
+ export { GroupIdentifiersManager, ServerGroup, ServerGroupsNamespace } from './src/resources/server-groups.js';
84
+ export type { BillingCycle, BillingInfo, BillingProvider, BillingStatus, CreateServerGroupPayload, GroupIdentifier, ServerGroupData, ServerGroupEvents, ServerGroupInclude, ServerGroupLimits, ServerGroupLimitsData, ServerGroupWith, SuspensionState, UpdateServerGroupPayload, } from './src/resources/server-groups.js';
74
85
  export { ServersNamespace } from './src/resources/servers/index.js';
75
86
  export type { CreateServerPayload, ServerEvents, ServerInclude, ServerWith, UpdateServerPayload, } from './src/resources/servers/index.js';
76
87
  export { Server } from './src/resources/servers/server.js';
77
- export type { ServerBuild, ServerStartup, ServerStatus, StartupVariable } from './src/resources/servers/server.js';
88
+ export type { ServerBuild, ServerStatus } from './src/resources/servers/server.js';
78
89
  export { ServerConnection } from './src/resources/servers/connection.js';
79
- export type { ServerConnectionEvents, ServerUtilization } from './src/resources/servers/connection.js';
90
+ export type { JobLogEvent, JobProgressEvent, ServerConnectionEvents, ServerUtilization, } from './src/resources/servers/connection.js';
80
91
  export { FileEntry, ServerFilesManager } from './src/resources/servers/files.js';
92
+ export { ServerBackupsManager } from './src/resources/servers/backups.js';
93
+ export type { BackupAdapter, CreateBackupOptions, RestoreBackupOptions } from './src/resources/servers/backups.js';
94
+ export { ServerJob, ServerJobsManager } from './src/resources/servers/jobs.js';
95
+ export type { JobData, JobStatus, JobWaitOptions } from './src/resources/servers/jobs.js';
81
96
  export { ServerSftpManager, SftpUser } from './src/resources/servers/sftp.js';
82
97
  export type { AddAllocationEntry } from './src/resources/servers/allocations.js';
83
98
  export type { SftpConnection, SftpDetails, SftpUserInclude, SftpUserWith } from './src/resources/servers/sftp.js';
84
99
  export { ServerAllocationPort, ServerAllocationsManager } from './src/resources/servers/allocations.js';
85
100
  export type { AllocationPortMeta } from './src/resources/servers/allocations.js';
86
101
  export { ServerProfile, ServerProfilesManager } from './src/resources/servers/profiles.js';
102
+ export type { ServerStartup, StartupVariable } from './src/resources/servers/profiles.js';
103
+ export { ServerFeaturesManager } from './src/resources/servers/features.js';
104
+ export type { EffectiveFeature, FeatureSetting, FeatureSettingSource, FeatureSource, } from './src/resources/servers/features.js';
105
+ export { ServerUser, ServerUserManager } from './src/resources/servers/sub-users.js';
106
+ export type { AddServerUserInput, ServerUserGrant, ServerUserKind } from './src/resources/servers/sub-users.js';
87
107
  export { ActivityJob, ActivityJobLog, ActivityLog, ServerActivityManager } from './src/resources/servers/activity.js';
108
+ export type { ActivityFeedOptions } from './src/resources/servers/activity.js';
88
109
  //# sourceMappingURL=mod.d.ts.map
package/esm/mod.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"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"}
package/esm/mod.js CHANGED
@@ -53,21 +53,31 @@ export { HttpClient } from './src/http.js';
53
53
  export { TypedEmitter } from './src/emitter.js';
54
54
  export { SseConnection } from './src/sse.js';
55
55
  // Common types
56
- export { joinIncludes, toNanoID } from './src/types.js';
56
+ export { joinIncludes, parseIssuerRef, toNanoID } from './src/types.js';
57
57
  // Account
58
58
  export { Account, AccountResource, AccountSshKeysManager, ApiKeyAccount, SshKey, UserAccount, } from './src/resources/account.js';
59
59
  // API Keys
60
60
  export { ApiKey, ApiKeysNamespace } from './src/resources/api-keys.js';
61
- // Members
62
- export { Member, MembersNamespace } from './src/resources/members.js';
61
+ // Users
62
+ export { User, UserPermissionsManager, UserRolesManager, UsersNamespace } from './src/resources/users.js';
63
+ // Roles
64
+ export { Role, RolePermissionsManager, RolesNamespace } from './src/resources/roles.js';
65
+ // Systems
66
+ export { System, SystemKeysManager, SystemsNamespace } from './src/resources/systems.js';
67
+ // Features (catalog)
68
+ export { FeaturesResource } from './src/resources/features.js';
69
+ // Logs
70
+ export { LogsResource } from './src/resources/logs.js';
71
+ // Request logs
72
+ export { RequestLog } from './src/resources/request-logs.js';
63
73
  // Nodes
64
- export { Node, NodeAllocationIp, NodeAllocationPort, NodeAllocationsManager, NodeLocation, NodesNamespace, NodeType, } from './src/resources/nodes.js';
74
+ export { Node, NodeAllocationIp, NodeAllocationPort, NodeAllocationsManager, NodeClassifierManager, NodeLocation, NodesNamespace, NodeType, } from './src/resources/nodes.js';
65
75
  // Eggs
66
- export { Egg, EggNest, EggsNamespace } from './src/resources/eggs.js';
76
+ export { Egg, EggFeaturesManager, EggImagesManager, EggNest, EggNestsManager, EggsNamespace, EggVariable, EggVariablesManager, } from './src/resources/eggs.js';
67
77
  // Hosts
68
- export { Host, HostsNamespace } from './src/resources/hosts.js';
78
+ export { Host, HostBillingManager, HostsNamespace } from './src/resources/hosts.js';
69
79
  // Server Groups
70
- export { ServerGroup, ServerGroupsNamespace } from './src/resources/server-groups.js';
80
+ export { GroupIdentifiersManager, ServerGroup, ServerGroupsNamespace } from './src/resources/server-groups.js';
71
81
  // Servers
72
82
  export { ServersNamespace } from './src/resources/servers/index.js';
73
83
  export { Server } from './src/resources/servers/server.js';
@@ -75,11 +85,19 @@ export { Server } from './src/resources/servers/server.js';
75
85
  export { ServerConnection } from './src/resources/servers/connection.js';
76
86
  // Server files
77
87
  export { FileEntry, ServerFilesManager } from './src/resources/servers/files.js';
88
+ // Server backups
89
+ export { ServerBackupsManager } from './src/resources/servers/backups.js';
90
+ // Server jobs
91
+ export { ServerJob, ServerJobsManager } from './src/resources/servers/jobs.js';
78
92
  // Server SFTP
79
93
  export { ServerSftpManager, SftpUser } from './src/resources/servers/sftp.js';
80
94
  // Server allocations
81
95
  export { ServerAllocationPort, ServerAllocationsManager } from './src/resources/servers/allocations.js';
82
96
  // Server profiles
83
97
  export { ServerProfile, ServerProfilesManager } from './src/resources/servers/profiles.js';
98
+ // Server features
99
+ export { ServerFeaturesManager } from './src/resources/servers/features.js';
100
+ // Server sub-users
101
+ export { ServerUser, ServerUserManager } from './src/resources/servers/sub-users.js';
84
102
  // Server activity
85
103
  export { ActivityJob, ActivityJobLog, ActivityLog, ServerActivityManager } from './src/resources/servers/activity.js';
@@ -4,11 +4,15 @@ import { AccountResource } from './resources/account.js';
4
4
  import { AuthResource } from './resources/auth.js';
5
5
  import { ApiKeysNamespace } from './resources/api-keys.js';
6
6
  import { EggsNamespace } from './resources/eggs.js';
7
+ import { FeaturesResource } from './resources/features.js';
7
8
  import { HostsNamespace } from './resources/hosts.js';
8
- import { MembersNamespace } from './resources/members.js';
9
+ import { LogsResource } from './resources/logs.js';
10
+ import { UsersNamespace } from './resources/users.js';
9
11
  import { NodesNamespace } from './resources/nodes.js';
12
+ import { RolesNamespace } from './resources/roles.js';
10
13
  import { ServerGroupsNamespace } from './resources/server-groups.js';
11
14
  import { ServersNamespace } from './resources/servers/index.js';
15
+ import { SystemsNamespace } from './resources/systems.js';
12
16
  /**
13
17
  * Configuration options for {@link MeowPanelApi}.
14
18
  */
@@ -52,13 +56,13 @@ export interface MeowPanelApiOptions {
52
56
  * // Fetch resources
53
57
  * const me = await api.account.get();
54
58
  * const servers = await api.servers.list({ include: ['status'] });
55
- * const members = await api.members.list();
59
+ * const users = await api.users.list();
56
60
  *
57
61
  * // Reactive store: {#each $api.servers as server} ... {/each}
58
62
  *
59
63
  * // Listen for mutations
60
64
  * api.servers.on('created', (server) => console.log('New server:', server.name));
61
- * api.members.on('updated', (member) => console.log('Member updated:', member.nickname));
65
+ * api.users.on('updated', (user) => console.log('User updated:', user.nickname));
62
66
  *
63
67
  * // Panel-level SSE
64
68
  * const sse = api.connectSse();
@@ -84,7 +88,7 @@ export declare class MeowPanelApi {
84
88
  * @example
85
89
  * ```ts ignore
86
90
  * const me = await api.account.get();
87
- * await api.account.update({ display: { theme: 'dark' } });
91
+ * await api.account.update({ preferences: { theme: 'dark' } });
88
92
  * await api.account.uploadAvatar(imageBlob, 'image/png');
89
93
  * ```
90
94
  */
@@ -100,18 +104,38 @@ export declare class MeowPanelApi {
100
104
  */
101
105
  readonly apiKeys: ApiKeysNamespace;
102
106
  /**
103
- * Manage member (user) accounts.
107
+ * Manage user accounts.
104
108
  *
105
- * Supports reactive subscriptions via `$api.members`.
109
+ * Supports reactive subscriptions via `$api.users`.
106
110
  *
107
111
  * @example
108
112
  * ```ts ignore
109
- * const members = await api.members.list();
110
- * const member = await api.members.get(id);
111
- * await api.members.update(id, { nickname: 'newname' });
113
+ * const users = await api.users.list();
114
+ * const user = await api.users.get(id);
115
+ * await api.users.update(id, { nickname: 'newname' });
112
116
  * ```
113
117
  */
114
- readonly members: MembersNamespace;
118
+ readonly users: UsersNamespace;
119
+ /**
120
+ * Manage roles (named permission bundles).
121
+ *
122
+ * @example
123
+ * ```ts ignore
124
+ * const roles = await api.roles.list();
125
+ * await api.roles.permissions(roleId).grant({ permission: 'server.console.read' });
126
+ * ```
127
+ */
128
+ readonly roles: RolesNamespace;
129
+ /**
130
+ * Manage systems (non-user identities) and their API keys.
131
+ *
132
+ * @example
133
+ * ```ts ignore
134
+ * const system = await api.systems.create({ name: 'CI deploy' });
135
+ * const { token } = await api.systems.keys(system.id).create({ name: 'pipeline', permissions: ['server.read'] });
136
+ * ```
137
+ */
138
+ readonly systems: SystemsNamespace;
115
139
  /**
116
140
  * Manage nodes (daemon servers).
117
141
  *
@@ -184,6 +208,19 @@ export declare class MeowPanelApi {
184
208
  * ```
185
209
  */
186
210
  readonly servers: ServersNamespace;
211
+ /**
212
+ * Browse the code-defined feature catalog. Per-server feature state is at `server.features`.
213
+ */
214
+ readonly features: FeaturesResource;
215
+ /**
216
+ * Read panel-wide activity logs.
217
+ *
218
+ * @example
219
+ * ```ts ignore
220
+ * const { data } = await api.logs.activities({ type: 'server.power.start' });
221
+ * ```
222
+ */
223
+ readonly logs: LogsResource;
187
224
  constructor(options: MeowPanelApiOptions);
188
225
  /**
189
226
  * Update the bearer token used for all subsequent API requests.
@@ -197,7 +234,7 @@ export declare class MeowPanelApi {
197
234
  * Create a panel-level Server-Sent Events connection to Nexus.
198
235
  *
199
236
  * The panel SSE stream (`GET /v1/sse`) broadcasts events for mutations
200
- * across the panel (e.g. server updates, member changes).
237
+ * across the panel (e.g. server updates, user changes).
201
238
  *
202
239
  * The connection is not opened until you call `.connect()` on the returned object.
203
240
  *
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;;;OAIG;IACH,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IAClB,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;IAE3D;;;;;;;;OAQG;IACH,SAAgB,IAAI,EAAE,YAAY,CAAC;IAEnC;;;;;;;;;OASG;IACH,SAAgB,OAAO,EAAE,eAAe,CAAC;IAEzC;;;;;;;;OAQG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IAE1C;;;;;;;;;;;OAWG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IAE1C;;;;;;;;;;OAUG;IACH,SAAgB,KAAK,EAAE,cAAc,CAAC;IAEtC;;;;;;;;;;;OAWG;IACH,SAAgB,IAAI,EAAE,aAAa,CAAC;IAEpC;;;;;;;;;OASG;IACH,SAAgB,KAAK,EAAE,cAAc,CAAC;IAEtC;;;;;;;;;;OAUG;IACH,SAAgB,YAAY,EAAE,qBAAqB,CAAC;IAEpD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;gBAEvB,OAAO,EAAE,mBAAmB;IAyB/C;;;;;;OAMG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOpC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,UAAU,IAAI,aAAa;CAOlC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;;;OAIG;IACH,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IAClB,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;IAE3D;;;;;;;;OAQG;IACH,SAAgB,IAAI,EAAE,YAAY,CAAC;IAEnC;;;;;;;;;OASG;IACH,SAAgB,OAAO,EAAE,eAAe,CAAC;IAEzC;;;;;;;;OAQG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IAE1C;;;;;;;;;;;OAWG;IACH,SAAgB,KAAK,EAAE,cAAc,CAAC;IAEtC;;;;;;;;OAQG;IACH,SAAgB,KAAK,EAAE,cAAc,CAAC;IAEtC;;;;;;;;OAQG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IAE1C;;;;;;;;;;OAUG;IACH,SAAgB,KAAK,EAAE,cAAc,CAAC;IAEtC;;;;;;;;;;;OAWG;IACH,SAAgB,IAAI,EAAE,aAAa,CAAC;IAEpC;;;;;;;;;OASG;IACH,SAAgB,KAAK,EAAE,cAAc,CAAC;IAEtC;;;;;;;;;;OAUG;IACH,SAAgB,YAAY,EAAE,qBAAqB,CAAC;IAEpD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IAE1C;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;;;;;;OAOG;IACH,SAAgB,IAAI,EAAE,YAAY,CAAC;gBAEhB,OAAO,EAAE,mBAAmB;IA6B/C;;;;;;OAMG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOpC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,UAAU,IAAI,aAAa;CAOlC"}
package/esm/src/client.js CHANGED
@@ -4,11 +4,15 @@ import { AccountResource } from './resources/account.js';
4
4
  import { AuthResource } from './resources/auth.js';
5
5
  import { ApiKeysNamespace } from './resources/api-keys.js';
6
6
  import { EggsNamespace } from './resources/eggs.js';
7
+ import { FeaturesResource } from './resources/features.js';
7
8
  import { HostsNamespace } from './resources/hosts.js';
8
- import { MembersNamespace } from './resources/members.js';
9
+ import { LogsResource } from './resources/logs.js';
10
+ import { UsersNamespace } from './resources/users.js';
9
11
  import { NodesNamespace } from './resources/nodes.js';
12
+ import { RolesNamespace } from './resources/roles.js';
10
13
  import { ServerGroupsNamespace } from './resources/server-groups.js';
11
14
  import { ServersNamespace } from './resources/servers/index.js';
15
+ import { SystemsNamespace } from './resources/systems.js';
12
16
  /**
13
17
  * The root MeowPanel API client.
14
18
  *
@@ -27,13 +31,13 @@ import { ServersNamespace } from './resources/servers/index.js';
27
31
  * // Fetch resources
28
32
  * const me = await api.account.get();
29
33
  * const servers = await api.servers.list({ include: ['status'] });
30
- * const members = await api.members.list();
34
+ * const users = await api.users.list();
31
35
  *
32
36
  * // Reactive store: {#each $api.servers as server} ... {/each}
33
37
  *
34
38
  * // Listen for mutations
35
39
  * api.servers.on('created', (server) => console.log('New server:', server.name));
36
- * api.members.on('updated', (member) => console.log('Member updated:', member.nickname));
40
+ * api.users.on('updated', (user) => console.log('User updated:', user.nickname));
37
41
  *
38
42
  * // Panel-level SSE
39
43
  * const sse = api.connectSse();
@@ -59,7 +63,7 @@ export class MeowPanelApi {
59
63
  * @example
60
64
  * ```ts ignore
61
65
  * const me = await api.account.get();
62
- * await api.account.update({ display: { theme: 'dark' } });
66
+ * await api.account.update({ preferences: { theme: 'dark' } });
63
67
  * await api.account.uploadAvatar(imageBlob, 'image/png');
64
68
  * ```
65
69
  */
@@ -75,18 +79,38 @@ export class MeowPanelApi {
75
79
  */
76
80
  apiKeys;
77
81
  /**
78
- * Manage member (user) accounts.
82
+ * Manage user accounts.
79
83
  *
80
- * Supports reactive subscriptions via `$api.members`.
84
+ * Supports reactive subscriptions via `$api.users`.
81
85
  *
82
86
  * @example
83
87
  * ```ts ignore
84
- * const members = await api.members.list();
85
- * const member = await api.members.get(id);
86
- * await api.members.update(id, { nickname: 'newname' });
88
+ * const users = await api.users.list();
89
+ * const user = await api.users.get(id);
90
+ * await api.users.update(id, { nickname: 'newname' });
87
91
  * ```
88
92
  */
89
- members;
93
+ users;
94
+ /**
95
+ * Manage roles (named permission bundles).
96
+ *
97
+ * @example
98
+ * ```ts ignore
99
+ * const roles = await api.roles.list();
100
+ * await api.roles.permissions(roleId).grant({ permission: 'server.console.read' });
101
+ * ```
102
+ */
103
+ roles;
104
+ /**
105
+ * Manage systems (non-user identities) and their API keys.
106
+ *
107
+ * @example
108
+ * ```ts ignore
109
+ * const system = await api.systems.create({ name: 'CI deploy' });
110
+ * const { token } = await api.systems.keys(system.id).create({ name: 'pipeline', permissions: ['server.read'] });
111
+ * ```
112
+ */
113
+ systems;
90
114
  /**
91
115
  * Manage nodes (daemon servers).
92
116
  *
@@ -159,6 +183,19 @@ export class MeowPanelApi {
159
183
  * ```
160
184
  */
161
185
  servers;
186
+ /**
187
+ * Browse the code-defined feature catalog. Per-server feature state is at `server.features`.
188
+ */
189
+ features;
190
+ /**
191
+ * Read panel-wide activity logs.
192
+ *
193
+ * @example
194
+ * ```ts ignore
195
+ * const { data } = await api.logs.activities({ type: 'server.power.start' });
196
+ * ```
197
+ */
198
+ logs;
162
199
  constructor(options) {
163
200
  if (!options?.url) {
164
201
  throw new Error('MeowPanelApi requires a "url" option (e.g. "https://panel.example.com").');
@@ -172,12 +209,16 @@ export class MeowPanelApi {
172
209
  this.auth = new AuthResource(this.http);
173
210
  this.account = new AccountResource(this.http);
174
211
  this.apiKeys = new ApiKeysNamespace(this.http);
175
- this.members = new MembersNamespace(this.http);
212
+ this.users = new UsersNamespace(this.http);
213
+ this.roles = new RolesNamespace(this.http);
214
+ this.systems = new SystemsNamespace(this.http);
176
215
  this.nodes = new NodesNamespace(this.http);
177
216
  this.eggs = new EggsNamespace(this.http);
178
217
  this.hosts = new HostsNamespace(this.http);
179
218
  this.serverGroups = new ServerGroupsNamespace(this.http);
180
219
  this.servers = new ServersNamespace(this.http);
220
+ this.features = new FeaturesResource(this.http);
221
+ this.logs = new LogsResource(this.http);
181
222
  }
182
223
  /**
183
224
  * Update the bearer token used for all subsequent API requests.
@@ -196,7 +237,7 @@ export class MeowPanelApi {
196
237
  * Create a panel-level Server-Sent Events connection to Nexus.
197
238
  *
198
239
  * The panel SSE stream (`GET /v1/sse`) broadcasts events for mutations
199
- * across the panel (e.g. server updates, member changes).
240
+ * across the panel (e.g. server updates, user changes).
200
241
  *
201
242
  * The connection is not opened until you call `.connect()` on the returned object.
202
243
  *
package/esm/src/http.d.ts CHANGED
@@ -105,12 +105,12 @@ export declare class HttpClient {
105
105
  */
106
106
  patch<T = void>(path: string, body?: unknown, opts?: RequestOptions): Promise<T>;
107
107
  /**
108
- * DELETE a resource.
108
+ * DELETE a resource. Returns `undefined` for `204 No Content`, otherwise the parsed body.
109
109
  *
110
110
  * @param path Path relative to the API base URL.
111
111
  * @param opts Additional request options.
112
112
  */
113
- delete(path: string, opts?: RequestOptions): Promise<void>;
113
+ delete<T = void>(path: string, opts?: RequestOptions): Promise<T>;
114
114
  /**
115
115
  * PUT raw body content (e.g. for binary or multipart uploads).
116
116
  *
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/src/http.ts"],"names":[],"mappings":"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"}
package/esm/src/http.js CHANGED
@@ -185,13 +185,16 @@ export class HttpClient {
185
185
  return res.json();
186
186
  }
187
187
  /**
188
- * DELETE a resource.
188
+ * DELETE a resource. Returns `undefined` for `204 No Content`, otherwise the parsed body.
189
189
  *
190
190
  * @param path Path relative to the API base URL.
191
191
  * @param opts Additional request options.
192
192
  */
193
193
  async delete(path, opts = {}) {
194
- await this.fetch(path, { method: 'DELETE', signal: opts.signal }, opts.params);
194
+ const res = await this.fetch(path, { method: 'DELETE', signal: opts.signal }, opts.params);
195
+ if (res.status === 204)
196
+ return undefined;
197
+ return res.json();
195
198
  }
196
199
  /**
197
200
  * PUT raw body content (e.g. for binary or multipart uploads).
@@ -2,7 +2,7 @@ import { TypedEmitter } from './emitter.js';
2
2
  import type { HttpClient } from './http.js';
3
3
  import type { NanoID } from './types.js';
4
4
  /**
5
- * Base class for all resource namespaces (e.g. `api.servers`, `api.members`).
5
+ * Base class for all resource namespaces (e.g. `api.servers`, `api.users`).
6
6
  *
7
7
  * Provides:
8
8
  * - A **readable store** so reactive consumers can auto-subscribe with `$api.servers`, etc.
@@ -1,6 +1,6 @@
1
1
  import { TypedEmitter } from './emitter.js';
2
2
  /**
3
- * Base class for all resource namespaces (e.g. `api.servers`, `api.members`).
3
+ * Base class for all resource namespaces (e.g. `api.servers`, `api.users`).
4
4
  *
5
5
  * Provides:
6
6
  * - A **readable store** so reactive consumers can auto-subscribe with `$api.servers`, etc.
@@ -1,32 +1,41 @@
1
1
  import type { HttpClient } from '../http.js';
2
2
  import { ReactiveResource } from '../reactive.js';
3
- import type { IncludeOptions, ISODate, NanoID } from '../types.js';
4
- /** Shared fields present on all account responses. @internal */
3
+ import type { IncludeOptions, ISODate, NanoID, Paginated } from '../types.js';
4
+ import type { UiTheme, UserPreferences, UserPreferencesData } from './users.js';
5
+ import { type ActivityFeedOptions, type ActivityLog } from './servers/activity.js';
6
+ import { type RequestLog, type RequestLogFeedOptions } from './request-logs.js';
7
+ /**
8
+ * Shared issuer-envelope fields present on all account responses.
9
+ *
10
+ * `id` is the namespaced `"<type>:<id>"` form and `ref_id` holds the bare id.
11
+ * @internal
12
+ */
5
13
  interface AccountDataBase {
6
14
  id: string;
7
- issuer_type: string;
15
+ type: string;
16
+ ref_id: string;
8
17
  permissions?: string[];
9
18
  created_at: ISODate;
10
19
  updated_at: ISODate;
11
20
  }
12
21
  /** Raw API shape for a user account. @internal */
13
22
  interface UserAccountData extends AccountDataBase {
14
- issuer_type: 'user';
23
+ type: 'user';
15
24
  email: string;
25
+ email_verified_at: ISODate | null;
16
26
  nickname: string | null;
17
27
  avatar_uri: string | null;
18
- display?: {
19
- language: string | null;
20
- theme: string | null;
21
- } | null;
28
+ disabled_at: ISODate | null;
29
+ preferences?: UserPreferencesData | null;
22
30
  }
23
31
  /** Raw API shape for an API key account. @internal */
24
32
  interface ApiKeyAccountData extends AccountDataBase {
25
- issuer_type: 'api_key';
33
+ type: 'api_key';
26
34
  name: string;
27
35
  description: string | null;
28
36
  owner_id: string;
29
37
  owner?: UserAccountData;
38
+ revoked_at: ISODate | null;
30
39
  }
31
40
  type AccountData = UserAccountData | ApiKeyAccountData;
32
41
  /**
@@ -52,16 +61,17 @@ export declare abstract class Account extends ReactiveResource {
52
61
  export declare class UserAccount extends Account {
53
62
  readonly issuerType: "user";
54
63
  email: string;
64
+ /** When this user verified their email, or `null` if unverified. */
65
+ emailVerifiedAt: Date | null;
55
66
  nickname: string | null;
56
67
  avatarUri: string | null;
68
+ /** When this account was disabled, or `null` if active. */
69
+ disabledAt: Date | null;
57
70
  /**
58
- * Display preferences. Populated with `include=display`.
59
- * Requires `member.display.read` permission or being the account owner.
71
+ * Display and locale preferences. Populated with `include=preferences`.
72
+ * Requires `user.preferences.read` permission or being the account owner.
60
73
  */
61
- display: {
62
- language: string | null;
63
- theme: string | null;
64
- } | undefined;
74
+ preferences: UserPreferences | undefined;
65
75
  /** @internal */
66
76
  constructor(data: UserAccountData, http: HttpClient);
67
77
  /** Update this user account in place. */
@@ -74,9 +84,14 @@ export declare class ApiKeyAccount extends Account {
74
84
  readonly issuerType: "api_key";
75
85
  name: string;
76
86
  description: string | null;
87
+ /** The owner's bare NanoID (parsed from the namespaced `owner_id`). */
77
88
  readonly ownerId: NanoID;
78
- /** The owner user. */
89
+ /** The owner's issuer type, e.g. `'user'` or `'system'`. */
90
+ readonly ownerType: string;
91
+ /** The owner. Requires `?include=owner`. */
79
92
  owner: UserAccount | undefined;
93
+ /** When this key was revoked, or `null` if active. */
94
+ revokedAt: Date | null;
80
95
  /** @internal */
81
96
  constructor(data: ApiKeyAccountData, http: HttpClient);
82
97
  }
@@ -133,13 +148,13 @@ export declare class AccountSshKeysManager {
133
148
  delete(id: NanoID): Promise<void>;
134
149
  }
135
150
  /** Valid include keys for the account endpoint. */
136
- export type AccountInclude = 'display' | 'permissions';
151
+ export type AccountInclude = 'preferences' | 'permissions';
137
152
  /** Fields that can be updated on a user account. */
138
153
  export interface UpdateAccountPayload {
139
154
  nickname?: string;
140
- display?: {
155
+ preferences?: {
156
+ theme?: UiTheme;
141
157
  language?: string | null;
142
- theme?: string | null;
143
158
  };
144
159
  }
145
160
  /**
@@ -172,6 +187,22 @@ export declare class AccountResource {
172
187
  fetchAvatar(): Promise<Blob>;
173
188
  /** Fetch the permission scopes available to the current account. */
174
189
  scopes(): Promise<string[]>;
190
+ /**
191
+ * Fetch the current account's activity feed (actions performed on this account).
192
+ *
193
+ * Only user accounts have an activity feed.
194
+ *
195
+ * @param opts Pagination and filter options.
196
+ */
197
+ activities(opts?: ActivityFeedOptions): Promise<Paginated<ActivityLog>>;
198
+ /**
199
+ * Fetch the current account's own HTTP request log.
200
+ *
201
+ * Scoped to the caller; no permission beyond being that account is required.
202
+ *
203
+ * @param opts Pagination, filters, and includes.
204
+ */
205
+ requestLogs(opts?: RequestLogFeedOptions): Promise<Paginated<RequestLog>>;
175
206
  /** Manage SSH public keys on the current user account. */
176
207
  get sshKeys(): AccountSshKeysManager;
177
208
  }