import { type CliOptions } from "./config.js"; /** * The slice of a commander `Command` these commands actually use. * * Structural, so `commander` is not a dependency of this package at all — not even * a peer. It never was one at RUNTIME (the import was `import type`, which tsc * erases), but it sat in `dependencies`, so every consumer installed it to satisfy a * type. Both consumers already declare their own — they are the ones constructing * the program — so the copy here was duplication that also pinned them to a major. * * A real `Command` satisfies this by shape; `test/cli-shape.test.mjs` pins that, * because the risk of a structural type is drifting from the thing it describes. */ export interface CommandLike { command(nameAndArgs: string, opts?: { isDefault?: boolean; hidden?: boolean; }): CommandLike; description(text: string): CommandLike; option(flags: string, description?: string): CommandLike; option(flags: string, description: string, fn: (value: string, previous: unknown) => unknown, defaultValue?: unknown): CommandLike; option(flags: string, description: string, defaultValue: string | boolean | string[]): CommandLike; action(handler: (...args: any[]) => unknown): CommandLike; opts(): Record; } export declare function registerBillingCommands(program: CommandLike, opts: CliOptions): void; //# sourceMappingURL=commands.d.ts.map