import type { ImageContent } from "@earendil-works/pi-ai/compat";
import type { Args, Mode } from "./cli/args.ts";
import type { CreateAgentSessionOptions } from "./core/sdk.ts";
export type AppMode = "interactive" | "print" | "json" | "rpc";
export declare function resolveExcludedToolsForAppMode(appMode: AppMode, excludedTools: CreateAgentSessionOptions["excludedTools"]): CreateAgentSessionOptions["excludedTools"];
export declare function resolveAppMode(parsed: Args, stdinIsTTY: boolean, stdoutIsTTY: boolean): AppMode;
export declare function isReadOnlyRuntimeMetadataCommand(parsed: Args): boolean;
export declare function isPlainRuntimeMetadataCommand(parsed: Args): boolean;
export declare function toPrintOutputMode(appMode: AppMode): Exclude<Mode, "rpc">;
export declare function prepareInitialMessage(parsed: Args, autoResizeImages: boolean, stdinContent?: string): Promise<{
    initialMessage?: string;
    initialImages?: ImageContent[];
}>;
export declare function resolveCliPaths(cwd: string, paths: string[] | undefined): string[] | undefined;
//# sourceMappingURL=main-app-mode.d.ts.map