/** * CLI argument parsing and help display */ import type { ThinkingLevel } from "@earendil-works/pi-agent-core"; import type { ExtensionFlag } from "../core/extensions/types.ts"; import type { StorageFlagArgument } from "../core/storage/process-selection.js"; export type Mode = "text" | "json" | "rpc"; export interface Args { provider?: string; model?: string; apiKey?: string; systemPrompt?: string; appendSystemPrompt?: string[]; thinking?: ThinkingLevel; continue?: boolean; resume?: boolean; help?: boolean; version?: boolean; mode?: Mode; name?: string; noSession?: boolean; session?: string; import?: string; sessionId?: string; fork?: string; sessionDir?: string; sessionStorePath?: string; sessionPrefix?: string; storage?: StorageFlagArgument; models?: string[]; tools?: string[]; excludeTools?: string[]; noTools?: boolean; noBuiltinTools?: boolean; extensions?: string[]; noExtensions?: boolean; noMcp?: boolean; print?: boolean; export?: string; noSkills?: boolean; skills?: string[]; promptTemplates?: string[]; noPromptTemplates?: boolean; themes?: string[]; useTheme?: string; noThemes?: boolean; noContextFiles?: boolean; listModels?: string | true; offline?: boolean; verbose?: boolean; projectTrustOverride?: boolean; messages: string[]; fileArgs: string[]; /** Unknown flags (potentially extension flags) - map of flag name to value */ unknownFlags: Map; diagnostics: Array<{ type: "warning" | "error"; message: string; }>; } export declare function isValidThinkingLevel(level: string): level is ThinkingLevel; /** * Insert forced option arguments (e.g. a dedicated entry point's `--mode rpc`) * immediately before the first `--` end-of-options terminator, or append them * when no terminator is present. Keeps the forced options parsed as options * (never literal message text) while preserving last-option-wins semantics, * since caller options can only appear before the terminator. */ export declare function insertForcedOptionsBeforeTerminator(args: string[], forced: string[]): string[]; export declare function parseArgs(args: string[]): Args; export declare function printHelp(extensionFlags?: ExtensionFlag[]): void; //# sourceMappingURL=args.d.ts.map