auto-gpt-ts
Version:
my take of Auto-GPT in typescript
36 lines (35 loc) • 1.33 kB
TypeScript
import "reflect-metadata";
import { Loggable } from "../logging";
export declare class Command extends Loggable {
name: string;
description: string;
method: CallableFunction;
enabled: boolean;
aliases: string[];
disabledReason: string | null;
signature: string;
constructor(name: string, description: string, method: CallableFunction, signature?: string, enabled?: boolean, aliases?: string[], disabledReason?: string | null);
call(...args: any[]): any;
toString(): string;
}
export declare class CommandRegistry {
commands: {
[name: string]: Command;
};
getAllCommands(): Command[];
register(cmd: Command): void;
unregister(commandName: string): void;
getCommand(name: string): Command;
call(command_name: string, ...args: any[]): any;
commandPrompt(): string;
importCommands(module_name: string): Promise<void>;
}
export declare const CommandDecorator: <N extends string, T extends (new (...args: any[]) => {}) & Record<N, (...params: any) => any>>({ name, description, signature, enabled, disabledReason, register, aliases }: {
name: keyof T & N & string;
description: string;
signature?: string;
enabled?: boolean;
disabledReason?: string;
register?: boolean;
aliases?: string[];
}) => (target: T, _?: any) => any;