mirror of
https://github.com/aljazceru/opencode.git
synced 2026-01-17 14:54:56 +01:00
- Added 5-second timeout to MCP client verification to prevent hanging connections - New GET /mcp endpoint to monitor server connection status - Automatically removes unresponsive MCP clients during initialization
746 lines
21 KiB
TypeScript
746 lines
21 KiB
TypeScript
// This file is auto-generated by @hey-api/openapi-ts
|
|
|
|
import type { Options as ClientOptions, TDataShape, Client } from "./client/index.js"
|
|
import type {
|
|
ProjectListData,
|
|
ProjectListResponses,
|
|
ProjectCurrentData,
|
|
ProjectCurrentResponses,
|
|
ConfigGetData,
|
|
ConfigGetResponses,
|
|
ConfigUpdateData,
|
|
ConfigUpdateResponses,
|
|
ConfigUpdateErrors,
|
|
ToolIdsData,
|
|
ToolIdsResponses,
|
|
ToolIdsErrors,
|
|
ToolListData,
|
|
ToolListResponses,
|
|
ToolListErrors,
|
|
PathGetData,
|
|
PathGetResponses,
|
|
SessionListData,
|
|
SessionListResponses,
|
|
SessionCreateData,
|
|
SessionCreateResponses,
|
|
SessionCreateErrors,
|
|
SessionDeleteData,
|
|
SessionDeleteResponses,
|
|
SessionGetData,
|
|
SessionGetResponses,
|
|
SessionUpdateData,
|
|
SessionUpdateResponses,
|
|
SessionChildrenData,
|
|
SessionChildrenResponses,
|
|
SessionTodoData,
|
|
SessionTodoResponses,
|
|
SessionInitData,
|
|
SessionInitResponses,
|
|
SessionForkData,
|
|
SessionForkResponses,
|
|
SessionAbortData,
|
|
SessionAbortResponses,
|
|
SessionUnshareData,
|
|
SessionUnshareResponses,
|
|
SessionShareData,
|
|
SessionShareResponses,
|
|
SessionSummarizeData,
|
|
SessionSummarizeResponses,
|
|
SessionMessagesData,
|
|
SessionMessagesResponses,
|
|
SessionPromptData,
|
|
SessionPromptResponses,
|
|
SessionMessageData,
|
|
SessionMessageResponses,
|
|
SessionCommandData,
|
|
SessionCommandResponses,
|
|
SessionShellData,
|
|
SessionShellResponses,
|
|
SessionRevertData,
|
|
SessionRevertResponses,
|
|
SessionUnrevertData,
|
|
SessionUnrevertResponses,
|
|
PostSessionIdPermissionsPermissionIdData,
|
|
PostSessionIdPermissionsPermissionIdResponses,
|
|
CommandListData,
|
|
CommandListResponses,
|
|
ConfigProvidersData,
|
|
ConfigProvidersResponses,
|
|
FindTextData,
|
|
FindTextResponses,
|
|
FindFilesData,
|
|
FindFilesResponses,
|
|
FindSymbolsData,
|
|
FindSymbolsResponses,
|
|
FileListData,
|
|
FileListResponses,
|
|
FileReadData,
|
|
FileReadResponses,
|
|
FileStatusData,
|
|
FileStatusResponses,
|
|
AppLogData,
|
|
AppLogResponses,
|
|
AppAgentsData,
|
|
AppAgentsResponses,
|
|
McpStatusData,
|
|
McpStatusResponses,
|
|
TuiAppendPromptData,
|
|
TuiAppendPromptResponses,
|
|
TuiOpenHelpData,
|
|
TuiOpenHelpResponses,
|
|
TuiOpenSessionsData,
|
|
TuiOpenSessionsResponses,
|
|
TuiOpenThemesData,
|
|
TuiOpenThemesResponses,
|
|
TuiOpenModelsData,
|
|
TuiOpenModelsResponses,
|
|
TuiSubmitPromptData,
|
|
TuiSubmitPromptResponses,
|
|
TuiClearPromptData,
|
|
TuiClearPromptResponses,
|
|
TuiExecuteCommandData,
|
|
TuiExecuteCommandResponses,
|
|
TuiShowToastData,
|
|
TuiShowToastResponses,
|
|
AuthSetData,
|
|
AuthSetResponses,
|
|
AuthSetErrors,
|
|
EventSubscribeData,
|
|
EventSubscribeResponses,
|
|
} from "./types.gen.js"
|
|
import { client as _heyApiClient } from "./client.gen.js"
|
|
|
|
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = ClientOptions<
|
|
TData,
|
|
ThrowOnError
|
|
> & {
|
|
/**
|
|
* You can provide a client instance returned by `createClient()` instead of
|
|
* individual options. This might be also useful if you want to implement a
|
|
* custom client.
|
|
*/
|
|
client?: Client
|
|
/**
|
|
* You can pass arbitrary values through the `meta` object. This can be
|
|
* used to access values that aren't defined as part of the SDK function.
|
|
*/
|
|
meta?: Record<string, unknown>
|
|
}
|
|
|
|
class _HeyApiClient {
|
|
protected _client: Client = _heyApiClient
|
|
|
|
constructor(args?: { client?: Client }) {
|
|
if (args?.client) {
|
|
this._client = args.client
|
|
}
|
|
}
|
|
}
|
|
|
|
class Project extends _HeyApiClient {
|
|
/**
|
|
* List all projects
|
|
*/
|
|
public list<ThrowOnError extends boolean = false>(options?: Options<ProjectListData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<ProjectListResponses, unknown, ThrowOnError>({
|
|
url: "/project",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Get the current project
|
|
*/
|
|
public current<ThrowOnError extends boolean = false>(options?: Options<ProjectCurrentData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<ProjectCurrentResponses, unknown, ThrowOnError>({
|
|
url: "/project/current",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Config extends _HeyApiClient {
|
|
/**
|
|
* Get config info
|
|
*/
|
|
public get<ThrowOnError extends boolean = false>(options?: Options<ConfigGetData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<ConfigGetResponses, unknown, ThrowOnError>({
|
|
url: "/config",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Update config
|
|
*/
|
|
public update<ThrowOnError extends boolean = false>(options?: Options<ConfigUpdateData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).patch<ConfigUpdateResponses, ConfigUpdateErrors, ThrowOnError>({
|
|
url: "/config",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options?.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* List all providers
|
|
*/
|
|
public providers<ThrowOnError extends boolean = false>(options?: Options<ConfigProvidersData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<ConfigProvidersResponses, unknown, ThrowOnError>({
|
|
url: "/config/providers",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Tool extends _HeyApiClient {
|
|
/**
|
|
* List all tool IDs (including built-in and dynamically registered)
|
|
*/
|
|
public ids<ThrowOnError extends boolean = false>(options?: Options<ToolIdsData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<ToolIdsResponses, ToolIdsErrors, ThrowOnError>({
|
|
url: "/experimental/tool/ids",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* List tools with JSON schema parameters for a provider/model
|
|
*/
|
|
public list<ThrowOnError extends boolean = false>(options: Options<ToolListData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<ToolListResponses, ToolListErrors, ThrowOnError>({
|
|
url: "/experimental/tool",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Path extends _HeyApiClient {
|
|
/**
|
|
* Get the current path
|
|
*/
|
|
public get<ThrowOnError extends boolean = false>(options?: Options<PathGetData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<PathGetResponses, unknown, ThrowOnError>({
|
|
url: "/path",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Session extends _HeyApiClient {
|
|
/**
|
|
* List all sessions
|
|
*/
|
|
public list<ThrowOnError extends boolean = false>(options?: Options<SessionListData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<SessionListResponses, unknown, ThrowOnError>({
|
|
url: "/session",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Create a new session
|
|
*/
|
|
public create<ThrowOnError extends boolean = false>(options?: Options<SessionCreateData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<SessionCreateResponses, SessionCreateErrors, ThrowOnError>({
|
|
url: "/session",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options?.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Delete a session and all its data
|
|
*/
|
|
public delete<ThrowOnError extends boolean = false>(options: Options<SessionDeleteData, ThrowOnError>) {
|
|
return (options.client ?? this._client).delete<SessionDeleteResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Get session
|
|
*/
|
|
public get<ThrowOnError extends boolean = false>(options: Options<SessionGetData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<SessionGetResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Update session properties
|
|
*/
|
|
public update<ThrowOnError extends boolean = false>(options: Options<SessionUpdateData, ThrowOnError>) {
|
|
return (options.client ?? this._client).patch<SessionUpdateResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Get a session's children
|
|
*/
|
|
public children<ThrowOnError extends boolean = false>(options: Options<SessionChildrenData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<SessionChildrenResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/children",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Get the todo list for a session
|
|
*/
|
|
public todo<ThrowOnError extends boolean = false>(options: Options<SessionTodoData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<SessionTodoResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/todo",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Analyze the app and create an AGENTS.md file
|
|
*/
|
|
public init<ThrowOnError extends boolean = false>(options: Options<SessionInitData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionInitResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/init",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Fork an existing session at a specific message
|
|
*/
|
|
public fork<ThrowOnError extends boolean = false>(options: Options<SessionForkData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionForkResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/fork",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Abort a session
|
|
*/
|
|
public abort<ThrowOnError extends boolean = false>(options: Options<SessionAbortData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionAbortResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/abort",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Unshare the session
|
|
*/
|
|
public unshare<ThrowOnError extends boolean = false>(options: Options<SessionUnshareData, ThrowOnError>) {
|
|
return (options.client ?? this._client).delete<SessionUnshareResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/share",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Share a session
|
|
*/
|
|
public share<ThrowOnError extends boolean = false>(options: Options<SessionShareData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionShareResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/share",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Summarize the session
|
|
*/
|
|
public summarize<ThrowOnError extends boolean = false>(options: Options<SessionSummarizeData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionSummarizeResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/summarize",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* List messages for a session
|
|
*/
|
|
public messages<ThrowOnError extends boolean = false>(options: Options<SessionMessagesData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<SessionMessagesResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/message",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Create and send a new message to a session
|
|
*/
|
|
public prompt<ThrowOnError extends boolean = false>(options: Options<SessionPromptData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionPromptResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/message",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Get a message from a session
|
|
*/
|
|
public message<ThrowOnError extends boolean = false>(options: Options<SessionMessageData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<SessionMessageResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/message/{messageID}",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Send a new command to a session
|
|
*/
|
|
public command<ThrowOnError extends boolean = false>(options: Options<SessionCommandData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionCommandResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/command",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Run a shell command
|
|
*/
|
|
public shell<ThrowOnError extends boolean = false>(options: Options<SessionShellData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionShellResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/shell",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Revert a message
|
|
*/
|
|
public revert<ThrowOnError extends boolean = false>(options: Options<SessionRevertData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionRevertResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/revert",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Restore all reverted messages
|
|
*/
|
|
public unrevert<ThrowOnError extends boolean = false>(options: Options<SessionUnrevertData, ThrowOnError>) {
|
|
return (options.client ?? this._client).post<SessionUnrevertResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/unrevert",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Command extends _HeyApiClient {
|
|
/**
|
|
* List all commands
|
|
*/
|
|
public list<ThrowOnError extends boolean = false>(options?: Options<CommandListData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<CommandListResponses, unknown, ThrowOnError>({
|
|
url: "/command",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Find extends _HeyApiClient {
|
|
/**
|
|
* Find text in files
|
|
*/
|
|
public text<ThrowOnError extends boolean = false>(options: Options<FindTextData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<FindTextResponses, unknown, ThrowOnError>({
|
|
url: "/find",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Find files
|
|
*/
|
|
public files<ThrowOnError extends boolean = false>(options: Options<FindFilesData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<FindFilesResponses, unknown, ThrowOnError>({
|
|
url: "/find/file",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Find workspace symbols
|
|
*/
|
|
public symbols<ThrowOnError extends boolean = false>(options: Options<FindSymbolsData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<FindSymbolsResponses, unknown, ThrowOnError>({
|
|
url: "/find/symbol",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class File extends _HeyApiClient {
|
|
/**
|
|
* List files and directories
|
|
*/
|
|
public list<ThrowOnError extends boolean = false>(options: Options<FileListData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<FileListResponses, unknown, ThrowOnError>({
|
|
url: "/file",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Read a file
|
|
*/
|
|
public read<ThrowOnError extends boolean = false>(options: Options<FileReadData, ThrowOnError>) {
|
|
return (options.client ?? this._client).get<FileReadResponses, unknown, ThrowOnError>({
|
|
url: "/file/content",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Get file status
|
|
*/
|
|
public status<ThrowOnError extends boolean = false>(options?: Options<FileStatusData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<FileStatusResponses, unknown, ThrowOnError>({
|
|
url: "/file/status",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class App extends _HeyApiClient {
|
|
/**
|
|
* Write a log entry to the server logs
|
|
*/
|
|
public log<ThrowOnError extends boolean = false>(options?: Options<AppLogData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<AppLogResponses, unknown, ThrowOnError>({
|
|
url: "/log",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options?.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* List all agents
|
|
*/
|
|
public agents<ThrowOnError extends boolean = false>(options?: Options<AppAgentsData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<AppAgentsResponses, unknown, ThrowOnError>({
|
|
url: "/agent",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Mcp extends _HeyApiClient {
|
|
/**
|
|
* Get MCP server status
|
|
*/
|
|
public status<ThrowOnError extends boolean = false>(options?: Options<McpStatusData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get<McpStatusResponses, unknown, ThrowOnError>({
|
|
url: "/mcp",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
class Tui extends _HeyApiClient {
|
|
/**
|
|
* Append prompt to the TUI
|
|
*/
|
|
public appendPrompt<ThrowOnError extends boolean = false>(options?: Options<TuiAppendPromptData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiAppendPromptResponses, unknown, ThrowOnError>({
|
|
url: "/tui/append-prompt",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options?.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Open the help dialog
|
|
*/
|
|
public openHelp<ThrowOnError extends boolean = false>(options?: Options<TuiOpenHelpData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiOpenHelpResponses, unknown, ThrowOnError>({
|
|
url: "/tui/open-help",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Open the session dialog
|
|
*/
|
|
public openSessions<ThrowOnError extends boolean = false>(options?: Options<TuiOpenSessionsData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiOpenSessionsResponses, unknown, ThrowOnError>({
|
|
url: "/tui/open-sessions",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Open the theme dialog
|
|
*/
|
|
public openThemes<ThrowOnError extends boolean = false>(options?: Options<TuiOpenThemesData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiOpenThemesResponses, unknown, ThrowOnError>({
|
|
url: "/tui/open-themes",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Open the model dialog
|
|
*/
|
|
public openModels<ThrowOnError extends boolean = false>(options?: Options<TuiOpenModelsData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiOpenModelsResponses, unknown, ThrowOnError>({
|
|
url: "/tui/open-models",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Submit the prompt
|
|
*/
|
|
public submitPrompt<ThrowOnError extends boolean = false>(options?: Options<TuiSubmitPromptData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiSubmitPromptResponses, unknown, ThrowOnError>({
|
|
url: "/tui/submit-prompt",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Clear the prompt
|
|
*/
|
|
public clearPrompt<ThrowOnError extends boolean = false>(options?: Options<TuiClearPromptData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiClearPromptResponses, unknown, ThrowOnError>({
|
|
url: "/tui/clear-prompt",
|
|
...options,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Execute a TUI command (e.g. agent_cycle)
|
|
*/
|
|
public executeCommand<ThrowOnError extends boolean = false>(options?: Options<TuiExecuteCommandData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiExecuteCommandResponses, unknown, ThrowOnError>({
|
|
url: "/tui/execute-command",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options?.headers,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* Show a toast notification in the TUI
|
|
*/
|
|
public showToast<ThrowOnError extends boolean = false>(options?: Options<TuiShowToastData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).post<TuiShowToastResponses, unknown, ThrowOnError>({
|
|
url: "/tui/show-toast",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options?.headers,
|
|
},
|
|
})
|
|
}
|
|
}
|
|
|
|
class Auth extends _HeyApiClient {
|
|
/**
|
|
* Set authentication credentials
|
|
*/
|
|
public set<ThrowOnError extends boolean = false>(options: Options<AuthSetData, ThrowOnError>) {
|
|
return (options.client ?? this._client).put<AuthSetResponses, AuthSetErrors, ThrowOnError>({
|
|
url: "/auth/{id}",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
}
|
|
|
|
class Event extends _HeyApiClient {
|
|
/**
|
|
* Get events
|
|
*/
|
|
public subscribe<ThrowOnError extends boolean = false>(options?: Options<EventSubscribeData, ThrowOnError>) {
|
|
return (options?.client ?? this._client).get.sse<EventSubscribeResponses, unknown, ThrowOnError>({
|
|
url: "/event",
|
|
...options,
|
|
})
|
|
}
|
|
}
|
|
|
|
export class OpencodeClient extends _HeyApiClient {
|
|
/**
|
|
* Respond to a permission request
|
|
*/
|
|
public postSessionIdPermissionsPermissionId<ThrowOnError extends boolean = false>(
|
|
options: Options<PostSessionIdPermissionsPermissionIdData, ThrowOnError>,
|
|
) {
|
|
return (options.client ?? this._client).post<PostSessionIdPermissionsPermissionIdResponses, unknown, ThrowOnError>({
|
|
url: "/session/{id}/permissions/{permissionID}",
|
|
...options,
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
...options.headers,
|
|
},
|
|
})
|
|
}
|
|
project = new Project({ client: this._client })
|
|
config = new Config({ client: this._client })
|
|
tool = new Tool({ client: this._client })
|
|
path = new Path({ client: this._client })
|
|
session = new Session({ client: this._client })
|
|
command = new Command({ client: this._client })
|
|
find = new Find({ client: this._client })
|
|
file = new File({ client: this._client })
|
|
app = new App({ client: this._client })
|
|
mcp = new Mcp({ client: this._client })
|
|
tui = new Tui({ client: this._client })
|
|
auth = new Auth({ client: this._client })
|
|
event = new Event({ client: this._client })
|
|
}
|