@leaflow/sdk 0.185.0 → 0.187.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 (286) hide show
  1. package/README.md +15 -0
  2. package/dist/canopy/v1/generated/models.d.ts +100 -20
  3. package/dist/canopy/v1/generated/validators/aPIKeyUsageListResponseBody.zod.d.ts +5 -5
  4. package/dist/canopy/v1/generated/validators/aPIKeyUsageResource.zod.d.ts +5 -5
  5. package/dist/canopy/v1/generated/validators/aPIKeyUsageResource.zod.js +5 -5
  6. package/dist/canopy/v1/generated/validators/modelUsageListResponseBody.zod.d.ts +5 -5
  7. package/dist/canopy/v1/generated/validators/modelUsageResource.zod.d.ts +5 -5
  8. package/dist/canopy/v1/generated/validators/modelUsageResource.zod.js +5 -5
  9. package/dist/canopy/v1/generated/validators/totalsResource.zod.d.ts +5 -5
  10. package/dist/canopy/v1/generated/validators/totalsResource.zod.js +5 -5
  11. package/dist/canopy/v1/generated/validators/usageBucketResource.zod.d.ts +5 -5
  12. package/dist/canopy/v1/generated/validators/usageBucketResource.zod.js +5 -5
  13. package/dist/canopy/v1/generated/validators/usageTimelineResponseBody.zod.d.ts +5 -5
  14. package/dist/fleet/v1/generated/functions.d.ts +1710 -0
  15. package/dist/fleet/v1/generated/functions.js +1655 -0
  16. package/dist/fleet/v1/generated/models.d.ts +1534 -0
  17. package/dist/fleet/v1/generated/models.js +97 -0
  18. package/dist/fleet/v1/generated/schemas.zod.d.ts +1172 -0
  19. package/dist/fleet/v1/generated/schemas.zod.js +1291 -0
  20. package/dist/fleet/v1/generated/validators/accountList.zod.d.ts +250 -0
  21. package/dist/fleet/v1/generated/validators/accountList.zod.js +234 -0
  22. package/dist/fleet/v1/generated/validators/accountResource.zod.d.ts +244 -0
  23. package/dist/fleet/v1/generated/validators/accountResource.zod.js +242 -0
  24. package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.d.ts +232 -0
  25. package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.js +234 -0
  26. package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.d.ts +234 -0
  27. package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.js +240 -0
  28. package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.d.ts +231 -0
  29. package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.js +231 -0
  30. package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.d.ts +231 -0
  31. package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.js +229 -0
  32. package/dist/fleet/v1/generated/validators/createGroupRequest.zod.d.ts +231 -0
  33. package/dist/fleet/v1/generated/validators/createGroupRequest.zod.js +230 -0
  34. package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.d.ts +236 -0
  35. package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.js +243 -0
  36. package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.d.ts +247 -0
  37. package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.js +233 -0
  38. package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.d.ts +248 -0
  39. package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.js +261 -0
  40. package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.d.ts +277 -0
  41. package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.js +241 -0
  42. package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.d.ts +236 -0
  43. package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.js +238 -0
  44. package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.d.ts +232 -0
  45. package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.js +233 -0
  46. package/dist/fleet/v1/generated/validators/createSessionRequest.zod.d.ts +240 -0
  47. package/dist/fleet/v1/generated/validators/createSessionRequest.zod.js +231 -0
  48. package/dist/fleet/v1/generated/validators/cursorPagination.zod.d.ts +232 -0
  49. package/dist/fleet/v1/generated/validators/cursorPagination.zod.js +232 -0
  50. package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.d.ts +232 -0
  51. package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.js +230 -0
  52. package/dist/fleet/v1/generated/validators/desktopOptions.zod.d.ts +242 -0
  53. package/dist/fleet/v1/generated/validators/desktopOptions.zod.js +254 -0
  54. package/dist/fleet/v1/generated/validators/desktopState.zod.d.ts +235 -0
  55. package/dist/fleet/v1/generated/validators/desktopState.zod.js +231 -0
  56. package/dist/fleet/v1/generated/validators/directoryName.zod.d.ts +231 -0
  57. package/dist/fleet/v1/generated/validators/directoryName.zod.js +234 -0
  58. package/dist/fleet/v1/generated/validators/enrollmentResource.zod.d.ts +243 -0
  59. package/dist/fleet/v1/generated/validators/enrollmentResource.zod.js +241 -0
  60. package/dist/fleet/v1/generated/validators/enrollmentState.zod.d.ts +233 -0
  61. package/dist/fleet/v1/generated/validators/enrollmentState.zod.js +229 -0
  62. package/dist/fleet/v1/generated/validators/error.zod.d.ts +243 -0
  63. package/dist/fleet/v1/generated/validators/error.zod.js +232 -0
  64. package/dist/fleet/v1/generated/validators/errorStatus.zod.d.ts +241 -0
  65. package/dist/fleet/v1/generated/validators/errorStatus.zod.js +256 -0
  66. package/dist/fleet/v1/generated/validators/featureState.zod.d.ts +232 -0
  67. package/dist/fleet/v1/generated/validators/featureState.zod.js +229 -0
  68. package/dist/fleet/v1/generated/validators/fieldViolation.zod.d.ts +232 -0
  69. package/dist/fleet/v1/generated/validators/fieldViolation.zod.js +235 -0
  70. package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.d.ts +232 -0
  71. package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.js +230 -0
  72. package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.d.ts +245 -0
  73. package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.js +232 -0
  74. package/dist/fleet/v1/generated/validators/groupList.zod.d.ts +242 -0
  75. package/dist/fleet/v1/generated/validators/groupList.zod.js +234 -0
  76. package/dist/fleet/v1/generated/validators/groupResource.zod.d.ts +237 -0
  77. package/dist/fleet/v1/generated/validators/groupResource.zod.js +235 -0
  78. package/dist/fleet/v1/generated/validators/iceCandidate.zod.d.ts +234 -0
  79. package/dist/fleet/v1/generated/validators/iceCandidate.zod.js +241 -0
  80. package/dist/fleet/v1/generated/validators/iceServer.zod.d.ts +233 -0
  81. package/dist/fleet/v1/generated/validators/iceServer.zod.js +236 -0
  82. package/dist/fleet/v1/generated/validators/listAccountsParams.zod.d.ts +239 -0
  83. package/dist/fleet/v1/generated/validators/listAccountsParams.zod.js +241 -0
  84. package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.d.ts +236 -0
  85. package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.js +242 -0
  86. package/dist/fleet/v1/generated/validators/listGroupsParams.zod.d.ts +236 -0
  87. package/dist/fleet/v1/generated/validators/listGroupsParams.zod.js +238 -0
  88. package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.d.ts +240 -0
  89. package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.js +244 -0
  90. package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.d.ts +236 -0
  91. package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.js +242 -0
  92. package/dist/fleet/v1/generated/validators/listMachinesParams.zod.d.ts +238 -0
  93. package/dist/fleet/v1/generated/validators/listMachinesParams.zod.js +240 -0
  94. package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.d.ts +239 -0
  95. package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.js +241 -0
  96. package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.d.ts +236 -0
  97. package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.js +242 -0
  98. package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.d.ts +244 -0
  99. package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.js +245 -0
  100. package/dist/fleet/v1/generated/validators/listSessionsParams.zod.d.ts +240 -0
  101. package/dist/fleet/v1/generated/validators/listSessionsParams.zod.js +242 -0
  102. package/dist/fleet/v1/generated/validators/machineEventList.zod.d.ts +244 -0
  103. package/dist/fleet/v1/generated/validators/machineEventList.zod.js +234 -0
  104. package/dist/fleet/v1/generated/validators/machineEventResource.zod.d.ts +238 -0
  105. package/dist/fleet/v1/generated/validators/machineEventResource.zod.js +238 -0
  106. package/dist/fleet/v1/generated/validators/machineEventType.zod.d.ts +232 -0
  107. package/dist/fleet/v1/generated/validators/machineEventType.zod.js +229 -0
  108. package/dist/fleet/v1/generated/validators/machineFeature.zod.d.ts +237 -0
  109. package/dist/fleet/v1/generated/validators/machineFeature.zod.js +239 -0
  110. package/dist/fleet/v1/generated/validators/machineList.zod.d.ts +261 -0
  111. package/dist/fleet/v1/generated/validators/machineList.zod.js +234 -0
  112. package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.d.ts +250 -0
  113. package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.js +234 -0
  114. package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.d.ts +244 -0
  115. package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.js +249 -0
  116. package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.d.ts +234 -0
  117. package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.js +229 -0
  118. package/dist/fleet/v1/generated/validators/machineResource.zod.d.ts +256 -0
  119. package/dist/fleet/v1/generated/validators/machineResource.zod.js +257 -0
  120. package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.d.ts +240 -0
  121. package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.js +246 -0
  122. package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.d.ts +279 -0
  123. package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.js +232 -0
  124. package/dist/fleet/v1/generated/validators/mcpImplementation.zod.d.ts +233 -0
  125. package/dist/fleet/v1/generated/validators/mcpImplementation.zod.js +231 -0
  126. package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.d.ts +237 -0
  127. package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.js +237 -0
  128. package/dist/fleet/v1/generated/validators/mcpServerResource.zod.d.ts +265 -0
  129. package/dist/fleet/v1/generated/validators/mcpServerResource.zod.js +256 -0
  130. package/dist/fleet/v1/generated/validators/mcpToolList.zod.d.ts +252 -0
  131. package/dist/fleet/v1/generated/validators/mcpToolList.zod.js +235 -0
  132. package/dist/fleet/v1/generated/validators/mcpToolResource.zod.d.ts +237 -0
  133. package/dist/fleet/v1/generated/validators/mcpToolResource.zod.js +243 -0
  134. package/dist/fleet/v1/generated/validators/mcpTransport.zod.d.ts +233 -0
  135. package/dist/fleet/v1/generated/validators/mcpTransport.zod.js +229 -0
  136. package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.d.ts +240 -0
  137. package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.js +231 -0
  138. package/dist/fleet/v1/generated/validators/migrationStep.zod.d.ts +232 -0
  139. package/dist/fleet/v1/generated/validators/migrationStep.zod.js +233 -0
  140. package/dist/fleet/v1/generated/validators/namedIdentity.zod.d.ts +233 -0
  141. package/dist/fleet/v1/generated/validators/namedIdentity.zod.js +233 -0
  142. package/dist/fleet/v1/generated/validators/offsetPagination.zod.d.ts +234 -0
  143. package/dist/fleet/v1/generated/validators/offsetPagination.zod.js +234 -0
  144. package/dist/fleet/v1/generated/validators/operatingSystem.zod.d.ts +233 -0
  145. package/dist/fleet/v1/generated/validators/operatingSystem.zod.js +233 -0
  146. package/dist/fleet/v1/generated/validators/participantList.zod.d.ts +242 -0
  147. package/dist/fleet/v1/generated/validators/participantList.zod.js +230 -0
  148. package/dist/fleet/v1/generated/validators/participantResource.zod.d.ts +240 -0
  149. package/dist/fleet/v1/generated/validators/participantResource.zod.js +242 -0
  150. package/dist/fleet/v1/generated/validators/peerConnection.zod.d.ts +241 -0
  151. package/dist/fleet/v1/generated/validators/peerConnection.zod.js +242 -0
  152. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.d.ts +241 -0
  153. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.js +234 -0
  154. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.d.ts +235 -0
  155. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.js +236 -0
  156. package/dist/fleet/v1/generated/validators/privilegeDecider.zod.d.ts +232 -0
  157. package/dist/fleet/v1/generated/validators/privilegeDecider.zod.js +229 -0
  158. package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.d.ts +258 -0
  159. package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.js +234 -0
  160. package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.d.ts +253 -0
  161. package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.js +255 -0
  162. package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.d.ts +235 -0
  163. package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.js +229 -0
  164. package/dist/fleet/v1/generated/validators/publicKey.zod.d.ts +230 -0
  165. package/dist/fleet/v1/generated/validators/publicKey.zod.js +231 -0
  166. package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.d.ts +236 -0
  167. package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.js +235 -0
  168. package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.d.ts +257 -0
  169. package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.js +238 -0
  170. package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.d.ts +233 -0
  171. package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.js +237 -0
  172. package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.d.ts +240 -0
  173. package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.js +236 -0
  174. package/dist/fleet/v1/generated/validators/runCommandRequest.zod.d.ts +235 -0
  175. package/dist/fleet/v1/generated/validators/runCommandRequest.zod.js +242 -0
  176. package/dist/fleet/v1/generated/validators/runCommandResponse.zod.d.ts +237 -0
  177. package/dist/fleet/v1/generated/validators/runCommandResponse.zod.js +245 -0
  178. package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.d.ts +234 -0
  179. package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.js +239 -0
  180. package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.d.ts +231 -0
  181. package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.js +231 -0
  182. package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.d.ts +242 -0
  183. package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.js +242 -0
  184. package/dist/fleet/v1/generated/validators/sessionList.zod.d.ts +274 -0
  185. package/dist/fleet/v1/generated/validators/sessionList.zod.js +234 -0
  186. package/dist/fleet/v1/generated/validators/sessionMode.zod.d.ts +232 -0
  187. package/dist/fleet/v1/generated/validators/sessionMode.zod.js +229 -0
  188. package/dist/fleet/v1/generated/validators/sessionResource.zod.d.ts +268 -0
  189. package/dist/fleet/v1/generated/validators/sessionResource.zod.js +254 -0
  190. package/dist/fleet/v1/generated/validators/sessionState.zod.d.ts +234 -0
  191. package/dist/fleet/v1/generated/validators/sessionState.zod.js +229 -0
  192. package/dist/fleet/v1/generated/validators/signedMessage.zod.d.ts +233 -0
  193. package/dist/fleet/v1/generated/validators/signedMessage.zod.js +235 -0
  194. package/dist/fleet/v1/generated/validators/signingKey.zod.d.ts +232 -0
  195. package/dist/fleet/v1/generated/validators/signingKey.zod.js +233 -0
  196. package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.d.ts +235 -0
  197. package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.js +240 -0
  198. package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.d.ts +231 -0
  199. package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.js +230 -0
  200. package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.d.ts +232 -0
  201. package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.js +230 -0
  202. package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.d.ts +254 -0
  203. package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.js +282 -0
  204. package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.d.ts +279 -0
  205. package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.js +232 -0
  206. package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.d.ts +231 -0
  207. package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.js +232 -0
  208. package/dist/fleet/v1/index.d.ts +3 -0
  209. package/dist/fleet/v1/index.js +3 -0
  210. package/dist/index.d.ts +1 -0
  211. package/dist/index.js +1 -0
  212. package/dist/proto/google/rpc/status_pb.d.ts +48 -0
  213. package/dist/proto/google/rpc/status_pb.js +24 -0
  214. package/dist/proto/leaflow/fleet/audio/v1/audio_pb.d.ts +262 -0
  215. package/dist/proto/leaflow/fleet/audio/v1/audio_pb.js +51 -0
  216. package/dist/proto/leaflow/fleet/camera/v1/camera_pb.d.ts +265 -0
  217. package/dist/proto/leaflow/fleet/camera/v1/camera_pb.js +70 -0
  218. package/dist/proto/leaflow/fleet/command/v1/command_pb.d.ts +158 -0
  219. package/dist/proto/leaflow/fleet/command/v1/command_pb.js +25 -0
  220. package/dist/proto/leaflow/fleet/control/v1/control_pb.d.ts +1226 -0
  221. package/dist/proto/leaflow/fleet/control/v1/control_pb.js +354 -0
  222. package/dist/proto/leaflow/fleet/device/v1/device_pb.d.ts +422 -0
  223. package/dist/proto/leaflow/fleet/device/v1/device_pb.js +183 -0
  224. package/dist/proto/leaflow/fleet/directory/v1/directory_pb.d.ts +429 -0
  225. package/dist/proto/leaflow/fleet/directory/v1/directory_pb.js +78 -0
  226. package/dist/proto/leaflow/fleet/exec/v1/exec_pb.d.ts +287 -0
  227. package/dist/proto/leaflow/fleet/exec/v1/exec_pb.js +78 -0
  228. package/dist/proto/leaflow/fleet/filetransfer/v1/filetransfer_pb.d.ts +731 -0
  229. package/dist/proto/leaflow/fleet/filetransfer/v1/filetransfer_pb.js +163 -0
  230. package/dist/proto/leaflow/fleet/gamepad/v1/gamepad_pb.d.ts +347 -0
  231. package/dist/proto/leaflow/fleet/gamepad/v1/gamepad_pb.js +124 -0
  232. package/dist/proto/leaflow/fleet/host/v1/host_pb.d.ts +619 -0
  233. package/dist/proto/leaflow/fleet/host/v1/host_pb.js +206 -0
  234. package/dist/proto/leaflow/fleet/logs/v1/logs_pb.d.ts +293 -0
  235. package/dist/proto/leaflow/fleet/logs/v1/logs_pb.js +90 -0
  236. package/dist/proto/leaflow/fleet/machine/v1/machine_pb.d.ts +448 -0
  237. package/dist/proto/leaflow/fleet/machine/v1/machine_pb.js +157 -0
  238. package/dist/proto/leaflow/fleet/mcp/v1/mcp_pb.d.ts +891 -0
  239. package/dist/proto/leaflow/fleet/mcp/v1/mcp_pb.js +306 -0
  240. package/dist/proto/leaflow/fleet/portforward/v1/portforward_pb.d.ts +688 -0
  241. package/dist/proto/leaflow/fleet/portforward/v1/portforward_pb.js +209 -0
  242. package/dist/proto/leaflow/fleet/printing/v1/printing_pb.d.ts +741 -0
  243. package/dist/proto/leaflow/fleet/printing/v1/printing_pb.js +260 -0
  244. package/dist/proto/leaflow/fleet/privilege/v1/privilege_pb.d.ts +569 -0
  245. package/dist/proto/leaflow/fleet/privilege/v1/privilege_pb.js +168 -0
  246. package/dist/proto/leaflow/fleet/rpc/v1/rpc_pb.d.ts +234 -0
  247. package/dist/proto/leaflow/fleet/rpc/v1/rpc_pb.js +70 -0
  248. package/dist/proto/leaflow/fleet/session/v1/session_pb.d.ts +411 -0
  249. package/dist/proto/leaflow/fleet/session/v1/session_pb.js +130 -0
  250. package/dist/proto/leaflow/fleet/sshagent/v1/sshagent_pb.d.ts +163 -0
  251. package/dist/proto/leaflow/fleet/sshagent/v1/sshagent_pb.js +64 -0
  252. package/dist/proto/leaflow/fleet/terminal/v1/terminal_pb.d.ts +297 -0
  253. package/dist/proto/leaflow/fleet/terminal/v1/terminal_pb.js +54 -0
  254. package/dist/proto/leaflow/fleet/transport/v1/transport_pb.d.ts +1055 -0
  255. package/dist/proto/leaflow/fleet/transport/v1/transport_pb.js +251 -0
  256. package/dist/proto/leaflow/fleet/virtualdesktop/accessibility/v1/accessibility_pb.d.ts +1298 -0
  257. package/dist/proto/leaflow/fleet/virtualdesktop/accessibility/v1/accessibility_pb.js +437 -0
  258. package/dist/proto/leaflow/fleet/virtualdesktop/application/v1/application_pb.d.ts +888 -0
  259. package/dist/proto/leaflow/fleet/virtualdesktop/application/v1/application_pb.js +210 -0
  260. package/dist/proto/leaflow/fleet/virtualdesktop/capture/v1/capture_pb.d.ts +231 -0
  261. package/dist/proto/leaflow/fleet/virtualdesktop/capture/v1/capture_pb.js +63 -0
  262. package/dist/proto/leaflow/fleet/virtualdesktop/change/v1/change_pb.d.ts +965 -0
  263. package/dist/proto/leaflow/fleet/virtualdesktop/change/v1/change_pb.js +239 -0
  264. package/dist/proto/leaflow/fleet/virtualdesktop/cursor/v1/cursor_pb.d.ts +201 -0
  265. package/dist/proto/leaflow/fleet/virtualdesktop/cursor/v1/cursor_pb.js +34 -0
  266. package/dist/proto/leaflow/fleet/virtualdesktop/datatransfer/v1/datatransfer_pb.d.ts +1489 -0
  267. package/dist/proto/leaflow/fleet/virtualdesktop/datatransfer/v1/datatransfer_pb.js +256 -0
  268. package/dist/proto/leaflow/fleet/virtualdesktop/display/v1/display_pb.d.ts +380 -0
  269. package/dist/proto/leaflow/fleet/virtualdesktop/display/v1/display_pb.js +89 -0
  270. package/dist/proto/leaflow/fleet/virtualdesktop/draw/v1/draw_pb.d.ts +587 -0
  271. package/dist/proto/leaflow/fleet/virtualdesktop/draw/v1/draw_pb.js +139 -0
  272. package/dist/proto/leaflow/fleet/virtualdesktop/host/v1/host_pb.d.ts +69 -0
  273. package/dist/proto/leaflow/fleet/virtualdesktop/host/v1/host_pb.js +19 -0
  274. package/dist/proto/leaflow/fleet/virtualdesktop/input/v1/input_pb.d.ts +1463 -0
  275. package/dist/proto/leaflow/fleet/virtualdesktop/input/v1/input_pb.js +321 -0
  276. package/dist/proto/leaflow/fleet/virtualdesktop/lease/v1/lease_pb.d.ts +93 -0
  277. package/dist/proto/leaflow/fleet/virtualdesktop/lease/v1/lease_pb.js +24 -0
  278. package/dist/proto/leaflow/fleet/virtualdesktop/notification/v1/notification_pb.d.ts +414 -0
  279. package/dist/proto/leaflow/fleet/virtualdesktop/notification/v1/notification_pb.js +137 -0
  280. package/dist/proto/leaflow/fleet/virtualdesktop/tray/v1/tray_pb.d.ts +928 -0
  281. package/dist/proto/leaflow/fleet/virtualdesktop/tray/v1/tray_pb.js +413 -0
  282. package/dist/proto/leaflow/fleet/virtualdesktop/window/v1/window_pb.d.ts +1559 -0
  283. package/dist/proto/leaflow/fleet/virtualdesktop/window/v1/window_pb.js +664 -0
  284. package/dist/routes.d.ts +440 -0
  285. package/dist/routes.js +495 -0
  286. package/package.json +11 -3
