import Command from "./command"; import Argument from "./argument"; import Option from "./option"; export interface ErrorParameters { message?: string; reason: ErrorReason; parts: string[]; params?: { origin: Argument; arg: string; } | { origin: Argument; opts: any; args: string[]; } | { origin: Command; args: string[]; } | { option: Option; opts: any; args: string[]; }; } export declare enum ErrorReason { UnsupportedFormatArgument = "unsupported format", ArgumentsRequired = "1 or more arguments required", ArgumentRequired = "argument required", ParameterCantPlacedAfterVariadic = "parameter can not placed after variadic parameter", ParameterCannPlacedAfterOptional = "required parameter is not placed after optional parameter", UnknownOption = "unknown option", OptionNameMismatch = "short or long option name mismatch", OptionValueRequired = "option value required" } export declare class CommandpostError { params: ErrorParameters; stack?: string; constructor(params: ErrorParameters); readonly name: string; readonly message: string | undefined; }