gadget/packages/api/src/messages/ide.ts

54 lines
1.1 KiB
TypeScript

// src/messages/ide.ts
// Copyright (C) 2026 Rob Colbert <rob.colbert@openplatform.us>
// Licensed under the Apache License, Version 2.0
import { IChatSession } from "../interfaces/chat-session.ts";
import { IDroneRegistration } from "../interfaces/drone-registration.ts";
import { IProject } from "../interfaces/project.ts";
/*
* requestSessionLock
*/
export type RequestSessionLockCallback = (
success: boolean,
chatSessionId: string,
) => void;
export type RequestSessionLockMessage = (
registration: IDroneRegistration,
project: IProject,
chatSession: IChatSession,
cb: RequestSessionLockCallback,
) => void;
/*
* requestWorkspaceMode
*/
export enum WorkspaceMode {
Idle = "idle",
Syncing = "syncing",
User = "user",
Agent = "agent",
}
export type RequestWorkspaceModeCallback = (
success: boolean,
mode: WorkspaceMode,
) => void;
export type RequestWorkspaceModeMessage = (
registration: IDroneRegistration,
project: IProject,
chatSession: IChatSession,
mode: WorkspaceMode,
cb: RequestWorkspaceModeCallback,
) => void;
/*
* submitPrompt
*/
export type SubmitPromptMessage = (prompt: string) => void;