@rawcmd/core
Version:
Rawcmd core package.
29 lines (28 loc) • 981 B
TypeScript
import { SimpleResolver, ParserRecipe, ValidatorRecipe, HandlerRecipe } from '@rawmodel/core';
export declare type CommandOptionData = (CommandOption | CommandOptionRecipe | (() => (CommandOption | CommandOptionRecipe)));
export interface CommandOptionRecipe {
name: string;
alias?: string;
description?: string;
getter?: SimpleResolver;
setter?: SimpleResolver;
parser?: ParserRecipe;
defaultValue?: any | SimpleResolver;
emptyValue?: any | SimpleResolver;
validators?: ValidatorRecipe[];
handlers?: HandlerRecipe[];
}
export declare class CommandOption {
name: string;
alias: string;
description: string;
setter: SimpleResolver;
getter: SimpleResolver;
parser: ParserRecipe;
defaultValue: any | SimpleResolver;
emptyValue: any | SimpleResolver;
validators: ValidatorRecipe[];
handlers: HandlerRecipe[];
constructor(recipe?: CommandOptionRecipe);
clone(recipe?: CommandOptionRecipe): this;
}