@codesandbox/sdk
Version:
The CodeSandbox SDK
175 lines (174 loc) • 3.92 kB
TypeScript
import { NestedKey } from "./types";
export interface PitcherCapabilities {
client?: {
status?: boolean;
list?: boolean;
};
file?: {
status?: boolean;
openClose?: boolean;
openByPath?: boolean;
save?: boolean;
ot?: boolean;
selection?: boolean;
};
fs?: {
raw?: boolean;
read?: boolean;
operations?: boolean;
search?: boolean;
streamingSearch?: boolean;
pathSearch?: boolean;
};
git?: {
status?: boolean;
targetDiff?: boolean;
pull?: boolean;
discard?: boolean;
commit?: boolean;
renameBranch?: boolean;
};
language?: {
list?: boolean;
pitcherLsp?: boolean;
};
port?: {
list?: boolean;
status?: boolean;
};
setup?: {
get?: boolean;
skip?: boolean;
skipAll?: boolean;
setStep?: boolean;
progress?: boolean;
};
shell?: {
io?: boolean;
list?: boolean;
openClose?: boolean;
createTerminate?: boolean;
restart?: boolean;
resize?: boolean;
status?: boolean;
};
task?: {
list?: boolean;
run?: boolean;
stop?: boolean;
runCommand?: boolean;
create?: boolean;
update?: boolean;
saveToConfig?: boolean;
generateConfig?: boolean;
createSetupTasks?: boolean;
};
channel?: {
subscribe?: boolean;
message?: boolean;
};
system?: {
hibernation?: boolean;
update?: boolean;
metrics: boolean;
containers?: boolean;
};
command?: {
list?: boolean;
execute?: boolean;
};
ai?: {
raw?: number;
suggestCommit?: number;
chat?: number;
embeddings?: number;
};
box?: {
installDependencies?: boolean;
installedDependencies?: boolean;
};
}
interface BasePitcherPermissions {
file: {
open: boolean;
documentOperation: boolean;
documentSelection: boolean;
save: boolean;
documentAck: boolean;
close: boolean;
};
fs: {
read: boolean;
operation: boolean;
search: boolean;
pathSearch: boolean;
upload: boolean;
download: boolean;
};
language: {
list: boolean;
lspRead: boolean;
lspWrite: boolean;
};
git: {
status: boolean;
pull: boolean;
commit: boolean;
discard: boolean;
renameBranch: boolean;
remoteContent: boolean;
diffStatus: boolean;
remotes: boolean;
push: boolean;
};
setup: {
get: boolean;
skip: boolean;
skipAll: boolean;
setStep: boolean;
enable: boolean;
disable: boolean;
init: boolean;
};
shell: {
create: boolean;
write: boolean;
list: boolean;
open: boolean;
close: boolean;
restart: boolean;
terminate: boolean;
resize: boolean;
};
task: {
list: boolean;
run: boolean;
stop: boolean;
runCommand: boolean;
create: boolean;
update: boolean;
saveToConfig: boolean;
generateConfig: boolean;
createSetupTasks: boolean;
};
command: {
list: boolean;
execute: boolean;
};
system: {
update: boolean;
hibernate: boolean;
metrics: boolean;
containers: boolean;
};
ai: {
suggest?: boolean;
explain?: boolean;
raw?: boolean;
chat?: boolean;
embeddings?: boolean;
};
}
export type PitcherPermissions = Partial<BasePitcherPermissions>;
export type PitcherPermissionKeys = NestedKey<BasePitcherPermissions>;
export {};