@@ -0,0 +1,1172 @@
1
+ /**
2
+ * Generated by orval 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Fleet API
5
+ * Machines that run the Leaflow Fleet Agent (`leaflow-fleet-agent`): adding machines, the
6
+ * accounts and groups that log in to them, running commands, opening and closing sessions, with
7
+ * or without a desktop, and admitting participants to them.
8
+ *
9
+ * ## What this API sees
10
+ *
11
+ * This API coordinates. It admits participants to sessions and passes the signaling of their
12
+ * PeerConnections, but everything a session shows or receives — terminals, files, the screen,
13
+ * input, the clipboard, printing and privilege approvals on a participant — travels end to end
14
+ * between the participant and the session, encrypted with keys that never leave them. The
15
+ * platform sees which machine, which session and who is connected, and nothing of what happens
16
+ * inside.
17
+ *
18
+ * Commands and privilege requests decided on the platform are the exception: the platform passes
19
+ * a command and its output between the caller and the machine, and keeps the command line of a
20
+ * privilege request it asks the owner about; it sees both.
21
+ *
22
+ * ## Authentication
23
+ *
24
+ * Every request carries a scoped token; see the `bearerAuth` security scheme.
25
+ *
26
+ * **Neither the path nor the headers carry a `project_id`**: the current project is determined by
27
+ * the token.
28
+ *
29
+ * ## Adding a machine
30
+ *
31
+ * 1. Install the Agent and run `leaflow-fleet-agent daemon enroll` on the machine. The command
32
+ * carries no secret. The machine shows a pairing code such as `7K2QM-9XWTD`.
33
+ * 2. Find the request with `GET /api/v1/enrollments:find?pairing_code=…`. Compare its `hostname`
34
+ * and `source_address` with the machine in front of you: the pairing code is not a secret,
35
+ * and anyone can request enrollment.
36
+ * 3. Approve it with `POST /api/v1/enrollments/{enrollmentId}:approve`. The machine joins the
37
+ * current project within its next polling interval.
38
+ *
39
+ * ## Adding a machine without interaction
40
+ *
41
+ * A machine that is set up unattended, such as by cloud-init on first boot, joins with a
42
+ * registration token instead of a pairing code:
43
+ *
44
+ * 1. Create a registration with `POST /api/v1/machine-registrations`. It reserves a machine in
45
+ * the current project under the given name and returns its `machine_id` and a `token`. The
46
+ * token is returned only in this response.
47
+ * 2. Give the token to the machine in a file that only root can read, and run
48
+ * `leaflow-fleet-agent daemon enroll --url <control endpoint> --token-file <path>`. The
49
+ * machine joins the current project as `machine_id` at once, and the Agent deletes the file.
50
+ *
51
+ * A token enrolls one machine once, and only until the registration expires. Anyone who reads
52
+ * the token before the machine uses it can enroll a key of their own instead, so pass it only
53
+ * to the machine, keep its lifetime short, and compare the `public_key` of the used
54
+ * registration with the key the machine shows when that matters. Revoke a registration that
55
+ * will not be used with `DELETE /api/v1/machine-registrations/{registrationId}`.
56
+ *
57
+ * ## Trusting a machine's key
58
+ *
59
+ * Each machine has an Ed25519 key that it generates itself and that never leaves it. Participants
60
+ * verify that key end to end before they exchange any data with a session, so a client must
61
+ * decide which key belongs to a machine without relying on any party in between:
62
+ *
63
+ * - When approving an enrollment, recompute the pairing code from `public_key` and compare it
64
+ * with the code the machine shows. The code is derived as documented for
65
+ * `EnrollMachineResponse.pairing_code` in `leaflow/fleet/machine/v1/machine.proto`.
66
+ * Approve only when they match, and remember the key for the machine.
67
+ * - On any other client, remember the key the first time it connects to the machine, and
68
+ * refuse to continue whenever the machine later proves a different key. The fingerprint can
69
+ * be compared with the one the Agent prints on the machine.
70
+ *
71
+ * A machine that is reinstalled enrolls again as a new machine with a new key.
72
+ *
73
+ * ## Features
74
+ *
75
+ * A machine reports what it offers in `features`, each named after the protocol package that
76
+ * defines it:
77
+ *
78
+ * - `leaflow.fleet.directory.v1`: the accounts of the project's members and the project's groups
79
+ * exist on the machine; members log in over SSH with their keys and become root through sudo
80
+ * as their permissions allow;
81
+ * - `leaflow.fleet.command.v1`: running commands;
82
+ * - `leaflow.fleet.mcp.v1`: the MCP servers each account configures on the machine, local ones
83
+ * and remote ones it connects to;
84
+ * - `leaflow.fleet.host.v1`: terminal sessions, with programs, files, ports, sound, devices,
85
+ * printers and privilege approvals;
86
+ * - `leaflow.fleet.virtualdesktop.host.v1`: sessions with a desktop.
87
+ *
88
+ * A machine installed without a desktop does not offer `leaflow.fleet.virtualdesktop.host.v1`. A
89
+ * request that needs a feature the machine does not report available fails with
90
+ * `FEATURE_UNAVAILABLE`, whose `metadata.feature` names the feature.
91
+ *
92
+ * ## Directory
93
+ *
94
+ * Every user has one account, as with Google Cloud OS Login: a username and a uid that are the
95
+ * same on every machine of every project. The account is created the first time the user may log
96
+ * in to a machine or opens a session; its username comes from the email address, such as
97
+ * `alice_example_com` for `alice@example.com`, and its owner can change it. A project's machines
98
+ * know the accounts of the project's members and the groups the project defines. A member who
99
+ * leaves the project can no longer log in, and files keep their owner.
100
+ *
101
+ * Who may log in to which machines, and who may become root there through sudo, are permissions
102
+ * of the project's roles: `fleet:machines.login` and `fleet:machines.admin`, each for all
103
+ * machines or for chosen ones. Changes reach the machines within about a minute, and every login
104
+ * and elevation is checked against the current permissions while the machine is connected. To
105
+ * keep a member out of some machines, deny them `fleet:machines.login` on those machines.
106
+ * Elevation through sudo is never approved by a password; see "Approving sudo".
107
+ *
108
+ * Members log in over SSH with the keys they own among the project's SSH keys, while they may
109
+ * log in to the machine.
110
+ *
111
+ * Machines resolve directory accounts and groups themselves and never write them into their local
112
+ * account files. A local account or group that already uses a name or id of the directory keeps
113
+ * it, and the machine records the conflict among its events.
114
+ *
115
+ * ## Running commands
116
+ *
117
+ * `POST /api/v1/machines/{machineId}:runCommand` runs one command line on the machine as the
118
+ * caller's account, as `ssh machine 'command'` would, but without SSH: the machine needs no open
119
+ * port, no distributed key and no address the caller can reach. Like logging in, it requires
120
+ * `fleet:machines.login` on the machine. Inside the command, `sudo` works without a prompt for
121
+ * a caller with `fleet:machines.admin` on the machine: the request approves the elevation.
122
+ *
123
+ * ## MCP servers
124
+ *
125
+ * A machine that offers `leaflow.fleet.mcp.v1` reaches the MCP servers its accounts configure:
126
+ * servers it runs itself and remote servers it connects to. Each account configures them in
127
+ * `~/.local/share/leaflow/agent/mcp.json` in its home directory, in the `mcpServers` format other
128
+ * MCP clients use, by hand or through this API; the machine picks up every change by itself.
129
+ * The caller's servers run as the caller's account, and the requests below act on them only.
130
+ *
131
+ * The configuration stays on the machine. The values of `env` and `headers` often hold
132
+ * credentials: this API writes them, and they then pass through the platform, but never returns
133
+ * them. Arguments, URLs, tool arguments and tool results pass through the platform as they are.
134
+ *
135
+ * ## Approving sudo
136
+ *
137
+ * An account may become root through sudo on a machine while its user has
138
+ * `fleet:machines.admin` there. Each elevation is approved, in the first of these ways that
139
+ * applies:
140
+ *
141
+ * - inside a command run through this API, by the request itself;
142
+ * - at once, while the user has approved their requests on the machine without asking, for a
143
+ * while or until removed (`PUT /api/v1/machines/{machineId}/privilege-auto-approval`);
144
+ * - by the user, on any of their devices, for a request listed by `GET /api/v1/privilege-requests`
145
+ * (`POST …:approve` or `…:deny`), or on a participant of the session the asking process belongs
146
+ * to. A request nobody decides expires, and sudo fails.
147
+ *
148
+ * Requests reach the user's devices as they happen through EventBus: the event
149
+ * `leaflow.fleet.privilege.requested` when one is waiting and `leaflow.fleet.privilege.decided`
150
+ * when it ends, each addressed to the user in the current project and carrying the request's
151
+ * `id`. A client that subscribes to them needs no polling; one that does not can list the
152
+ * pending requests.
153
+ *
154
+ * ## Connections that drop
155
+ *
156
+ * A machine's Agent and a session's process each keep a connection to the service, and on a poor
157
+ * network it may drop and come back within seconds. Requests do not fail for that:
158
+ *
159
+ * - A request that needs the machine or the session's process waits while it connects again,
160
+ * for as long as the request would wait for its answer, and fails with `MACHINE_OFFLINE` or
161
+ * `SESSION_UNAVAILABLE` only when it does not come back in that time.
162
+ * - What the machine or the session's process received before its connection dropped, such as a
163
+ * command or a session being opened, goes on, and its result is returned once it has
164
+ * connected again within that time.
165
+ *
166
+ * A machine stays `online` for up to a minute after its connection was lost, while its Agent
167
+ * connects again; a machine whose Agent stops is offline at once.
168
+ *
169
+ * ## Operations that do not exist
170
+ *
171
+ * Some resources lack an operation on purpose:
172
+ *
173
+ * - Accounts are created when they are first needed and are never deleted, so that files keep
174
+ * their owner.
175
+ * - Enrollment requests are made only by machines.
176
+ * - A machine registration cannot be changed; revoke it and create another.
177
+ * - Machine events are a log: they are listed, never changed, and kept for 30 days.
178
+ * - A privilege request is decided only by the user whose account asks, or on a participant of
179
+ * the session it comes from.
180
+ *
181
+ * ## Joining a session
182
+ *
183
+ * 1. Have an Ed25519 key, for as long as the client wants: one per participant or one kept by
184
+ * the client. The private key must never leave the client; in a browser, use a
185
+ * non-extractable WebCrypto key.
186
+ * 2. Get the ICE servers with `GET /api/v1/sessions/{sessionId}/rtc-configuration`, create a
187
+ * PeerConnection with them and its data channels (`leaflow/fleet/transport/v1/transport.proto`)
188
+ * and make an offer. Wait briefly for ICE candidates, such as until gathering completes or
189
+ * one second has passed, so that the offer carries them.
190
+ * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
191
+ * offer. The answer carries the participant's signed authorization, the keys the service
192
+ * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
193
+ * the signed PeerAuthorization. Pass candidates gathered later with
194
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
195
+ * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
196
+ * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
197
+ * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
198
+ * PeerConnections stop within 30 seconds of their last lease.
199
+ * 5. When a path fails, start another PeerConnection with
200
+ * `POST …/participants/{participantId}/peer-connections` and move the connection to it with
201
+ * `:prepareMigration` and `:commitMigration`. Abandon a PeerConnection that does not
202
+ * connect with `DELETE …/peer-connections/{peerConnectionId}`.
203
+ * 6. Leave with `DELETE …/participants/{participantId}`.
204
+ *
205
+ * Signaling travels only through these requests; a participant holds no other connection to
206
+ * the service.
207
+ *
208
+ * What a participant may do in a session is decided when it is created, from the caller's
209
+ * permissions and what the request asks for, and does not change afterwards. Participants are not
210
+ * told apart by kind: a person in a browser and a program that operates the session are both
211
+ * participants, named by the `client_name` they choose, and either can be disconnected.
212
+ *
213
+ * Every participant that ends, including through `DELETE`, is announced through EventBus as
214
+ * `leaflow.fleet.participant.ended`, addressed to its user in the current project, with its
215
+ * `session_id`, `participant_id` (a decimal string) and `reason`: `left` when its user ended it,
216
+ * `removed` when someone else did, `lease_expired` when it was not renewed in time,
217
+ * `session_ended` when its session ended, `session_process_lost` when the session's process did
218
+ * not come back in time, `permission_revoked` when a permission it was created with was revoked
219
+ * from its user, `membership_ended` when its user is no longer a member of the project,
220
+ * `user_inactive` when its user's account was suspended or banned or its deletion was requested,
221
+ * `project_deletion_requested` when deletion of the project was requested, `machine_removed` when
222
+ * its machine was removed, or `key_revoked` when the key that signed its authorization was
223
+ * revoked. A participant whose creation failed is not announced.
224
+ * OpenAPI spec version: 1.0.0
225
+ */
226
+ import * as zod from "zod";
227
+ /**
228
+ * Returns the machines of the current project, newest first.
229
+ * @summary List machines
230
+ */
231
+ export declare const listMachinesQueryPageDefault = 1;
232
+ export declare const listMachinesQueryPageMax = 2147483647;
233
+ export declare const listMachinesQueryPageSizeDefault = 50;
234
+ export declare const listMachinesQueryPageSizeMax = 200;
235
+ export declare const listMachinesQueryKeywordMax = 128;
236
+ export declare const ListMachinesQueryParams: zod.ZodObject<{
237
+ page: zod.ZodDefault<zod.ZodInt>;
238
+ page_size: zod.ZodDefault<zod.ZodInt>;
239
+ keyword: zod.ZodOptional<zod.ZodString>;
240
+ }, zod.z.core.$strict>;
241
+ /**
242
+ * @summary Get a machine
243
+ */
244
+ export declare const GetMachineParams: zod.ZodObject<{
245
+ machineId: zod.ZodUUID;
246
+ }, zod.z.core.$strict>;
247
+ /**
248
+ * Changes the machine's name. Requires `fleet:machines.manage`.
249
+ * @summary Update a machine
250
+ */
251
+ export declare const UpdateMachineParams: zod.ZodObject<{
252
+ machineId: zod.ZodUUID;
253
+ }, zod.z.core.$strict>;
254
+ export declare const UpdateMachineBody: zod.ZodObject<{
255
+ name: zod.ZodString;
256
+ }, zod.z.core.$strict>;
257
+ /**
258
+ * Removes the machine from the project. Every participant of its sessions is disconnected at
259
+ * once and the Agent is refused from then on; to use the machine again, enroll it again.
260
+ * Sessions still open on the machine can no longer be reached and end according to their own
261
+ * timeouts. Nothing on the machine is deleted.
262
+ *
263
+ * Requires `fleet:machines.manage`.
264
+ * @summary Remove a machine
265
+ */
266
+ export declare const DeleteMachineParams: zod.ZodObject<{
267
+ machineId: zod.ZodUUID;
268
+ }, zod.z.core.$strict>;
269
+ /**
270
+ * Returns what the machine reported about itself, newest first, such as a directory account
271
+ * it does not serve because a local account uses its name. Events are kept for 30 days.
272
+ * @summary List the events of a machine
273
+ */
274
+ export declare const ListMachineEventsParams: zod.ZodObject<{
275
+ machineId: zod.ZodUUID;
276
+ }, zod.z.core.$strict>;
277
+ export declare const listMachineEventsQueryPageDefault = 1;
278
+ export declare const listMachineEventsQueryPageMax = 2147483647;
279
+ export declare const listMachineEventsQueryPageSizeDefault = 50;
280
+ export declare const listMachineEventsQueryPageSizeMax = 200;
281
+ export declare const ListMachineEventsQueryParams: zod.ZodObject<{
282
+ page: zod.ZodDefault<zod.ZodInt>;
283
+ page_size: zod.ZodDefault<zod.ZodInt>;
284
+ type: zod.ZodOptional<zod.ZodEnum<{
285
+ directory_account_conflict: "directory_account_conflict";
286
+ directory_group_conflict: "directory_group_conflict";
287
+ }>>;
288
+ }, zod.z.core.$strict>;
289
+ /**
290
+ * Runs one command line on the machine as the caller's account, with its login shell, and
291
+ * returns once it exited or was killed, with its exit status and what it wrote. Pipes,
292
+ * redirection and `&&` work; there is no terminal and no standard input. The machine admits
293
+ * the account through PAM as for a login. The account is created if the caller has none yet.
294
+ * A command that fails is still a successful request: its exit status is its result.
295
+ *
296
+ * Inside the command, `sudo` works without a prompt while the caller has
297
+ * `fleet:machines.admin` on the machine, and refuses otherwise.
298
+ *
299
+ * The request is held until the command ends, at most `timeout_seconds` and a few seconds
300
+ * more. Neither the command nor its output is hidden from the platform: do not put secrets
301
+ * into either.
302
+ *
303
+ * Requires `fleet:machines.login` on the machine.
304
+ *
305
+ * Fails with:
306
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
307
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer `leaflow.fleet.command.v1`;
308
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
309
+ * the machine refuses the account, as for opening a session;
310
+ * - `COMMAND_START_FAILED` when the shell could not start; nothing ran;
311
+ * - `COMMAND_LOST` when the machine lost the command while it ran. The command may have run
312
+ * in part, and its output is lost;
313
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time. The command may have run.
314
+ * @summary Run a command
315
+ */
316
+ export declare const RunMachineCommandParams: zod.ZodObject<{
317
+ machineId: zod.ZodUUID;
318
+ }, zod.z.core.$strict>;
319
+ export declare const RunMachineCommandBody: zod.ZodObject<{
320
+ command: zod.ZodString;
321
+ timeout_seconds: zod.ZodDefault<zod.ZodInt>;
322
+ }, zod.z.core.$strict>;
323
+ /**
324
+ * Returns the caller's MCP configuration file on the machine and every server in it, with
325
+ * what each is doing now. The values of `env` and `headers` are never returned, only their
326
+ * keys. Requires `fleet:machines.login` on the machine.
327
+ *
328
+ * Fails with:
329
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
330
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer `leaflow.fleet.mcp.v1`;
331
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
332
+ * the machine refuses the account, as for opening a session;
333
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time.
334
+ * @summary Get the caller's MCP configuration on a machine
335
+ */
336
+ export declare const GetMcpConfigurationParams: zod.ZodObject<{
337
+ machineId: zod.ZodUUID;
338
+ }, zod.z.core.$strict>;
339
+ /**
340
+ * Replaces the caller's MCP configuration file on the machine as a whole, also one that cannot
341
+ * be read or is not valid. The machine starts the servers that were added, stops the ones
342
+ * that were removed and restarts the ones that changed when they are next used. The account
343
+ * is created if the caller has none yet. The content, secrets included, passes through the
344
+ * platform. Requires `fleet:machines.login` on the machine.
345
+ *
346
+ * Fails with:
347
+ * - `MCP_CONFIGURATION_CHANGED` when the file is no longer at `expected_revision`;
348
+ * - `MCP_CONFIGURATION_INVALID` when `content` is not an object with an object `mcpServers`,
349
+ * with `metadata.line` and `metadata.column`;
350
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
351
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer `leaflow.fleet.mcp.v1`;
352
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
353
+ * the machine refuses the account, as for opening a session;
354
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time.
355
+ * @summary Replace the caller's MCP configuration on a machine
356
+ */
357
+ export declare const ReplaceMcpConfigurationParams: zod.ZodObject<{
358
+ machineId: zod.ZodUUID;
359
+ }, zod.z.core.$strict>;
360
+ export declare const ReplaceMcpConfigurationBody: zod.ZodObject<{
361
+ content: zod.ZodRecord<zod.ZodString, zod.ZodUnknown>;
362
+ expected_revision: zod.ZodOptional<zod.ZodString>;
363
+ }, zod.z.core.$strict>;
364
+ /**
365
+ * Adds a server to the caller's MCP configuration on the machine, or replaces the one with
366
+ * the same name. The values of `env` and `headers` the request gives, secrets included, pass
367
+ * through the platform; those named in `keep_env` and `keep_headers` stay as they are on the
368
+ * machine. The account is created if the caller has none yet. Requires
369
+ * `fleet:machines.login` on the machine.
370
+ *
371
+ * Fails with:
372
+ * - `MCP_CONFIGURATION_CHANGED` when the file is no longer at `expected_revision`;
373
+ * - `MCP_CONFIGURATION_INVALID` when the file cannot be read or is not valid; replace it
374
+ * whole first;
375
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
376
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer `leaflow.fleet.mcp.v1`;
377
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
378
+ * the machine refuses the account, as for opening a session;
379
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time.
380
+ * @summary Add or replace an MCP server
381
+ */
382
+ export declare const updateMcpServerPathServerNameRegExp: RegExp;
383
+ export declare const UpdateMcpServerParams: zod.ZodObject<{
384
+ machineId: zod.ZodUUID;
385
+ serverName: zod.ZodString;
386
+ }, zod.z.core.$strict>;
387
+ export declare const UpdateMcpServerBody: zod.ZodObject<{
388
+ transport: zod.ZodOptional<zod.ZodEnum<{
389
+ sse: "sse";
390
+ stdio: "stdio";
391
+ http: "http";
392
+ }>>;
393
+ command: zod.ZodOptional<zod.ZodString>;
394
+ args: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
395
+ env: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodString>>;
396
+ url: zod.ZodOptional<zod.ZodString>;
397
+ headers: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodString>>;
398
+ disabled: zod.ZodDefault<zod.ZodBoolean>;
399
+ keep_env: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
400
+ keep_headers: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
401
+ expected_revision: zod.ZodOptional<zod.ZodString>;
402
+ }, zod.z.core.$strict>;
403
+ /**
404
+ * Removes a server from the caller's MCP configuration on the machine and stops it. Removing
405
+ * one that is not configured succeeds. Requires `fleet:machines.login` on the machine.
406
+ *
407
+ * Fails as replacing a server does.
408
+ * @summary Remove an MCP server
409
+ */
410
+ export declare const deleteMcpServerPathServerNameRegExp: RegExp;
411
+ export declare const DeleteMcpServerParams: zod.ZodObject<{
412
+ machineId: zod.ZodUUID;
413
+ serverName: zod.ZodString;
414
+ }, zod.z.core.$strict>;
415
+ export declare const deleteMcpServerQueryExpectedRevisionMax = 64;
416
+ export declare const DeleteMcpServerQueryParams: zod.ZodObject<{
417
+ expected_revision: zod.ZodOptional<zod.ZodString>;
418
+ }, zod.z.core.$strict>;
419
+ /**
420
+ * Sends one JSON-RPC request of MCP to one of the caller's servers on the machine, such as
421
+ * `tools/call`, `resources/read` or `prompts/get`, and returns the server's response. The
422
+ * machine starts or connects to the server if it is not running, and handles its
423
+ * initialization itself; a request still running when `timeout_seconds` passes is cancelled
424
+ * at the server. Requests the server makes of the client, such as for sampling, are refused,
425
+ * and its notifications, such as of progress, are dropped. A response with a JSON-RPC error
426
+ * is a successful request. Neither the request nor the response is hidden from the
427
+ * platform. Requires `fleet:machines.login` on the machine.
428
+ *
429
+ * Fails with:
430
+ * - `MCP_SERVER_NOT_FOUND` when the server is not configured;
431
+ * - `MCP_SERVER_UNAVAILABLE` when it could not be started or reached, with
432
+ * `metadata.failure`, an `McpServerFailure`;
433
+ * - `INVALID_ARGUMENT` when `request` is not one JSON-RPC request, such as a notification, or
434
+ * is one of initialization;
435
+ * - `RESULT_TOO_LARGE` when the response is larger than 8 MiB;
436
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
437
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer `leaflow.fleet.mcp.v1`;
438
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
439
+ * the machine refuses the account, as for opening a session;
440
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time.
441
+ * @summary Send an MCP request to a server
442
+ */
443
+ export declare const sendMcpRequestPathServerNameRegExp: RegExp;
444
+ export declare const SendMcpRequestParams: zod.ZodObject<{
445
+ machineId: zod.ZodUUID;
446
+ serverName: zod.ZodString;
447
+ }, zod.z.core.$strict>;
448
+ export declare const SendMcpRequestBody: zod.ZodObject<{
449
+ request: zod.ZodRecord<zod.ZodString, zod.ZodUnknown>;
450
+ timeout_seconds: zod.ZodDefault<zod.ZodInt>;
451
+ }, zod.z.core.$strict>;
452
+ /**
453
+ * Calls one tool of one of the caller's servers on the machine and returns its MCP
454
+ * `CallToolResult`. A tool that reports an error, with `isError`, is a successful request. A
455
+ * tool whose name cannot appear in a path is called with `send-mcp-request`. Neither the
456
+ * arguments nor the result is hidden from the platform. Requires `fleet:machines.login` on
457
+ * the machine.
458
+ *
459
+ * Fails as sending a request does, and with `MCP_REQUEST_FAILED` when the server answers
460
+ * with a JSON-RPC error, such as for a tool it does not offer or arguments it does not
461
+ * accept, with the error's `metadata.code` and `metadata.message`.
462
+ * @summary Call an MCP tool
463
+ */
464
+ export declare const callMcpToolPathServerNameRegExp: RegExp;
465
+ export declare const callMcpToolPathToolNameMax = 128;
466
+ export declare const CallMcpToolParams: zod.ZodObject<{
467
+ machineId: zod.ZodUUID;
468
+ serverName: zod.ZodString;
469
+ toolName: zod.ZodString;
470
+ }, zod.z.core.$strict>;
471
+ export declare const CallMcpToolBody: zod.ZodObject<{
472
+ arguments: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodUnknown>>;
473
+ timeout_seconds: zod.ZodDefault<zod.ZodInt>;
474
+ }, zod.z.core.$strict>;
475
+ /**
476
+ * Lists the tools of the caller's servers on the machine, or of one of them, that match
477
+ * `query`: every word of it, ignoring case, in the tool's name, title or description. They
478
+ * are ordered by server, then by tool name. Servers that are not running are started to
479
+ * learn their tools; one that cannot be is named in `unavailable_servers`, and the others are
480
+ * listed anyway. Slow servers do not hold the request up: those still starting are named
481
+ * with `timeout` and go on starting, so that a later request lists their tools. Requires
482
+ * `fleet:machines.login` on the machine.
483
+ *
484
+ * Fails with:
485
+ * - `MCP_SERVER_NOT_FOUND` when `server` is not configured;
486
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
487
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer `leaflow.fleet.mcp.v1`;
488
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
489
+ * the machine refuses the account, as for opening a session;
490
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time.
491
+ * @summary List the caller's MCP tools on a machine
492
+ */
493
+ export declare const ListMcpToolsParams: zod.ZodObject<{
494
+ machineId: zod.ZodUUID;
495
+ }, zod.z.core.$strict>;
496
+ export declare const listMcpToolsQueryServerMax = 64;
497
+ export declare const listMcpToolsQueryQueryMax = 256;
498
+ export declare const listMcpToolsQueryPageSizeDefault = 100;
499
+ export declare const listMcpToolsQueryPageSizeMax = 500;
500
+ export declare const listMcpToolsQueryPageTokenMax = 1024;
501
+ export declare const ListMcpToolsQueryParams: zod.ZodObject<{
502
+ server: zod.ZodOptional<zod.ZodString>;
503
+ query: zod.ZodOptional<zod.ZodString>;
504
+ page_size: zod.ZodDefault<zod.ZodInt>;
505
+ page_token: zod.ZodOptional<zod.ZodString>;
506
+ }, zod.z.core.$strict>;
507
+ /**
508
+ * Returns the caller's automatic approval of their privilege requests on the machine. Fails
509
+ * with `PRIVILEGE_AUTO_APPROVAL_NOT_FOUND` while the caller is asked every time, including
510
+ * after its `expires_at` has passed.
511
+ * @summary Get the caller's automatic approval for a machine
512
+ */
513
+ export declare const GetPrivilegeAutoApprovalParams: zod.ZodObject<{
514
+ machineId: zod.ZodUUID;
515
+ }, zod.z.core.$strict>;
516
+ /**
517
+ * Approves the caller's privilege requests on the machine at once, until `expires_at`, or
518
+ * until removed when `expires_at` is null, replacing any earlier automatic approval. It
519
+ * applies to the caller's own account only, which is created if the caller has none yet,
520
+ * and only while they may become root on the machine. Fails with `INVALID_ARGUMENT` when
521
+ * `expires_at` has passed.
522
+ * @summary Approve the caller's privilege requests on a machine without asking
523
+ */
524
+ export declare const UpdatePrivilegeAutoApprovalParams: zod.ZodObject<{
525
+ machineId: zod.ZodUUID;
526
+ }, zod.z.core.$strict>;
527
+ export declare const UpdatePrivilegeAutoApprovalBody: zod.ZodObject<{
528
+ expires_at: zod.ZodNullable<zod.z.ZodISODateTime>;
529
+ }, zod.z.core.$strict>;
530
+ /**
531
+ * Removes it: the caller is asked about every later privilege request on the machine.
532
+ * Removing one that does not exist succeeds.
533
+ * @summary Remove the caller's automatic approval for a machine
534
+ */
535
+ export declare const DeletePrivilegeAutoApprovalParams: zod.ZodObject<{
536
+ machineId: zod.ZodUUID;
537
+ }, zod.z.core.$strict>;
538
+ /**
539
+ * Returns the caller's automatic approvals on the machines of the current project that are
540
+ * in effect, the most recently set first.
541
+ * @summary List the caller's automatic approvals
542
+ */
543
+ export declare const listPrivilegeAutoApprovalsQueryPageDefault = 1;
544
+ export declare const listPrivilegeAutoApprovalsQueryPageMax = 2147483647;
545
+ export declare const listPrivilegeAutoApprovalsQueryPageSizeDefault = 50;
546
+ export declare const listPrivilegeAutoApprovalsQueryPageSizeMax = 200;
547
+ export declare const ListPrivilegeAutoApprovalsQueryParams: zod.ZodObject<{
548
+ page: zod.ZodDefault<zod.ZodInt>;
549
+ page_size: zod.ZodDefault<zod.ZodInt>;
550
+ }, zod.z.core.$strict>;
551
+ /**
552
+ * Returns the caller's privilege requests on the project's machines, newest first. Requests
553
+ * are kept for 30 days.
554
+ * @summary List the caller's privilege requests
555
+ */
556
+ export declare const listPrivilegeRequestsQueryPageDefault = 1;
557
+ export declare const listPrivilegeRequestsQueryPageMax = 2147483647;
558
+ export declare const listPrivilegeRequestsQueryPageSizeDefault = 50;
559
+ export declare const listPrivilegeRequestsQueryPageSizeMax = 200;
560
+ export declare const ListPrivilegeRequestsQueryParams: zod.ZodObject<{
561
+ page: zod.ZodDefault<zod.ZodInt>;
562
+ page_size: zod.ZodDefault<zod.ZodInt>;
563
+ state: zod.ZodOptional<zod.ZodEnum<{
564
+ cancelled: "cancelled";
565
+ pending: "pending";
566
+ approved: "approved";
567
+ expired: "expired";
568
+ denied: "denied";
569
+ }>>;
570
+ machine_id: zod.ZodOptional<zod.ZodUUID>;
571
+ }, zod.z.core.$strict>;
572
+ /**
573
+ * Returns one of the caller's privilege requests.
574
+ * @summary Get a privilege request
575
+ */
576
+ export declare const GetPrivilegeRequestParams: zod.ZodObject<{
577
+ requestId: zod.ZodUUID;
578
+ }, zod.z.core.$strict>;
579
+ /**
580
+ * Approves one of the caller's pending requests; the waiting sudo goes on as root. Fails with
581
+ * `PRIVILEGE_REQUEST_CLOSED` when the request is no longer pending, with `metadata.state`
582
+ * giving how it ended.
583
+ * @summary Approve a privilege request
584
+ */
585
+ export declare const ApprovePrivilegeRequestParams: zod.ZodObject<{
586
+ requestId: zod.ZodUUID;
587
+ }, zod.z.core.$strict>;
588
+ /**
589
+ * Denies one of the caller's pending requests; the waiting sudo fails. Fails with
590
+ * `PRIVILEGE_REQUEST_CLOSED` as for approving.
591
+ * @summary Deny a privilege request
592
+ */
593
+ export declare const DenyPrivilegeRequestParams: zod.ZodObject<{
594
+ requestId: zod.ZodUUID;
595
+ }, zod.z.core.$strict>;
596
+ /**
597
+ * Returns the pending enrollment request whose pairing code matches, or no enrollment when
598
+ * none does. Mistyped codes are expected and are not an error. Letters are matched
599
+ * case-insensitively, `I` and `L` are read as `1`, `O` as `0`, and spaces and hyphens are
600
+ * ignored.
601
+ *
602
+ * Only requests that are still pending are found. A request is pending while its machine
603
+ * keeps polling; one it stops polling expires after a few hours.
604
+ *
605
+ * Requires `fleet:machines.manage`.
606
+ * @summary Find an enrollment request by its pairing code
607
+ */
608
+ export declare const findEnrollmentByPairingCodeQueryPairingCodeMax = 32;
609
+ export declare const FindEnrollmentByPairingCodeQueryParams: zod.ZodObject<{
610
+ pairing_code: zod.ZodString;
611
+ }, zod.z.core.$strict>;
612
+ /**
613
+ * Adds the machine to the current project under the given name and returns it. The Agent
614
+ * learns the decision the next time it polls.
615
+ *
616
+ * A request that is no longer pending is rejected with `ENROLLMENT_NOT_PENDING`.
617
+ *
618
+ * Requires `fleet:machines.manage`.
619
+ * @summary Approve an enrollment request
620
+ */
621
+ export declare const ApproveEnrollmentParams: zod.ZodObject<{
622
+ enrollmentId: zod.ZodUUID;
623
+ }, zod.z.core.$strict>;
624
+ export declare const ApproveEnrollmentBody: zod.ZodObject<{
625
+ name: zod.ZodString;
626
+ }, zod.z.core.$strict>;
627
+ /**
628
+ * Refuses the request. The decision is final for the machine's key: the Agent stops
629
+ * polling and reports that it was denied.
630
+ *
631
+ * A request that is no longer pending is rejected with `ENROLLMENT_NOT_PENDING`.
632
+ *
633
+ * Requires `fleet:machines.manage`.
634
+ * @summary Deny an enrollment request
635
+ */
636
+ export declare const DenyEnrollmentParams: zod.ZodObject<{
637
+ enrollmentId: zod.ZodUUID;
638
+ }, zod.z.core.$strict>;
639
+ /**
640
+ * Returns the registrations of the current project, newest first. Registrations are kept
641
+ * for 30 days.
642
+ *
643
+ * Requires `fleet:machines.manage`.
644
+ * @summary List machine registrations
645
+ */
646
+ export declare const listMachineRegistrationsQueryPageDefault = 1;
647
+ export declare const listMachineRegistrationsQueryPageMax = 2147483647;
648
+ export declare const listMachineRegistrationsQueryPageSizeDefault = 50;
649
+ export declare const listMachineRegistrationsQueryPageSizeMax = 200;
650
+ export declare const ListMachineRegistrationsQueryParams: zod.ZodObject<{
651
+ page: zod.ZodDefault<zod.ZodInt>;
652
+ page_size: zod.ZodDefault<zod.ZodInt>;
653
+ }, zod.z.core.$strict>;
654
+ /**
655
+ * Reserves a machine in the current project under the given name and returns the
656
+ * registration with a one-time token. A machine that presents the token when it enrolls
657
+ * joins the project as `registration.machine_id` without approval. The token is returned
658
+ * only in this response and cannot be read again.
659
+ *
660
+ * Requires `fleet:machines.manage`.
661
+ * @summary Create a machine registration
662
+ */
663
+ export declare const CreateMachineRegistrationBody: zod.ZodObject<{
664
+ name: zod.ZodString;
665
+ expires_in_seconds: zod.ZodDefault<zod.ZodInt>;
666
+ }, zod.z.core.$strict>;
667
+ /**
668
+ * Requires `fleet:machines.manage`.
669
+ * @summary Get a machine registration
670
+ */
671
+ export declare const GetMachineRegistrationParams: zod.ZodObject<{
672
+ registrationId: zod.ZodUUID;
673
+ }, zod.z.core.$strict>;
674
+ /**
675
+ * Revokes the registration: its token no longer enrolls a machine. Revoking a registration
676
+ * that is already revoked or expired succeeds and changes nothing else. A registration that
677
+ * a machine has used is rejected with `MACHINE_REGISTRATION_USED`; to remove that machine,
678
+ * delete the machine.
679
+ *
680
+ * Requires `fleet:machines.manage`.
681
+ * @summary Revoke a machine registration
682
+ */
683
+ export declare const DeleteMachineRegistrationParams: zod.ZodObject<{
684
+ registrationId: zod.ZodUUID;
685
+ }, zod.z.core.$strict>;
686
+ /**
687
+ * Returns the accounts of the project's members, ordered by username. A member who has never
688
+ * been able to log in to a machine has no account yet.
689
+ * @summary List accounts
690
+ */
691
+ export declare const listAccountsQueryPageDefault = 1;
692
+ export declare const listAccountsQueryPageMax = 2147483647;
693
+ export declare const listAccountsQueryPageSizeDefault = 50;
694
+ export declare const listAccountsQueryPageSizeMax = 200;
695
+ export declare const listAccountsQueryKeywordMax = 128;
696
+ export declare const ListAccountsQueryParams: zod.ZodObject<{
697
+ page: zod.ZodDefault<zod.ZodInt>;
698
+ page_size: zod.ZodDefault<zod.ZodInt>;
699
+ user_id: zod.ZodOptional<zod.ZodUUID>;
700
+ keyword: zod.ZodOptional<zod.ZodString>;
701
+ }, zod.z.core.$strict>;
702
+ /**
703
+ * Returns the account of a member of the project.
704
+ * @summary Get an account
705
+ */
706
+ export declare const GetAccountParams: zod.ZodObject<{
707
+ accountId: zod.ZodUUID;
708
+ }, zod.z.core.$strict>;
709
+ /**
710
+ * Changes the caller's own account, only the fields present in the request. The account is
711
+ * the same in every project, and a new username takes effect on the machines of all of them
712
+ * within about a minute; the uid stays, so files keep their owner.
713
+ *
714
+ * Fails with:
715
+ * - `ACCOUNT_NOT_OWNED` when the account is another member's;
716
+ * - `DIRECTORY_NAME_TAKEN` when another account or a group uses the username.
717
+ * @summary Update an account
718
+ */
719
+ export declare const UpdateAccountParams: zod.ZodObject<{
720
+ accountId: zod.ZodUUID;
721
+ }, zod.z.core.$strict>;
722
+ export declare const UpdateAccountBody: zod.ZodObject<{
723
+ username: zod.ZodOptional<zod.ZodString>;
724
+ shell: zod.ZodOptional<zod.ZodString>;
725
+ }, zod.z.core.$strict>;
726
+ /**
727
+ * Returns the groups of the project's directory, ordered by name.
728
+ * @summary List groups
729
+ */
730
+ export declare const listGroupsQueryPageDefault = 1;
731
+ export declare const listGroupsQueryPageMax = 2147483647;
732
+ export declare const listGroupsQueryPageSizeDefault = 50;
733
+ export declare const listGroupsQueryPageSizeMax = 200;
734
+ export declare const ListGroupsQueryParams: zod.ZodObject<{
735
+ page: zod.ZodDefault<zod.ZodInt>;
736
+ page_size: zod.ZodDefault<zod.ZodInt>;
737
+ }, zod.z.core.$strict>;
738
+ /**
739
+ * Creates a group in the project's directory. It reaches the machines within about a minute.
740
+ *
741
+ * Fails with `DIRECTORY_NAME_TAKEN` when an account, or another group of the project, uses the
742
+ * name.
743
+ *
744
+ * Requires `fleet:directory.manage`.
745
+ * @summary Create a group
746
+ */
747
+ export declare const CreateGroupBody: zod.ZodObject<{
748
+ name: zod.ZodString;
749
+ }, zod.z.core.$strict>;
750
+ /**
751
+ * @summary Get a group
752
+ */
753
+ export declare const GetGroupParams: zod.ZodObject<{
754
+ groupId: zod.ZodUUID;
755
+ }, zod.z.core.$strict>;
756
+ /**
757
+ * The gid stays, so files keep their group. Fails with `DIRECTORY_NAME_TAKEN` as for creating
758
+ * a group.
759
+ *
760
+ * Requires `fleet:directory.manage`.
761
+ * @summary Rename a group
762
+ */
763
+ export declare const UpdateGroupParams: zod.ZodObject<{
764
+ groupId: zod.ZodUUID;
765
+ }, zod.z.core.$strict>;
766
+ export declare const UpdateGroupBody: zod.ZodObject<{
767
+ name: zod.ZodString;
768
+ }, zod.z.core.$strict>;
769
+ /**
770
+ * Removes the group from the directory. Machines stop resolving it within about a minute;
771
+ * files keep its gid.
772
+ *
773
+ * Requires `fleet:directory.manage`.
774
+ * @summary Delete a group
775
+ */
776
+ export declare const DeleteGroupParams: zod.ZodObject<{
777
+ groupId: zod.ZodUUID;
778
+ }, zod.z.core.$strict>;
779
+ /**
780
+ * Returns the accounts in the group, ordered by username.
781
+ * @summary List the members of a group
782
+ */
783
+ export declare const ListGroupMembersParams: zod.ZodObject<{
784
+ groupId: zod.ZodUUID;
785
+ }, zod.z.core.$strict>;
786
+ export declare const listGroupMembersQueryPageDefault = 1;
787
+ export declare const listGroupMembersQueryPageMax = 2147483647;
788
+ export declare const listGroupMembersQueryPageSizeDefault = 50;
789
+ export declare const listGroupMembersQueryPageSizeMax = 200;
790
+ export declare const ListGroupMembersQueryParams: zod.ZodObject<{
791
+ page: zod.ZodDefault<zod.ZodInt>;
792
+ page_size: zod.ZodDefault<zod.ZodInt>;
793
+ }, zod.z.core.$strict>;
794
+ /**
795
+ * The account must be a member's. Fails with `GROUP_MEMBER_EXISTS` when the account is
796
+ * already in the group.
797
+ *
798
+ * Requires `fleet:directory.manage`.
799
+ * @summary Add an account to a group
800
+ */
801
+ export declare const CreateGroupMemberParams: zod.ZodObject<{
802
+ groupId: zod.ZodUUID;
803
+ }, zod.z.core.$strict>;
804
+ export declare const CreateGroupMemberBody: zod.ZodObject<{
805
+ account_id: zod.ZodUUID;
806
+ }, zod.z.core.$strict>;
807
+ /**
808
+ * Removing an account that is not in the group succeeds.
809
+ *
810
+ * Requires `fleet:directory.manage`.
811
+ * @summary Remove an account from a group
812
+ */
813
+ export declare const DeleteGroupMemberParams: zod.ZodObject<{
814
+ groupId: zod.ZodUUID;
815
+ accountId: zod.ZodUUID;
816
+ }, zod.z.core.$strict>;
817
+ /**
818
+ * Returns the sessions of the current project's machines, newest first. Closed sessions are
819
+ * omitted unless `include_closed` is true.
820
+ * @summary List sessions
821
+ */
822
+ export declare const listSessionsQueryPageDefault = 1;
823
+ export declare const listSessionsQueryPageMax = 2147483647;
824
+ export declare const listSessionsQueryPageSizeDefault = 50;
825
+ export declare const listSessionsQueryPageSizeMax = 200;
826
+ export declare const listSessionsQueryIncludeClosedDefault = false;
827
+ export declare const ListSessionsQueryParams: zod.ZodObject<{
828
+ page: zod.ZodDefault<zod.ZodInt>;
829
+ page_size: zod.ZodDefault<zod.ZodInt>;
830
+ machine_id: zod.ZodOptional<zod.ZodUUID>;
831
+ user_id: zod.ZodOptional<zod.ZodUUID>;
832
+ include_closed: zod.ZodDefault<zod.ZodBoolean>;
833
+ }, zod.z.core.$strict>;
834
+ /**
835
+ * Opens a session for the caller on a machine, as the caller's account, and returns once it
836
+ * is ready. With `desktop` the session has a desktop. Without, it is a terminal session: its
837
+ * one terminal runs the caller's login shell from the start, every participant attaches to
838
+ * that terminal, and the session ends when the shell exits; a caller who wants another
839
+ * terminal opens another session. Either kind also offers programs, files, ports, sound,
840
+ * devices, printers and privilege approvals. The account is created if the caller has none
841
+ * yet. Requires `fleet:machines.login` on the machine.
842
+ *
843
+ * On a machine an account has at most one session with a desktop and at most 8 sessions in
844
+ * all. Sessions without a desktop run side by side, such as one for a program and one for a
845
+ * person; several participants can also share one session.
846
+ *
847
+ * Fails with:
848
+ * - `MACHINE_OFFLINE` when the machine is not connected and does not connect again in time;
849
+ * - `FEATURE_UNAVAILABLE` when the machine does not offer sessions, or with `desktop`,
850
+ * desktops;
851
+ * - `USER_HAS_DESKTOP_SESSION` with `desktop` when the account already has a session with a
852
+ * desktop on the machine, which `metadata.sessionId` names; connect to it instead;
853
+ * - `SESSION_LIMIT_REACHED` when the account already has 8 open sessions on the machine;
854
+ * close one first;
855
+ * - `USER_NOT_FOUND`, `USER_NOT_ALLOWED`, `ACCOUNT_EXPIRED` or `PAM_PERMISSION_DENIED` when
856
+ * the machine refuses the account, such as while it has not received the account yet or a
857
+ * local account uses its name; `PAM_PERMISSION_DENIED` carries the machine's message in
858
+ * `metadata.pamMessage`;
859
+ * - `SESSION_CONFLICT` with `desktop` when the account has a graphical session on the
860
+ * machine that Fleet did not open;
861
+ * - `DISPLAY_UNAVAILABLE` or `SESSION_START_FAILED` when the machine could not start it;
862
+ * - `MACHINE_TIMEOUT` when the machine did not answer in time. The session may still open;
863
+ * list the sessions before trying again.
864
+ * @summary Open a session
865
+ */
866
+ export declare const CreateSessionBody: zod.ZodObject<{
867
+ machine_id: zod.ZodUUID;
868
+ desktop: zod.ZodOptional<zod.ZodObject<{
869
+ mode: zod.ZodEnum<{
870
+ desktop: "desktop";
871
+ seamless: "seamless";
872
+ }>;
873
+ width: zod.ZodOptional<zod.ZodInt>;
874
+ height: zod.ZodOptional<zod.ZodInt>;
875
+ session_desktop: zod.ZodOptional<zod.ZodString>;
876
+ }, zod.z.core.$strict>>;
877
+ }, zod.z.core.$strict>;
878
+ /**
879
+ * @summary Get a session
880
+ */
881
+ export declare const getSessionPathSessionIdMax = 40;
882
+ export declare const getSessionPathSessionIdRegExp: RegExp;
883
+ export declare const GetSessionParams: zod.ZodObject<{
884
+ sessionId: zod.ZodString;
885
+ }, zod.z.core.$strict>;
886
+ /**
887
+ * Ends the session in order: its applications are asked to exit and get a grace period
888
+ * before the session is terminated. Returns once the session is closed. Closing a closed
889
+ * session succeeds.
890
+ *
891
+ * The owner may close their own session; closing another member's requires
892
+ * `fleet:sessions.manage`. Fails with `MACHINE_OFFLINE` or `MACHINE_TIMEOUT` as
893
+ * for opening a session.
894
+ * @summary Close a session
895
+ */
896
+ export declare const closeSessionPathSessionIdMax = 40;
897
+ export declare const closeSessionPathSessionIdRegExp: RegExp;
898
+ export declare const CloseSessionParams: zod.ZodObject<{
899
+ sessionId: zod.ZodString;
900
+ }, zod.z.core.$strict>;
901
+ /**
902
+ * Ends the session at once, killing every process in it. Returns once the session is
903
+ * closed. Terminating a closed session succeeds.
904
+ *
905
+ * The owner may terminate their own session; terminating another member's requires
906
+ * `fleet:sessions.manage`. Fails with `MACHINE_OFFLINE` or `MACHINE_TIMEOUT` as
907
+ * for opening a session.
908
+ * @summary Terminate a session
909
+ */
910
+ export declare const terminateSessionPathSessionIdMax = 40;
911
+ export declare const terminateSessionPathSessionIdRegExp: RegExp;
912
+ export declare const TerminateSessionParams: zod.ZodObject<{
913
+ sessionId: zod.ZodString;
914
+ }, zod.z.core.$strict>;
915
+ /**
916
+ * Returns the STUN and TURN servers for the PeerConnections the caller starts to the session,
917
+ * with TURN credentials of its own, and the policy for using them. Ask again once
918
+ * `expires_at` has passed; the credentials of a PeerConnection already relayed last longer.
919
+ *
920
+ * Requires that the caller may join the session, as for `create-participant`.
921
+ *
922
+ * Fails with:
923
+ * - `SESSION_CLOSED` when the session has ended;
924
+ * - `SESSION_ACCESS_DENIED` when the caller may not join the session.
925
+ * @summary Get the ICE servers for a session
926
+ */
927
+ export declare const getSessionRtcConfigurationPathSessionIdMax = 40;
928
+ export declare const getSessionRtcConfigurationPathSessionIdRegExp: RegExp;
929
+ export declare const GetSessionRtcConfigurationParams: zod.ZodObject<{
930
+ sessionId: zod.ZodString;
931
+ }, zod.z.core.$strict>;
932
+ /**
933
+ * Admits one participant with the given public key to the session: signs its authorization,
934
+ * has the session accept it, and starts its first PeerConnection with the offer. The answer
935
+ * carries the participant, its authorization and the PeerConnection with the session's
936
+ * answer. The participant lasts while it is renewed.
937
+ *
938
+ * Joining again with the public key of one of the caller's participants of the session that
939
+ * has not ended, with the same `client_name`, `read_only` and `permissions`, returns that
940
+ * participant with a new PeerConnection for the offer, and the session gains no second
941
+ * participant: a request whose answer was lost, such as on an unreliable network, is sent
942
+ * again as it was. Its earlier PeerConnection, whose answer the client never received, is
943
+ * given up by the session once it fails.
944
+ *
945
+ * The owner of a session may operate it. Joining another member's session requires
946
+ * `fleet:sessions.view`, which admits watching only, or
947
+ * `fleet:sessions.control`, which also admits operating it. Each further capability
948
+ * of the session — file transfer, the clipboard, terminals and programs, port forwarding,
949
+ * devices and audio, printing, SSH agent forwarding, approving privilege requests and
950
+ * reading logs — is granted only with its permission; a participant that may only watch gets
951
+ * none of them. A request may ask for less: to watch only, or for some of the capabilities.
952
+ *
953
+ * Fails with the following, and then no participant was created:
954
+ * - `SESSION_CLOSED` when the session has ended;
955
+ * - `SESSION_ACCESS_DENIED` when the caller may not join the session;
956
+ * - `OFFER_INVALID` when the offer is not an SDP offer that names a SHA-256 DTLS fingerprint;
957
+ * - `SESSION_UNAVAILABLE` when the session's process is not connected and does not connect
958
+ * again in time, or did not answer in time; try again after the error's `retry_delay`;
959
+ * - `PARTICIPANT_LIMIT_REACHED` when the session has as many participants as it admits;
960
+ * - `PARTICIPANT_REFUSED` when the session refused the participant;
961
+ * - `PARTICIPANT_KEY_IN_USE` when the public key belongs to a participant of the session that
962
+ * another user holds, or that was created with another `client_name`, `read_only` or
963
+ * `permissions`; join with a new key;
964
+ * - `PEER_CONNECTION_ABORTED` when the session gave up the PeerConnection; try again with a
965
+ * new offer. The participant of a repeated request stays.
966
+ * @summary Join a session
967
+ */
968
+ export declare const createParticipantPathSessionIdMax = 40;
969
+ export declare const createParticipantPathSessionIdRegExp: RegExp;
970
+ export declare const CreateParticipantParams: zod.ZodObject<{
971
+ sessionId: zod.ZodString;
972
+ }, zod.z.core.$strict>;
973
+ export declare const CreateParticipantBody: zod.ZodObject<{
974
+ public_key: zod.ZodString;
975
+ client_name: zod.ZodOptional<zod.ZodString>;
976
+ read_only: zod.ZodOptional<zod.ZodBoolean>;
977
+ permissions: zod.ZodOptional<zod.ZodArray<zod.ZodEnum<{
978
+ "fleet:files.transfer": "fleet:files.transfer";
979
+ "fleet:clipboard.use": "fleet:clipboard.use";
980
+ "fleet:terminal.use": "fleet:terminal.use";
981
+ "fleet:ports.forward": "fleet:ports.forward";
982
+ "fleet:devices.use": "fleet:devices.use";
983
+ "fleet:printing.use": "fleet:printing.use";
984
+ "fleet:ssh_agent.use": "fleet:ssh_agent.use";
985
+ "fleet:privilege.approve": "fleet:privilege.approve";
986
+ "fleet:logs.read": "fleet:logs.read";
987
+ }>>>;
988
+ offer: zod.ZodString;
989
+ }, zod.z.core.$strict>;
990
+ /**
991
+ * Returns the participants of the session, in the order they joined.
992
+ * @summary List the participants of a session
993
+ */
994
+ export declare const listSessionParticipantsPathSessionIdMax = 40;
995
+ export declare const listSessionParticipantsPathSessionIdRegExp: RegExp;
996
+ export declare const ListSessionParticipantsParams: zod.ZodObject<{
997
+ sessionId: zod.ZodString;
998
+ }, zod.z.core.$strict>;
999
+ /**
1000
+ * Extends the participant's lease and returns renewed PeerAuthorizations for the
1001
+ * PeerConnections whose current ones the request presents. The service sends them to the
1002
+ * session as well, and the participant passes each one to the session over its PeerConnection
1003
+ * (`Packet.peer_authorization` of the transport protocol), so that the lease holds while
1004
+ * either path to the session is down. A
1005
+ * presented authorization that the service did not sign for this participant, or whose
1006
+ * PeerConnection has ended, is left out of the answer. When the participant's authorization
1007
+ * nears its end, the answer carries a renewed one, which the session already holds.
1008
+ *
1009
+ * Only the participant's user may renew it.
1010
+ *
1011
+ * Fails with:
1012
+ * - `PARTICIPANT_NOT_FOUND` when the participant has ended; create another;
1013
+ * - `PARTICIPANT_PERMISSION_REVOKED` when a permission the participant was created with has
1014
+ * been revoked from the caller; it has ended, and another can be created with the
1015
+ * permissions the caller holds now;
1016
+ * - `PROJECT_MEMBERSHIP_REQUIRED` when the caller is no longer a member of the project; the
1017
+ * participant has ended.
1018
+ * @summary Renew a participant
1019
+ */
1020
+ export declare const renewParticipantPathSessionIdMax = 40;
1021
+ export declare const renewParticipantPathSessionIdRegExp: RegExp;
1022
+ export declare const RenewParticipantParams: zod.ZodObject<{
1023
+ sessionId: zod.ZodString;
1024
+ participantId: zod.ZodInt;
1025
+ }, zod.z.core.$strict>;
1026
+ export declare const RenewParticipantBody: zod.ZodObject<{
1027
+ peer_authorizations: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1028
+ key_id: zod.ZodString;
1029
+ message: zod.ZodString;
1030
+ signature: zod.ZodString;
1031
+ }, zod.z.core.$strict>>>;
1032
+ }, zod.z.core.$strict>;
1033
+ /**
1034
+ * Passes the participant's checkpoint for the next epoch to the session and returns the
1035
+ * session's checkpoint for it: the `prepare` and `prepared` steps of `Migration` in
1036
+ * `leaflow/fleet/transport/v1/transport.proto`. Repeating the step returns the same answer.
1037
+ *
1038
+ * Only the participant's user may migrate it.
1039
+ *
1040
+ * Fails with:
1041
+ * - `PARTICIPANT_NOT_FOUND` when the participant has ended;
1042
+ * - `CHECKPOINT_INVALID` when the checkpoint is not a serialized `Checkpoint`;
1043
+ * - `SESSION_UNAVAILABLE` when the session's process is not connected and does not connect
1044
+ * again in time, or did not answer in time; try again after the error's `retry_delay`.
1045
+ * @summary Prepare a migration
1046
+ */
1047
+ export declare const prepareParticipantMigrationPathSessionIdMax = 40;
1048
+ export declare const prepareParticipantMigrationPathSessionIdRegExp: RegExp;
1049
+ export declare const PrepareParticipantMigrationParams: zod.ZodObject<{
1050
+ sessionId: zod.ZodString;
1051
+ participantId: zod.ZodInt;
1052
+ }, zod.z.core.$strict>;
1053
+ export declare const PrepareParticipantMigrationBody: zod.ZodObject<{
1054
+ checkpoint: zod.ZodString;
1055
+ }, zod.z.core.$strict>;
1056
+ /**
1057
+ * Commits the epoch the participant prepared and returns the session's checkpoint once it
1058
+ * committed it: the `commit` and `committed` steps of `Migration` in
1059
+ * `leaflow/fleet/transport/v1/transport.proto`. Repeating the step returns the same answer.
1060
+ *
1061
+ * Only the participant's user may migrate it.
1062
+ *
1063
+ * Fails with:
1064
+ * - `PARTICIPANT_NOT_FOUND` when the participant has ended;
1065
+ * - `CHECKPOINT_INVALID` when the checkpoint is not a serialized `Checkpoint`;
1066
+ * - `SESSION_UNAVAILABLE` when the session's process is not connected and does not connect
1067
+ * again in time, or did not answer in time; try again after the error's `retry_delay`.
1068
+ * @summary Commit a migration
1069
+ */
1070
+ export declare const commitParticipantMigrationPathSessionIdMax = 40;
1071
+ export declare const commitParticipantMigrationPathSessionIdRegExp: RegExp;
1072
+ export declare const CommitParticipantMigrationParams: zod.ZodObject<{
1073
+ sessionId: zod.ZodString;
1074
+ participantId: zod.ZodInt;
1075
+ }, zod.z.core.$strict>;
1076
+ export declare const CommitParticipantMigrationBody: zod.ZodObject<{
1077
+ checkpoint: zod.ZodString;
1078
+ }, zod.z.core.$strict>;
1079
+ /**
1080
+ * Starts another PeerConnection of the participant with the offer, such as after a path
1081
+ * failed, and returns the session's answer, its ICE candidates and the signed
1082
+ * PeerAuthorization. Move the participant's connection to it with
1083
+ * `prepare-participant-migration` and `commit-participant-migration`.
1084
+ *
1085
+ * Only the participant's user may start one.
1086
+ *
1087
+ * Fails with:
1088
+ * - `PARTICIPANT_NOT_FOUND` when the participant has ended;
1089
+ * - `OFFER_INVALID` when the offer is not an SDP offer that names a SHA-256 DTLS fingerprint;
1090
+ * - `RATE_LIMIT_EXCEEDED` when the participant started too many PeerConnections in the
1091
+ * last minute; try again after the error's `retry_delay`;
1092
+ * - `SESSION_UNAVAILABLE` when the session's process is not connected and does not connect
1093
+ * again in time, or did not answer in time; try again after the error's `retry_delay`;
1094
+ * - `PEER_CONNECTION_ABORTED` when the session gave up the PeerConnection; start another.
1095
+ * @summary Start a PeerConnection
1096
+ */
1097
+ export declare const createPeerConnectionPathSessionIdMax = 40;
1098
+ export declare const createPeerConnectionPathSessionIdRegExp: RegExp;
1099
+ export declare const CreatePeerConnectionParams: zod.ZodObject<{
1100
+ sessionId: zod.ZodString;
1101
+ participantId: zod.ZodInt;
1102
+ }, zod.z.core.$strict>;
1103
+ export declare const CreatePeerConnectionBody: zod.ZodObject<{
1104
+ offer: zod.ZodString;
1105
+ }, zod.z.core.$strict>;
1106
+ /**
1107
+ * Tells the session to give up the PeerConnection and close it. Abandoning a PeerConnection
1108
+ * that has ended succeeds.
1109
+ *
1110
+ * Only the participant's user may abandon it.
1111
+ *
1112
+ * Fails with `PARTICIPANT_NOT_FOUND` when the participant has ended.
1113
+ * @summary Abandon a PeerConnection
1114
+ */
1115
+ export declare const deletePeerConnectionPathSessionIdMax = 40;
1116
+ export declare const deletePeerConnectionPathSessionIdRegExp: RegExp;
1117
+ export declare const DeletePeerConnectionParams: zod.ZodObject<{
1118
+ sessionId: zod.ZodString;
1119
+ participantId: zod.ZodInt;
1120
+ peerConnectionId: zod.ZodUUID;
1121
+ }, zod.z.core.$strict>;
1122
+ /**
1123
+ * Passes the ICE candidates the participant gathered after its offer to the session, and with
1124
+ * `end_of_candidates`, that it has gathered all (RFC 8838). The session ignores those of a
1125
+ * PeerConnection that has ended.
1126
+ *
1127
+ * Only the participant's user may add them.
1128
+ *
1129
+ * Fails with:
1130
+ * - `PARTICIPANT_NOT_FOUND` when the participant has ended;
1131
+ * - `SESSION_UNAVAILABLE` when the session's process is not connected and does not connect
1132
+ * again in time; try again after the error's `retry_delay`.
1133
+ * @summary Add ICE candidates to a PeerConnection
1134
+ */
1135
+ export declare const createPeerConnectionCandidatesPathSessionIdMax = 40;
1136
+ export declare const createPeerConnectionCandidatesPathSessionIdRegExp: RegExp;
1137
+ export declare const CreatePeerConnectionCandidatesParams: zod.ZodObject<{
1138
+ sessionId: zod.ZodString;
1139
+ participantId: zod.ZodInt;
1140
+ peerConnectionId: zod.ZodUUID;
1141
+ }, zod.z.core.$strict>;
1142
+ export declare const CreatePeerConnectionCandidatesBody: zod.ZodObject<{
1143
+ candidates: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1144
+ candidate: zod.ZodString;
1145
+ sdp_mid: zod.ZodOptional<zod.ZodString>;
1146
+ }, zod.z.core.$strict>>>;
1147
+ end_of_candidates: zod.ZodOptional<zod.ZodBoolean>;
1148
+ }, zod.z.core.$strict>;
1149
+ /**
1150
+ * Returns a participant of the session.
1151
+ * @summary Get a participant of a session
1152
+ */
1153
+ export declare const getParticipantPathSessionIdMax = 40;
1154
+ export declare const getParticipantPathSessionIdRegExp: RegExp;
1155
+ export declare const GetParticipantParams: zod.ZodObject<{
1156
+ sessionId: zod.ZodString;
1157
+ participantId: zod.ZodInt;
1158
+ }, zod.z.core.$strict>;
1159
+ /**
1160
+ * Ends the participant: the session detaches it and closes its PeerConnections, and the
1161
+ * session goes on. A participant leaves this way; others are disconnected this way.
1162
+ *
1163
+ * The participant's user and the owner of the session may end it; otherwise this
1164
+ * requires `fleet:sessions.manage`.
1165
+ * @summary End a participant
1166
+ */
1167
+ export declare const deleteParticipantPathSessionIdMax = 40;
1168
+ export declare const deleteParticipantPathSessionIdRegExp: RegExp;
1169
+ export declare const DeleteParticipantParams: zod.ZodObject<{
1170
+ sessionId: zod.ZodString;
1171
+ participantId: zod.ZodInt;
1172
+ }, zod.z.core.$strict>;