cyberdesk 0.2.1 → 1.1.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.
package/README.md CHANGED
@@ -1,105 +1,96 @@
1
- # cyberdesk
1
+ # Cyberdesk TypeScript SDK
2
2
 
3
- [![npm version](https://badge.fury.io/js/cyberdesk.svg)](https://badge.fury.io/js/cyberdesk)
4
-
5
- The official TypeScript SDK for Cyberdesk.
3
+ The official TypeScript SDK for Cyberdesk, providing type-safe access to all Cyberdesk APIs.
6
4
 
7
5
  ## Installation
8
6
 
9
7
  ```bash
10
8
  npm install cyberdesk
11
- # or
12
- yarn add cyberdesk
13
- # or
14
- pnpm add cyberdesk
15
9
  ```
16
10
 
17
- ## Usage
18
-
19
- First, create a Cyberdesk client instance with your API key:
11
+ ## Quick Start
20
12
 
21
13
  ```typescript
22
14
  import { createCyberdeskClient } from 'cyberdesk';
23
15
 
24
- const cyberdesk = createCyberdeskClient({
25
- apiKey: 'YOUR_API_KEY',
26
- // Optionally, you can override the baseUrl or provide a custom fetch implementation
27
- });
28
- ```
29
-
30
- ### Launch a Desktop
16
+ // Initialize client with your API key
17
+ const client = createCyberdeskClient('your-api-key');
31
18
 
32
- ```typescript
33
- const launchResult = await cyberdesk.launchDesktop({
34
- body: { timeout_ms: 10000 } // Optional: set a timeout for the desktop session
19
+ // List machines with full type safety
20
+ const { data } = await client.machines.list({
21
+ status: 'connected', // Typed enum
22
+ limit: 10
35
23
  });
36
24
 
37
- if (launchResult.error) {
38
- throw new Error('Failed to launch desktop: ' + launchResult.error.error);
39
- }
40
-
41
- const desktopId = launchResult.id;
42
- console.log('Launched desktop with ID:', desktopId);
43
- ```
44
-
45
- ### Get Desktop Info
46
-
47
- ```typescript
48
- const info = await cyberdesk.getDesktop({
49
- path: { id: desktopId }
25
+ // Create a workflow
26
+ const workflow = await client.workflows.create({
27
+ main_prompt: "Automate my tasks",
28
+ cleanup_prompt: "Clean up afterwards"
50
29
  });
51
30
 
52
- if ('error' in info) {
53
- throw new Error('Failed to get desktop info: ' + info.error);
54
- }
55
-
56
- console.log('Desktop info:', info);
31
+ // All responses are fully typed!
32
+ console.log(data?.items); // MachineResponse[]
57
33
  ```
58
34
 
59
- ### Perform a Computer Action (e.g., Mouse Click)
35
+ ## Custom Base URL
60
36
 
61
37
  ```typescript
62
- const actionResult = await cyberdesk.executeComputerAction({
63
- path: { id: desktopId },
64
- body: {
65
- type: 'click_mouse',
66
- x: 100,
67
- y: 150
68
- }
69
- });
70
-
71
- if (actionResult.error) {
72
- throw new Error('Action failed: ' + actionResult.error);
73
- }
74
-
75
- console.log('Action result:', actionResult);
38
+ const client = createCyberdeskClient('your-api-key', 'https://your-api.example.com');
76
39
  ```
77
40
 
78
- ### Run a Bash Command
79
-
80
- ```typescript
81
- const bashResult = await cyberdesk.executeBashAction({
82
- path: { id: desktopId },
83
- body: {
84
- command: 'echo Hello, world!'
85
- }
86
- });
87
-
88
- if (bashResult.error) {
89
- throw new Error('Bash command failed: ' + bashResult.error);
90
- }
91
-
92
- console.log('Bash output:', bashResult.output);
93
- ```
41
+ ## Available Methods
42
+
43
+ ### Machines
44
+ - `client.machines.list(params?)` - List machines
45
+ - `client.machines.create(data)` - Create machine
46
+ - `client.machines.get(machineId)` - Get machine
47
+ - `client.machines.update(machineId, data)` - Update machine
48
+ - `client.machines.delete(machineId)` - Delete machine
49
+
50
+ ### Workflows
51
+ - `client.workflows.list(params?)` - List workflows
52
+ - `client.workflows.create(data)` - Create workflow
53
+ - `client.workflows.get(workflowId)` - Get workflow
54
+ - `client.workflows.update(workflowId, data)` - Update workflow
55
+ - `client.workflows.delete(workflowId)` - Delete workflow
56
+
57
+ ### Runs
58
+ - `client.runs.list(params?)` - List runs
59
+ - `client.runs.create(data)` - Create run
60
+ - `client.runs.get(runId)` - Get run
61
+ - `client.runs.update(runId, data)` - Update run
62
+ - `client.runs.delete(runId)` - Delete run
63
+
64
+ ### Trajectories
65
+ - `client.trajectories.list(params?)` - List trajectories
66
+ - `client.trajectories.create(data)` - Create trajectory
67
+ - `client.trajectories.get(trajectoryId)` - Get trajectory
68
+ - `client.trajectories.update(trajectoryId, data)` - Update trajectory
69
+ - `client.trajectories.delete(trajectoryId)` - Delete trajectory
70
+ - `client.trajectories.getLatestForWorkflow(workflowId)` - Get latest trajectory for workflow
71
+
72
+ ### Connections
73
+ - `client.connections.list(params?)` - List connections
74
+ - `client.connections.create(data)` - Create connection
94
75
 
95
76
  ## TypeScript Support
96
77
 
97
- All request parameter types and the `CyberdeskSDK` type are exported for convenience:
78
+ This SDK is built with TypeScript and provides full type safety:
98
79
 
99
80
  ```typescript
100
- import type { LaunchDesktopParams, CyberdeskSDK } from 'cyberdesk';
81
+ import {
82
+ createCyberdeskClient,
83
+ type MachineResponse,
84
+ type WorkflowResponse
85
+ } from 'cyberdesk';
86
+
87
+ const client = createCyberdeskClient('your-api-key');
88
+
89
+ // All parameters and responses are fully typed
90
+ const machines: { data?: PaginatedResponseMachineResponse } =
91
+ await client.machines.list();
101
92
  ```
102
93
 
103
94
  ## License
104
95
 
105
- [MIT](LICENSE)
96
+ MIT
@@ -3,6 +3,4 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.client = void 0;
5
5
  const client_fetch_1 = require("@hey-api/client-fetch");
6
- exports.client = (0, client_fetch_1.createClient)((0, client_fetch_1.createConfig)({
7
- baseUrl: 'https://api.cyberdesk.io'
8
- }));
6
+ exports.client = (0, client_fetch_1.createClient)((0, client_fetch_1.createConfig)());
@@ -1,5 +1,5 @@
1
1
  import type { Options as ClientOptions, TDataShape, Client } from '@hey-api/client-fetch';
2
- import type { GetV1DesktopByIdData, GetV1DesktopByIdError, PostV1DesktopData, PostV1DesktopError, PostV1DesktopByIdStopData, PostV1DesktopByIdStopError, PostV1DesktopByIdComputerActionData, PostV1DesktopByIdComputerActionError, PostV1DesktopByIdBashActionData, PostV1DesktopByIdBashActionError } from './types.gen';
2
+ import type { HealthCheckV1HealthGetData, DatabaseHealthCheckV1HealthDbGetData, ListMachinesV1MachinesGetData, CreateMachineV1MachinesPostData, DeleteMachineV1MachinesMachineIdDeleteData, GetMachineV1MachinesMachineIdGetData, UpdateMachineV1MachinesMachineIdPatchData, ListWorkflowsV1WorkflowsGetData, CreateWorkflowV1WorkflowsPostData, DeleteWorkflowV1WorkflowsWorkflowIdDeleteData, GetWorkflowV1WorkflowsWorkflowIdGetData, UpdateWorkflowV1WorkflowsWorkflowIdPatchData, GetWorkflowVersionsV1WorkflowsWorkflowIdVersionsGetData, ListRunsV1RunsGetData, CreateRunV1RunsPostData, DeleteRunV1RunsRunIdDeleteData, GetRunV1RunsRunIdGetData, UpdateRunV1RunsRunIdPatchData, ListConnectionsV1ConnectionsGetData, CreateConnectionV1ConnectionsPostData, DeleteConnectionV1ConnectionsConnectionIdDeleteData, GetConnectionV1ConnectionsConnectionIdGetData, UpdateConnectionV1ConnectionsConnectionIdPatchData, ListRequestLogsV1RequestLogsGetData, CreateRequestLogV1RequestLogsPostData, DeleteRequestLogV1RequestLogsLogIdDeleteData, GetRequestLogV1RequestLogsLogIdGetData, UpdateRequestLogV1RequestLogsLogIdPatchData, ListTrajectoriesV1TrajectoriesGetData, CreateTrajectoryV1TrajectoriesPostData, DeleteTrajectoryV1TrajectoriesTrajectoryIdDeleteData, GetTrajectoryV1TrajectoriesTrajectoryIdGetData, UpdateTrajectoryV1TrajectoriesTrajectoryIdPatchData, GetLatestTrajectoryForWorkflowV1WorkflowsWorkflowIdLatestTrajectoryGetData, GetScreenshotV1ComputerMachineIdDisplayScreenshotGetData, GetDisplayDimensionsV1ComputerMachineIdDisplayDimensionsGetData, KeyboardTypeV1ComputerMachineIdInputKeyboardTypePostData, KeyboardKeyV1ComputerMachineIdInputKeyboardKeyPostData, GetMousePositionV1ComputerMachineIdInputMousePositionGetData, MouseMoveV1ComputerMachineIdInputMouseMovePostData, MouseClickV1ComputerMachineIdInputMouseClickPostData, DummyTestEndpointV1TestPostData, RootGetData } from './types.gen';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = ClientOptions<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -14,46 +14,321 @@ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends
14
14
  meta?: Record<string, unknown>;
15
15
  };
16
16
  /**
17
- * Get details of a specific desktop instance
18
- * Returns the ID, status, creation timestamp, and timeout timestamp for a given desktop instance.
19
- */
20
- export declare const getV1DesktopById: <ThrowOnError extends boolean = false>(options: Options<GetV1DesktopByIdData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
21
- id: string;
22
- status: "pending" | "running" | "terminated" | "error";
23
- stream_url: string;
24
- created_at: string;
25
- timeout_at: string;
26
- }, GetV1DesktopByIdError, ThrowOnError>;
27
- /**
28
- * Create a new virtual desktop instance
29
- * Creates a new virtual desktop instance and returns its ID and stream URL
30
- */
31
- export declare const postV1Desktop: <ThrowOnError extends boolean = false>(options: Options<PostV1DesktopData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
32
- id: string;
33
- status: "pending" | "running" | "terminated" | "error";
34
- }, PostV1DesktopError, ThrowOnError>;
35
- /**
36
- * Stop a running desktop instance
37
- * Stops a running desktop instance and cleans up resources
38
- */
39
- export declare const postV1DesktopByIdStop: <ThrowOnError extends boolean = false>(options: Options<PostV1DesktopByIdStopData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
40
- status: "pending" | "running" | "terminated" | "error";
41
- }, PostV1DesktopByIdStopError, ThrowOnError>;
42
- /**
43
- * Perform an action on the desktop
44
- * Executes a computer action such as mouse clicks, keyboard input, or screenshots on the desktop
45
- */
46
- export declare const postV1DesktopByIdComputerAction: <ThrowOnError extends boolean = false>(options: Options<PostV1DesktopByIdComputerActionData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
47
- output?: string;
48
- error?: string;
49
- base64_image?: string;
50
- }, PostV1DesktopByIdComputerActionError, ThrowOnError>;
51
- /**
52
- * Execute a bash command on the desktop
53
- * Runs a bash command on the desktop and returns the command output
54
- */
55
- export declare const postV1DesktopByIdBashAction: <ThrowOnError extends boolean = false>(options: Options<PostV1DesktopByIdBashActionData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
56
- output?: string;
57
- error?: string;
58
- base64_image?: string;
59
- }, PostV1DesktopByIdBashActionError, ThrowOnError>;
17
+ * Health Check
18
+ * Basic health check endpoint.
19
+ *
20
+ * Returns the service status without authentication.
21
+ */
22
+ export declare const healthCheckV1HealthGet: <ThrowOnError extends boolean = false>(options?: Options<HealthCheckV1HealthGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
23
+ [key: string]: string;
24
+ }, unknown, ThrowOnError>;
25
+ /**
26
+ * Database Health Check
27
+ * Database health check endpoint.
28
+ *
29
+ * Verifies database connectivity without authentication.
30
+ */
31
+ export declare const databaseHealthCheckV1HealthDbGet: <ThrowOnError extends boolean = false>(options?: Options<DatabaseHealthCheckV1HealthDbGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
32
+ [key: string]: string;
33
+ }, unknown, ThrowOnError>;
34
+ /**
35
+ * List Machines
36
+ * List all machines for the authenticated user.
37
+ *
38
+ * Supports pagination and filtering by status.
39
+ */
40
+ export declare const listMachinesV1MachinesGet: <ThrowOnError extends boolean = false>(options?: Options<ListMachinesV1MachinesGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").PaginatedResponseMachineResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
41
+ /**
42
+ * Create Machine
43
+ * Create a new machine.
44
+ *
45
+ * The machine will be associated with the authenticated user.
46
+ */
47
+ export declare const createMachineV1MachinesPost: <ThrowOnError extends boolean = false>(options: Options<CreateMachineV1MachinesPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").MachineResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
48
+ /**
49
+ * Delete Machine
50
+ * Delete a machine.
51
+ *
52
+ * This will also delete all associated connections, request logs, and runs.
53
+ * The machine must belong to the authenticated user.
54
+ */
55
+ export declare const deleteMachineV1MachinesMachineIdDelete: <ThrowOnError extends boolean = false>(options: Options<DeleteMachineV1MachinesMachineIdDeleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
56
+ /**
57
+ * Get Machine
58
+ * Get a specific machine by ID.
59
+ *
60
+ * The machine must belong to the authenticated user.
61
+ */
62
+ export declare const getMachineV1MachinesMachineIdGet: <ThrowOnError extends boolean = false>(options: Options<GetMachineV1MachinesMachineIdGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").MachineResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
63
+ /**
64
+ * Update Machine
65
+ * Update a machine's information.
66
+ *
67
+ * Only the fields provided in the request body will be updated.
68
+ * The machine must belong to the authenticated user.
69
+ */
70
+ export declare const updateMachineV1MachinesMachineIdPatch: <ThrowOnError extends boolean = false>(options: Options<UpdateMachineV1MachinesMachineIdPatchData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").MachineResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
71
+ /**
72
+ * List Workflows
73
+ * List all workflows for the authenticated user.
74
+ *
75
+ * Supports pagination and returns workflows ordered by updated_at descending.
76
+ */
77
+ export declare const listWorkflowsV1WorkflowsGet: <ThrowOnError extends boolean = false>(options?: Options<ListWorkflowsV1WorkflowsGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").PaginatedResponseWorkflowResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
78
+ /**
79
+ * Create Workflow
80
+ * Create a new workflow.
81
+ *
82
+ * The workflow will be associated with the authenticated user.
83
+ */
84
+ export declare const createWorkflowV1WorkflowsPost: <ThrowOnError extends boolean = false>(options: Options<CreateWorkflowV1WorkflowsPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").WorkflowResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
85
+ /**
86
+ * Delete Workflow
87
+ * Delete a workflow.
88
+ *
89
+ * This will also delete all associated runs and trajectories.
90
+ * The workflow must belong to the authenticated user.
91
+ */
92
+ export declare const deleteWorkflowV1WorkflowsWorkflowIdDelete: <ThrowOnError extends boolean = false>(options: Options<DeleteWorkflowV1WorkflowsWorkflowIdDeleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
93
+ /**
94
+ * Get Workflow
95
+ * Get a specific workflow by ID.
96
+ *
97
+ * The workflow must belong to the authenticated user.
98
+ */
99
+ export declare const getWorkflowV1WorkflowsWorkflowIdGet: <ThrowOnError extends boolean = false>(options: Options<GetWorkflowV1WorkflowsWorkflowIdGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").WorkflowResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
100
+ /**
101
+ * Update Workflow
102
+ * Update a workflow's prompts.
103
+ *
104
+ * The current version will be saved to the version history.
105
+ * Only the fields provided in the request body will be updated.
106
+ * The workflow must belong to the authenticated user.
107
+ */
108
+ export declare const updateWorkflowV1WorkflowsWorkflowIdPatch: <ThrowOnError extends boolean = false>(options: Options<UpdateWorkflowV1WorkflowsWorkflowIdPatchData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").WorkflowResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
109
+ /**
110
+ * Get Workflow Versions
111
+ * Get the version history of a workflow.
112
+ *
113
+ * Returns a list of previous versions with their prompts and timestamps.
114
+ * The workflow must belong to the authenticated user.
115
+ */
116
+ export declare const getWorkflowVersionsV1WorkflowsWorkflowIdVersionsGet: <ThrowOnError extends boolean = false>(options: Options<GetWorkflowVersionsV1WorkflowsWorkflowIdVersionsGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
117
+ [key: string]: unknown;
118
+ }[], import("./types.gen").HttpValidationError, ThrowOnError>;
119
+ /**
120
+ * List Runs
121
+ * List all runs for the authenticated user.
122
+ *
123
+ * Supports pagination and filtering by workflow, machine, and status.
124
+ * Returns runs with their associated workflow and machine data.
125
+ */
126
+ export declare const listRunsV1RunsGet: <ThrowOnError extends boolean = false>(options?: Options<ListRunsV1RunsGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").PaginatedResponseRunResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
127
+ /**
128
+ * Create Run
129
+ * Create a new run.
130
+ *
131
+ * The workflow must exist and belong to the authenticated user.
132
+ * If machine_id is not provided, an available machine will be automatically selected.
133
+ * The run will be created with SCHEDULING status and a Temporal workflow will be started.
134
+ */
135
+ export declare const createRunV1RunsPost: <ThrowOnError extends boolean = false>(options: Options<CreateRunV1RunsPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").RunResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
136
+ /**
137
+ * Delete Run
138
+ * Delete a run.
139
+ *
140
+ * The run must belong to the authenticated user.
141
+ */
142
+ export declare const deleteRunV1RunsRunIdDelete: <ThrowOnError extends boolean = false>(options: Options<DeleteRunV1RunsRunIdDeleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
143
+ /**
144
+ * Get Run
145
+ * Get a specific run by ID.
146
+ *
147
+ * Returns the run with its associated workflow and machine data.
148
+ * The run must belong to the authenticated user.
149
+ */
150
+ export declare const getRunV1RunsRunIdGet: <ThrowOnError extends boolean = false>(options: Options<GetRunV1RunsRunIdGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").RunResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
151
+ /**
152
+ * Update Run
153
+ * Update a run's status and data.
154
+ *
155
+ * Can update status, error messages, output data, attachments, and message history.
156
+ * Only the fields provided in the request body will be updated.
157
+ * The run must belong to the authenticated user.
158
+ */
159
+ export declare const updateRunV1RunsRunIdPatch: <ThrowOnError extends boolean = false>(options: Options<UpdateRunV1RunsRunIdPatchData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").RunResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
160
+ /**
161
+ * List Connections
162
+ * List all connections for the authenticated user's machines.
163
+ *
164
+ * Supports pagination and filtering by machine and status.
165
+ * Returns connections with their associated machine data.
166
+ */
167
+ export declare const listConnectionsV1ConnectionsGet: <ThrowOnError extends boolean = false>(options?: Options<ListConnectionsV1ConnectionsGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").PaginatedResponseConnectionResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
168
+ /**
169
+ * Create Connection
170
+ * Create a new connection (typically done by the WebSocket handler).
171
+ *
172
+ * The machine must exist and belong to the authenticated user.
173
+ */
174
+ export declare const createConnectionV1ConnectionsPost: <ThrowOnError extends boolean = false>(options: Options<CreateConnectionV1ConnectionsPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ConnectionResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
175
+ /**
176
+ * Delete Connection
177
+ * Delete a connection (not typically used - connections are managed automatically).
178
+ *
179
+ * The connection must belong to a machine owned by the authenticated user.
180
+ */
181
+ export declare const deleteConnectionV1ConnectionsConnectionIdDelete: <ThrowOnError extends boolean = false>(options: Options<DeleteConnectionV1ConnectionsConnectionIdDeleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
182
+ /**
183
+ * Get Connection
184
+ * Get a specific connection by ID.
185
+ *
186
+ * The connection must belong to a machine owned by the authenticated user.
187
+ */
188
+ export declare const getConnectionV1ConnectionsConnectionIdGet: <ThrowOnError extends boolean = false>(options: Options<GetConnectionV1ConnectionsConnectionIdGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ConnectionResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
189
+ /**
190
+ * Update Connection
191
+ * Update a connection's status or timestamps.
192
+ *
193
+ * Only the fields provided in the request body will be updated.
194
+ * The connection must belong to a machine owned by the authenticated user.
195
+ */
196
+ export declare const updateConnectionV1ConnectionsConnectionIdPatch: <ThrowOnError extends boolean = false>(options: Options<UpdateConnectionV1ConnectionsConnectionIdPatchData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ConnectionResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
197
+ /**
198
+ * List Request Logs
199
+ * List all request logs for the authenticated user's machines.
200
+ *
201
+ * Supports pagination and filtering by machine, HTTP method, and status code.
202
+ */
203
+ export declare const listRequestLogsV1RequestLogsGet: <ThrowOnError extends boolean = false>(options?: Options<ListRequestLogsV1RequestLogsGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").PaginatedResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
204
+ /**
205
+ * Create Request Log
206
+ * Create a new request log.
207
+ *
208
+ * The machine must exist and belong to the authenticated user.
209
+ * This is typically called when a request is initiated.
210
+ */
211
+ export declare const createRequestLogV1RequestLogsPost: <ThrowOnError extends boolean = false>(options: Options<CreateRequestLogV1RequestLogsPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").RequestLogResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
212
+ /**
213
+ * Delete Request Log
214
+ * Delete a request log (not typically used - logs are kept for analytics).
215
+ *
216
+ * The log must belong to a machine owned by the authenticated user.
217
+ */
218
+ export declare const deleteRequestLogV1RequestLogsLogIdDelete: <ThrowOnError extends boolean = false>(options: Options<DeleteRequestLogV1RequestLogsLogIdDeleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
219
+ /**
220
+ * Get Request Log
221
+ * Get a specific request log by ID.
222
+ *
223
+ * The log must belong to a machine owned by the authenticated user.
224
+ */
225
+ export declare const getRequestLogV1RequestLogsLogIdGet: <ThrowOnError extends boolean = false>(options: Options<GetRequestLogV1RequestLogsLogIdGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").RequestLogResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
226
+ /**
227
+ * Update Request Log
228
+ * Update a request log with response data.
229
+ *
230
+ * This is typically called when a request completes to add the response details.
231
+ * Only the fields provided in the request body will be updated.
232
+ * The log must belong to a machine owned by the authenticated user.
233
+ */
234
+ export declare const updateRequestLogV1RequestLogsLogIdPatch: <ThrowOnError extends boolean = false>(options: Options<UpdateRequestLogV1RequestLogsLogIdPatchData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").RequestLogResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
235
+ /**
236
+ * List Trajectories
237
+ * List all trajectories for the authenticated user.
238
+ *
239
+ * Supports pagination and filtering by workflow.
240
+ * Returns trajectories with their associated workflow data.
241
+ */
242
+ export declare const listTrajectoriesV1TrajectoriesGet: <ThrowOnError extends boolean = false>(options?: Options<ListTrajectoriesV1TrajectoriesGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").PaginatedResponseTrajectoryResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
243
+ /**
244
+ * Create Trajectory
245
+ * Create a new trajectory for a workflow.
246
+ *
247
+ * The workflow must exist and belong to the authenticated user.
248
+ * The trajectory_data must contain at least one item.
249
+ */
250
+ export declare const createTrajectoryV1TrajectoriesPost: <ThrowOnError extends boolean = false>(options: Options<CreateTrajectoryV1TrajectoriesPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").TrajectoryResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
251
+ /**
252
+ * Delete Trajectory
253
+ * Delete a trajectory.
254
+ *
255
+ * The trajectory must belong to the authenticated user.
256
+ */
257
+ export declare const deleteTrajectoryV1TrajectoriesTrajectoryIdDelete: <ThrowOnError extends boolean = false>(options: Options<DeleteTrajectoryV1TrajectoriesTrajectoryIdDeleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
258
+ /**
259
+ * Get Trajectory
260
+ * Get a specific trajectory by ID.
261
+ *
262
+ * Returns the trajectory with its associated workflow data.
263
+ * The trajectory must belong to the authenticated user.
264
+ */
265
+ export declare const getTrajectoryV1TrajectoriesTrajectoryIdGet: <ThrowOnError extends boolean = false>(options: Options<GetTrajectoryV1TrajectoriesTrajectoryIdGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").TrajectoryResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
266
+ /**
267
+ * Update Trajectory
268
+ * Update a trajectory's data.
269
+ *
270
+ * Only the fields provided in the request body will be updated.
271
+ * The trajectory must belong to the authenticated user.
272
+ */
273
+ export declare const updateTrajectoryV1TrajectoriesTrajectoryIdPatch: <ThrowOnError extends boolean = false>(options: Options<UpdateTrajectoryV1TrajectoriesTrajectoryIdPatchData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").TrajectoryResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
274
+ /**
275
+ * Get Latest Trajectory For Workflow
276
+ * Get the latest trajectory for a specific workflow.
277
+ *
278
+ * Returns the most recently updated trajectory for the workflow.
279
+ * The workflow must belong to the authenticated user.
280
+ */
281
+ export declare const getLatestTrajectoryForWorkflowV1WorkflowsWorkflowIdLatestTrajectoryGet: <ThrowOnError extends boolean = false>(options: Options<GetLatestTrajectoryForWorkflowV1WorkflowsWorkflowIdLatestTrajectoryGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").TrajectoryResponse, import("./types.gen").HttpValidationError, ThrowOnError>;
282
+ /**
283
+ * Take a screenshot
284
+ * Take a screenshot of the machine's display.
285
+ */
286
+ export declare const getScreenshotV1ComputerMachineIdDisplayScreenshotGet: <ThrowOnError extends boolean = false>(options: Options<GetScreenshotV1ComputerMachineIdDisplayScreenshotGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<unknown, import("./types.gen").HttpValidationError, ThrowOnError>;
287
+ /**
288
+ * Get display dimensions
289
+ * Get the display dimensions of the machine.
290
+ */
291
+ export declare const getDisplayDimensionsV1ComputerMachineIdDisplayDimensionsGet: <ThrowOnError extends boolean = false>(options: Options<GetDisplayDimensionsV1ComputerMachineIdDisplayDimensionsGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").DisplayDimensions, import("./types.gen").HttpValidationError, ThrowOnError>;
292
+ /**
293
+ * Type text
294
+ * Type text on the machine's keyboard.
295
+ */
296
+ export declare const keyboardTypeV1ComputerMachineIdInputKeyboardTypePost: <ThrowOnError extends boolean = false>(options: Options<KeyboardTypeV1ComputerMachineIdInputKeyboardTypePostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
297
+ /**
298
+ * Send key combination
299
+ * Send a key combination (e.g., 'ctrl+a', 'alt+tab'). Uses 'keys' field to match Piglet expectations.
300
+ */
301
+ export declare const keyboardKeyV1ComputerMachineIdInputKeyboardKeyPost: <ThrowOnError extends boolean = false>(options: Options<KeyboardKeyV1ComputerMachineIdInputKeyboardKeyPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
302
+ /**
303
+ * Get mouse position
304
+ * Get the current mouse cursor position.
305
+ */
306
+ export declare const getMousePositionV1ComputerMachineIdInputMousePositionGet: <ThrowOnError extends boolean = false>(options: Options<GetMousePositionV1ComputerMachineIdInputMousePositionGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").MousePosition, import("./types.gen").HttpValidationError, ThrowOnError>;
307
+ /**
308
+ * Move mouse cursor
309
+ * Move the mouse cursor to specified coordinates.
310
+ */
311
+ export declare const mouseMoveV1ComputerMachineIdInputMouseMovePost: <ThrowOnError extends boolean = false>(options: Options<MouseMoveV1ComputerMachineIdInputMouseMovePostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
312
+ /**
313
+ * Click mouse button
314
+ * Click the mouse button at specified coordinates.
315
+ * If coordinates are not provided, clicks at current position.
316
+ */
317
+ export declare const mouseClickV1ComputerMachineIdInputMouseClickPost: <ThrowOnError extends boolean = false>(options: Options<MouseClickV1ComputerMachineIdInputMouseClickPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<void, import("./types.gen").HttpValidationError, ThrowOnError>;
318
+ /**
319
+ * Dummy Test Endpoint
320
+ * Test endpoint that performs a sequence of actions:
321
+ * 1. Click at three different places
322
+ * 2. Right click
323
+ * 3. Take a screenshot
324
+ *
325
+ * Returns all action results and the screenshot base64.
326
+ */
327
+ export declare const dummyTestEndpointV1TestPost: <ThrowOnError extends boolean = false>(options?: Options<DummyTestEndpointV1TestPostData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
328
+ [key: string]: unknown;
329
+ }, unknown, ThrowOnError>;
330
+ /**
331
+ * Root
332
+ * Root endpoint with service information
333
+ */
334
+ export declare const rootGet: <ThrowOnError extends boolean = false>(options?: Options<RootGetData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<unknown, unknown, ThrowOnError>;