@glyphtek/scriptit
Version:
A cross-runtime CLI and library for running scripts with environment management, TUI, and support for lambda functions. Optimized for Bun with compatibility for Node.js and Deno.
38 lines • 1.33 kB
TypeScript
export interface ColoredConsole {
log: (...args: unknown[]) => void;
error: (...args: unknown[]) => void;
warn: (...args: unknown[]) => void;
info: (...args: unknown[]) => void;
debug: (...args: unknown[]) => void;
}
export interface VariableDefinition {
name: string;
message?: string;
type?: "input" | "password";
}
export interface ScriptContext {
env: Record<string, string | undefined>;
tmpDir: string;
params: Record<string, unknown>;
configPath?: string;
log: (message: string) => void;
console?: ColoredConsole;
[key: string]: unknown;
}
export interface ScriptModule {
tearUp?: (context: ScriptContext) => Promise<unknown> | unknown;
execute?: (context: ScriptContext, tearUpResult?: unknown) => Promise<unknown> | unknown;
tearDown?: (context: ScriptContext, executeResult?: unknown, tearUpResult?: unknown) => Promise<void> | void;
description?: string;
default?: (context: ScriptContext, tearUpResult?: unknown) => Promise<unknown> | unknown;
variables?: VariableDefinition[] | string[];
}
export interface RunnerConfig {
scriptsDir: string;
tmpDir: string;
envFiles: string[];
defaultParams?: Record<string, unknown>;
loadedConfigPath?: string;
excludePatterns?: string[];
}
//# sourceMappingURL=types.d.ts.map