@icebro/actionhero
Version:
The reusable, scalable, and quick node.js API server for stateless and stateful applications
13 lines (12 loc) • 776 B
TypeScript
import { Input } from "./input";
import { Action } from "../classes/action";
import { Task } from "../classes/task";
import { CLI } from "../classes/cli";
export interface Inputs {
[key: string]: Input;
}
export declare type ParamsFrom<A extends Action | Task | CLI> = A extends CLI ? {
[Input in keyof A["inputs"]]: A["inputs"][Input]["variadic"] extends true ? A["inputs"][Input]["formatter"] extends (...ags: any[]) => any ? ReturnType<A["inputs"][Input]["formatter"]>[] : string[] : A["inputs"][Input]["formatter"] extends (...ags: any[]) => any ? ReturnType<A["inputs"][Input]["formatter"]> : string;
} : {
[Input in keyof A["inputs"]]: A["inputs"][Input]["formatter"] extends (...ags: any[]) => any ? ReturnType<A["inputs"][Input]["formatter"]> : string;
};