/** * Fish completion generator. Fish has the cleanest completion grammar of the * three shells: one `complete` line per option per command. No driver function * needed; fish's built-in `__fish_seen_subcommand_from` and friends do the * subcommand parsing for us. The bin name is injected by the caller. * * Layout per command path: * complete -c -n '' -a -d '' * complete -c -n '' -l [-s ] -d '' [-r] [-x] [-a ''] * * Dynamic values: fish runs the command in `-a '(...)'` at completion time, * giving us per-tab callbacks for free. */ import type { CommandSpec } from "./walk.js"; /** * DYNAMIC fish completion: a thin, tree-independent shim that calls * ` __complete-line` on every (see bash.ts generateBashDynamic for * the rationale). Fish renders `value\tdescription` lines natively, so the * helper just strips the trailing `\x1f:` directive line. Note: fish's * declarative `complete -a` cannot switch to file completion from inside the * helper, so the File directive is a no-op here — use static fish completion * (`completion fish`) if you need file fallback on a path-valued positional. */ export declare function generateFishDynamic(binName: string): string; export declare function generateFish(root: CommandSpec, binName: string): string; //# sourceMappingURL=fish.d.ts.map