14 lines
396 B
TypeScript
14 lines
396 B
TypeScript
import type { TerminalBlock } from "./cli/TerminalLayout.ts";
|
|
|
|
export type ToolFunc<T extends unknown[]> = (...args: T) => Promise<void>;
|
|
export interface ITool {
|
|
name: string;
|
|
description: string;
|
|
run: ToolFunc<any[]>;
|
|
help?: () => Promise<void> | void;
|
|
done?: () => Promise<void> | void;
|
|
setBlock?: (block: TerminalBlock) => void;
|
|
}
|
|
|
|
export type callback = (...args: any[]) => any;
|