UNPKG

@devbookhq/sdk

Version:

SDK for managing Devbook sessions from JavaScript/TypeScript

39 lines (31 loc) 1.13 kB
import { EnvVars } from './envVars' import { OutStderrResponse, OutStdoutResponse } from './out' export const codeSnippetService = 'codeSnippet' export enum CodeSnippetExecState { Running = 'Running', Stopped = 'Stopped', } export interface OpenedPort { State: string Ip: string Port: number } export type CodeSnippetStateHandler = (state: CodeSnippetExecState) => void export type CodeSnippetStderrHandler = (o: OutStderrResponse) => void export type CodeSnippetStdoutHandler = (o: OutStdoutResponse) => void export type ScanOpenedPortsHandler = (ports: OpenedPort[]) => void export type CodeSnippetSubscriptionHandler = | CodeSnippetStateHandler | CodeSnippetStderrHandler | CodeSnippetStdoutHandler | ScanOpenedPortsHandler export type CodeSnippetSubscriptionHandlerType = { state: CodeSnippetStateHandler stderr: CodeSnippetStderrHandler stdout: CodeSnippetStdoutHandler scanOpenedPorts: ScanOpenedPortsHandler } export interface CodeSnippetManager { readonly run: (code: string, envVars?: EnvVars) => Promise<CodeSnippetExecState> readonly stop: () => Promise<CodeSnippetExecState> }