Module RargInternal__CmdInternal

type run('a) = RargInternal.ArgsMap.t => 'a;
let positionalsKey: string;
module StringMap = Seed.DataStructures.StringMap;
type children('a) = StringMap.t(t('a));
and t('a) = {
name: string,
version: string,
doc: option(string),
args: list((RargInternal.Args.t, RargInternal.Args.validate)),
run: run('a),
children: option(children('a)),
};
module Err: { ... };
module Validate: { ... };
module Sub: { ... };
module Action: { ... };
let getShell: RargInternal__ValidateArgs.value => Stdlib.result(Seed.Process.Shell.tRargInternal__ValidateArgs.Err.t);
let getShell: RargInternal__ValidateArgs.value => Seed.Process.Shell.t;
let getSuggestionsShell: RargInternal.ArgsMap.t => option(Seed.Process.Shell.t);
let getCmdAction: t('a) => argsMap:RargInternal.ArgsMap.t => Stdlib.result(Action.tErr.t);

gets the output action for a command without following its subcommands tree

let findCommandAndPositionals: t('a) => argsMap:RargInternal.ArgsMap.t => (t('a), list(string));

follows the sub commands tree and returns only the positionals that are not commands